I’m having a little trouble adding an lcd update routine to the exisiting pokitto lib.
for some reason I’m getting
main.cpp
game.display.updateRegion(0,0,219,175);
Pokkitris\main.cpp|581|error: 'class Pokitto::Display' has no member named 'updateRegion'|
When trying to implement my additional code.
HWLCD.h
extern void lcdRefreshRegionMode1(uint16_t, uint16_t, uint16_t, uint16_t, uint8_t *, uint16_t*);
HWLCD.cpp
void Pokitto::lcdRefreshRegionMode1(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint8_t * scrbuf, uint16_t* paletteptr) {
if(x1<=x0)x1=x0+1;
if(y1<=y0)y1=y0+1;
setWindow(y0, x0, y1-1, x1-1);
write_command(0x22);
uint8_t pix;
uint8_t quartWide=(x1-x0)/4; // 220/4;
uint8_t pic;
for(int y=y0; y<y1; y++){
for(int x=x0; x<x0+quartWide; x++){
pic = scrbuf[x+quartWide*y];
pix = (pic >> 6)&3; write_data(paletteptr[pix]);
pix = (pic >> 4)&3; write_data(paletteptr[pix]);
pix = (pic >> 2)&3; write_data(paletteptr[pix]);
pix = pic &3; write_data(paletteptr[pix]);
}
}
}
PokittoDisplay.h
/** Send display buffer region to display hardware */
static void updateRegion(uint16_t,uint16_t,uint16_t,uint16_t);
PokittoDisplay.cpp
void Display::updateRegion(int16_t x, int16_t y,int16_t x2, int16_t y2){
#if POK_SCREENMODE == MODE_HI_4COLOR
lcdRefreshRegionMode1(x0, x1, y0, y1, m_scrbuf, paletteptr);
#endif
}
Can someone explain where I went wrong? As far as I can tell I have added the correct code to the correct classes etc.