Fixes to GDISP for streaming drivers.
Turn optimisation back on for SSD1289 driver
This commit is contained in:
parent
8c1a37b59e
commit
4a5506df0a
2 changed files with 6 additions and 4 deletions
|
@ -24,7 +24,7 @@
|
||||||
|
|
||||||
#define GDISP_HARDWARE_STREAM_WRITE TRUE
|
#define GDISP_HARDWARE_STREAM_WRITE TRUE
|
||||||
#define GDISP_HARDWARE_STREAM_READ TRUE
|
#define GDISP_HARDWARE_STREAM_READ TRUE
|
||||||
//#define GDISP_HARDWARE_STREAM_POS TRUE
|
#define GDISP_HARDWARE_STREAM_POS TRUE
|
||||||
#define GDISP_HARDWARE_CONTROL TRUE
|
#define GDISP_HARDWARE_CONTROL TRUE
|
||||||
|
|
||||||
#if defined(GDISP_USE_DMA)
|
#if defined(GDISP_USE_DMA)
|
||||||
|
|
|
@ -87,6 +87,7 @@ GDisplay *GDISP = GDisplayArray;
|
||||||
static INLINE void setglobalwindow(GDisplay *g) {
|
static INLINE void setglobalwindow(GDisplay *g) {
|
||||||
coord_t x, y;
|
coord_t x, y;
|
||||||
x = g->p.x; y = g->p.y;
|
x = g->p.x; y = g->p.y;
|
||||||
|
g->p.x = g->p.y = 0;
|
||||||
g->p.cx = g->g.Width; g->p.cy = g->g.Height;
|
g->p.cx = g->g.Width; g->p.cy = g->g.Height;
|
||||||
gdisp_lld_write_start(g);
|
gdisp_lld_write_start(g);
|
||||||
g->p.x = x; g->p.y = y;
|
g->p.x = x; g->p.y = y;
|
||||||
|
@ -304,8 +305,9 @@ static void hline_clip(GDisplay *g) {
|
||||||
{
|
{
|
||||||
if (!(g->flags & GDISP_FLG_SCRSTREAM))
|
if (!(g->flags & GDISP_FLG_SCRSTREAM))
|
||||||
setglobalwindow(g);
|
setglobalwindow(g);
|
||||||
|
g->p.cx = g->p.x1 - g->p.x + 1;
|
||||||
gdisp_lld_write_pos(g);
|
gdisp_lld_write_pos(g);
|
||||||
do { gdisp_lld_write_color(g); } while(g->p.cx--);
|
do { gdisp_lld_write_color(g); } while(--g->p.cx);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -319,7 +321,7 @@ static void hline_clip(GDisplay *g) {
|
||||||
g->p.cx = g->p.x1 - g->p.x + 1;
|
g->p.cx = g->p.x1 - g->p.x + 1;
|
||||||
g->p.cy = 1;
|
g->p.cy = 1;
|
||||||
gdisp_lld_write_start(g);
|
gdisp_lld_write_start(g);
|
||||||
do { gdisp_lld_write_color(g); } while(g->p.cx--);
|
do { gdisp_lld_write_color(g); } while(--g->p.cx);
|
||||||
gdisp_lld_write_stop(g);
|
gdisp_lld_write_stop(g);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -404,7 +406,7 @@ static void vline_clip(GDisplay *g) {
|
||||||
#endif
|
#endif
|
||||||
gdisp_lld_write_pos(g);
|
gdisp_lld_write_pos(g);
|
||||||
#endif
|
#endif
|
||||||
do { gdisp_lld_write_color(g); } while(g->p.cy--);
|
do { gdisp_lld_write_color(g); } while(--g->p.cy);
|
||||||
gdisp_lld_write_stop(g);
|
gdisp_lld_write_stop(g);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue