diff options
| author | Anton Romanov <theli@rockbox.org> | 2006-09-26 08:36:54 +0000 |
|---|---|---|
| committer | Anton Romanov <theli@rockbox.org> | 2006-09-26 08:36:54 +0000 |
| commit | 25ffd2e1463473910adc8cb24c5e9f0fbfe5ff69 (patch) | |
| tree | 53dd7d2472d1b39e6acdc325bedc6e8dd95d9671 /apps/plugins/zxbox/spscr.c | |
| parent | b2111b9a9136d70253139e7bca28d024b4e98c74 (diff) | |
| download | rockbox-25ffd2e1463473910adc8cb24c5e9f0fbfe5ff69.zip rockbox-25ffd2e1463473910adc8cb24c5e9f0fbfe5ff69.tar.gz rockbox-25ffd2e1463473910adc8cb24c5e9f0fbfe5ff69.tar.bz2 rockbox-25ffd2e1463473910adc8cb24c5e9f0fbfe5ff69.tar.xz | |
do not update border when we don't see it. some more cleanup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11055 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/zxbox/spscr.c')
| -rw-r--r-- | apps/plugins/zxbox/spscr.c | 33 |
1 files changed, 10 insertions, 23 deletions
diff --git a/apps/plugins/zxbox/spscr.c b/apps/plugins/zxbox/spscr.c index 4cae865..6b85904 100644 --- a/apps/plugins/zxbox/spscr.c +++ b/apps/plugins/zxbox/spscr.c @@ -82,6 +82,7 @@ byte *update_screen_line(byte *scrp, int coli, int scri, int border, cmark = *cmarkp; scrptr = (qbyte *) scrp; if(scri >= 0) { /* normal line */ +#if LCD_WIDTH == 320 && ( LCD_HEIGHT == 240 || LCD_HEIGHT == 200 ) if(SPNM(border_update)) { brd_color = SPNM(colors)[border]; brd_color |= brd_color << 8; @@ -91,7 +92,10 @@ byte *update_screen_line(byte *scrp, int coli, int scri, int border, for(i = 8; i; i--) *scrptr++ = brd_color; scrptr -= 0x48; } - else scrptr += 0x08; + else +#endif + scrptr += 0x08; + tmptr = SPNM(scr_mark) + 0x2C0 + (coli >> 3); mark = *tmptr; if(!(coli & 0x07)) { @@ -129,40 +133,23 @@ byte *update_screen_line(byte *scrp, int coli, int scri, int border, else scrptr += 0x48; } else if(scri == -1) { /* only border */ +#if LCD_WIDTH == 320 && ( LCD_HEIGHT == 240 || LCD_HEIGHT == 200 ) if(SPNM(border_update)) { brd_color = SPNM(colors)[border]; brd_color |= brd_color << 8; brd_color |= brd_color << 16; for(i = 0x50; i; i--) *scrptr++ = brd_color; } - else scrptr += 0x50; + else +#endif + scrptr += 0x50; + } *cmarkp = cmark; return (byte *) scrptr; } -void translate_screen(void) -{ - int border, scline; - byte *scrptr; - qbyte cmark = 0; - - scrptr = (byte *) SPNM(image); - - border = DANM(ula_outport) & 0x07; - if(border != SPNM(lastborder)) { - SPNM(border_update) = 2; - SPNM(lastborder) = border; - } - - for(scline = 0; scline < (TMNUM / 2); scline++) - scrptr = update_screen_line(scrptr, SPNM(coli)[scline], SPNM(scri)[scline], - border, &cmark); - -} - - void spscr_init_mask_color(void) { int clb; |