work
This commit is contained in:
parent
5c421b09f7
commit
fd17106f99
1 changed files with 12 additions and 11 deletions
|
@ -83,9 +83,7 @@ LLDSPEC bool_t gdisp_lld_init(GDisplay *g) {
|
||||||
|
|
||||||
|
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
for (i = 0; i < (GDISP_SCREEN_WIDTH * (GDISP_SCREEN_HEIGHT / 8)); i++)
|
for (i = 0; i < (GDISP_SCREEN_WIDTH * (GDISP_SCREEN_HEIGHT / 8)); i++) {
|
||||||
{
|
|
||||||
RAM(g)[i] = 0x00;
|
|
||||||
write_data(g, 0x00, 1);
|
write_data(g, 0x00, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -110,21 +108,21 @@ LLDSPEC bool_t gdisp_lld_init(GDisplay *g) {
|
||||||
LLDSPEC void gdisp_lld_flush(GDisplay *g) {
|
LLDSPEC void gdisp_lld_flush(GDisplay *g) {
|
||||||
|
|
||||||
// Don't flush if we don't need it.
|
// Don't flush if we don't need it.
|
||||||
if (!(g->flags & GDISP_FLG_NEEDFLUSH))
|
if (!(g->flags & GDISP_FLG_NEEDFLUSH)) {
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
acquire_bus(g);
|
acquire_bus(g);
|
||||||
|
|
||||||
write_cmd(g, PCF8812_SET_X);
|
write_cmd(g, PCF8812_SET_X);
|
||||||
write_cmd(g, PCF8812_SET_Y);
|
write_cmd(g, PCF8812_SET_Y);
|
||||||
|
|
||||||
unsigned char x, y;
|
unsigned int i;
|
||||||
|
|
||||||
for (y = 0; y < (GDISP_SCREEN_HEIGHT / 8); y++) {
|
for (i = 0; i < (GDISP_SCREEN_WIDTH * (GDISP_SCREEN_HEIGHT / 8)); i++) {
|
||||||
for(x = 0; x < GDISP_SCREEN_WIDTH; x++) {
|
write_data(g, RAM(g)[i], 1);
|
||||||
write_data(g, RAM(g) + xyaddr(x, y), 1);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
release_bus(g);
|
release_bus(g);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -152,10 +150,13 @@ LLDSPEC bool_t gdisp_lld_init(GDisplay *g) {
|
||||||
y = g->p.x;
|
y = g->p.x;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (gdispColor2Native(g->p.color) == Black)
|
|
||||||
|
if (gdispColor2Native(g->p.color) != Black) {
|
||||||
RAM(g)[xyaddr(x, y)] |= xybit(y);
|
RAM(g)[xyaddr(x, y)] |= xybit(y);
|
||||||
else
|
} else {
|
||||||
RAM(g)[xyaddr(x, y)] &= ~xybit(y);
|
RAM(g)[xyaddr(x, y)] &= ~xybit(y);
|
||||||
|
}
|
||||||
|
|
||||||
g->flags |= GDISP_FLG_NEEDFLUSH;
|
g->flags |= GDISP_FLG_NEEDFLUSH;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Add table
Reference in a new issue