Hello.
I get that it can be confusing

- Difference in RAM.png (67.38 KiB) Viewed 106 times
The PIC16F18877 uses banked RAM, meaning large variables like _FCL_BUFF need to fit within a single bank. If the compiler can't find 120 contiguous bytes in one bank, it throws an error. The PIC18F25K50, on the other hand, has a more flexible memory structure, making it easier to allocate large buffers.
So if you want to have even more gLCD data, choose an 18F target that has even more RAM.
You can go to
here and sort by RAM:

- Sort targets by RAM.png (279.53 KiB) Viewed 98 times
Although we plan to sort this out, you need to make sure that if you want I2C don't use K42.
Best advice would be to make your project with I2C device added compiles to hex before purchasing microcontroller as that will save you lots of time and money.
As this is not a bug, I have moved the topic from the Bugs section to a more suitable place.