This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Aside from your (near) exclusive use of the (Out of favor) "DRM" code style your back to back:
LCD_Command(0x01);
LCD_Command(0x80);
proves duplicative - does it not? (0x01 both Clears the Screen & Homes the cursor - 0x80 (also) Homes the cursor - pointless!)
Having designed/sold tens of thousands of such displays - surely myself/others (could) assist - yet wading thru your DRM code is extremely effort laden, error prone, and ALWAYS untried/untested!
Vendor STRONGLY recommends use of the API - which is EVERYTHING which DRM method is NOT! (i.e. API is long, "Tried, True, Tested!" Why would one consider anything else? (high speed & code compactness appear "not in play" w/in your post...) And - modern IDEs have very much enabled the API to "close the gap" when compared w/more direct coding methods...
It is unrealistic for posters' (plural) to "expect/demand" the extra effort enforced upon "helpers" (vendor or outsiders) thru the use of DRM - especially when the vendor's API is so comprehensive, example laden and generally robust...