something to consider about fonts
it looks like you want 40x22 size font
a pic16 has a flash word size of 14 bits therefore a font that size
will take if encoded horizontally by row take 2x40 words per chr
it will take 3x22 words if encoded vertically by column a reasonable saving.

one of the benefits of the ssd1306 controller is that it can address its graphics ram either way with ease
Name:  fonts.jpg
Views: 13120
Size:  197.5 KB