Few expressions are capable of meaning one thing as well as its opposite. Such is the case with “I got shit to do”. The difference in meaning can be conveyed through emphasis. Saying “I got shit to do” means
I have many things to do
Whereas “I got shit to do”, spoken with an upward inflection on “do” means
I don’t have anything to do at all
My theory is that the latter meaning, which is far far more colloquial, is actually an abbreviated version of “I ain’t got shit to do”.
This is an idiomatic paradox. Using it is tantamount to language anarchy. That kind of chaos and destruction gives me a big boner.