Unfortunately the new method immediately flipped orientation rather than just affecting drawing operations.
As both methods can be supported by the hardware/code we always use drawing only orientation support.
Updated the new fill routine to match.
Also fixed color black bug and moved variable definitions to start of a block as is required by pure C compilers.
Implement hardware fills by drawing on the framebuffer. This provides a
significant performance boost for filled geometric primitives and a
small one for font drawing. Tested at all orientations.
Use row and column remapping to change either row or column addressing
for each orientation. This removes the need to reverse the drawing
direction of either x or y in the drawing routines. However in the 90
and 270 case x and y must still be swapped.
Also, rename the SSD1306 remapping command names so they are more
descriptive.
You can now have a main color display and a secondary monochrome display.
You can now optionally set GDISP_PIXELFORMAT to any color or grayscale format for your application and the driver will internally convert to the display hardware format.
Prepare for (but not yet complete) supporting a different high level GDISP pixel format to the low level driver format.
This will be useful in multiple display scenario's where displays have different pixel formats.