PCem
changeset 88:2c16e2e509d0
Fixed dirty screen updating in high resolution modes.
| author | TomW |
|---|---|
| date | Sat Mar 22 19:10:00 2014 +0000 |
| parents | cf0361af6563 |
| children | 9c985b55cc4e |
| files | src/vid_ati_mach64.c src/vid_cl5429.c src/vid_et4000w32.c src/vid_et4000w32i.c src/vid_s3.c src/vid_s3_virge.c src/vid_svga.c src/vid_svga_render.c src/vid_tgui9440.c |
| diffstat | 9 files changed, 48 insertions(+), 48 deletions(-) [+] |
line diff
1.1 --- a/src/vid_ati_mach64.c Sat Mar 22 17:04:25 2014 +0000 1.2 +++ b/src/vid_ati_mach64.c Sat Mar 22 19:10:00 2014 +0000 1.3 @@ -633,17 +633,17 @@ 1.4 #define WRITE(addr, width) if (width == 0) \ 1.5 { \ 1.6 svga->vram[(addr) & 0x7fffff] = dest_dat; \ 1.7 - svga->changedvram[((addr) & 0x7fffff) >> 10] = changeframecount; \ 1.8 + svga->changedvram[((addr) & 0x7fffff) >> 12] = changeframecount; \ 1.9 } \ 1.10 else if (width == 1) \ 1.11 { \ 1.12 *(uint16_t *)&svga->vram[((addr) << 1) & 0x7fffff] = dest_dat; \ 1.13 - svga->changedvram[(((addr) << 1) & 0x7fffff) >> 10] = changeframecount; \ 1.14 + svga->changedvram[(((addr) << 1) & 0x7fffff) >> 12] = changeframecount; \ 1.15 } \ 1.16 else \ 1.17 { \ 1.18 *(uint32_t *)&svga->vram[((addr) << 2) & 0x7fffff] = dest_dat; \ 1.19 - svga->changedvram[(((addr) << 2) & 0x7fffff) >> 10] = changeframecount; \ 1.20 + svga->changedvram[(((addr) << 2) & 0x7fffff) >> 12] = changeframecount; \ 1.21 } 1.22 1.23 void mach64_blit(uint32_t cpu_dat, int count, mach64_t *mach64)
2.1 --- a/src/vid_cl5429.c Sat Mar 22 17:04:25 2014 +0000 2.2 +++ b/src/vid_cl5429.c Sat Mar 22 19:10:00 2014 +0000 2.3 @@ -351,14 +351,14 @@ 2.4 if (addr >= svga->vram_limit) 2.5 return; 2.6 // if (svga_output) pclog("%08X\n", addr); 2.7 - svga->changedvram[addr >> 10] = changeframecount; 2.8 + svga->changedvram[addr >> 12] = changeframecount; 2.9 2.10 switch (svga->writemode) 2.11 { 2.12 case 4: 2.13 pclog("Writemode 4 : %X ", addr); 2.14 addr <<= 1; 2.15 - svga->changedvram[addr >> 10] = changeframecount; 2.16 + svga->changedvram[addr >> 12] = changeframecount; 2.17 pclog("%X %X\n", addr, val); 2.18 if (val & 0x80) 2.19 svga->vram[addr + 0] = svga->gdcreg[1]; 2.20 @@ -381,7 +381,7 @@ 2.21 case 5: 2.22 pclog("Writemode 5 : %X ", addr); 2.23 addr <<= 1; 2.24 - svga->changedvram[addr >> 10] = changeframecount; 2.25 + svga->changedvram[addr >> 12] = changeframecount; 2.26 pclog("%X %X\n", addr, val); 2.27 svga->vram[addr + 0] = (val & 0x80) ? svga->gdcreg[1] : svga->gdcreg[0]; 2.28 svga->vram[addr + 1] = (val & 0x40) ? svga->gdcreg[1] : svga->gdcreg[0]; 2.29 @@ -618,7 +618,7 @@ 2.30 count--; 2.31 } 2.32 dst = svga->vram[gd5429->blt.dst_addr & svga->vrammask]; 2.33 - svga->changedvram[(gd5429->blt.dst_addr & svga->vrammask) >> 10] = changeframecount; 2.34 + svga->changedvram[(gd5429->blt.dst_addr & svga->vrammask) >> 12] = changeframecount; 2.35 2.36 pclog("Blit %i,%i %06X %06X %06X %02X %02X %02X %02X ", gd5429->blt.width, gd5429->blt.height_internal, gd5429->blt.src_addr, gd5429->blt.dst_addr, gd5429->blt.src_addr & svga->vrammask, svga->vram[gd5429->blt.src_addr & svga->vrammask], 0x80 >> (gd5429->blt.dst_addr & 7), src, dst); 2.37 switch (gd5429->blt.rop)
3.1 --- a/src/vid_et4000w32.c Sat Mar 22 17:04:25 2014 +0000 3.2 +++ b/src/vid_et4000w32.c Sat Mar 22 19:10:00 2014 +0000 3.3 @@ -371,7 +371,7 @@ 3.4 else 3.5 { 3.6 svga->vram[(addr & 0x1fff) + et4000->mmu.base[bank]] = val; 3.7 - svga->changedvram[((addr & 0x1fff) + et4000->mmu.base[bank]) >> 10] = changeframecount; 3.8 + svga->changedvram[((addr & 0x1fff) + et4000->mmu.base[bank]) >> 12] = changeframecount; 3.9 } 3.10 break; 3.11 case 0x6000: 3.12 @@ -705,7 +705,7 @@ 3.13 if (!(et4000->acl.internal.ctrl_routing & 0x40)) 3.14 { 3.15 svga->vram[et4000->acl.dest_addr & 0x1fffff] = out; 3.16 - svga->changedvram[(et4000->acl.dest_addr & 0x1fffff) >> 10] = changeframecount; 3.17 + svga->changedvram[(et4000->acl.dest_addr & 0x1fffff) >> 12] = changeframecount; 3.18 } 3.19 else 3.20 { 3.21 @@ -826,7 +826,7 @@ 3.22 if (!(et4000->acl.internal.ctrl_routing & 0x40)) 3.23 { 3.24 svga->vram[et4000->acl.dest_addr & 0x1fffff] = out; 3.25 - svga->changedvram[(et4000->acl.dest_addr & 0x1fffff) >> 10] = changeframecount; 3.26 + svga->changedvram[(et4000->acl.dest_addr & 0x1fffff) >> 12] = changeframecount; 3.27 } 3.28 else 3.29 {
4.1 --- a/src/vid_et4000w32i.c Sat Mar 22 17:04:25 2014 +0000 4.2 +++ b/src/vid_et4000w32i.c Sat Mar 22 19:10:00 2014 +0000 4.3 @@ -98,7 +98,7 @@ 4.4 else 4.5 { 4.6 vram[(addr&0x1FFF)+mmu.base[bank]]=val; 4.7 - changedvram[((addr&0x1FFF)+mmu.base[bank])>>10]=changeframecount; 4.8 + changedvram[((addr&0x1FFF)+mmu.base[bank])>>12]=changeframecount; 4.9 } 4.10 break; 4.11 case 0x6000: 4.12 @@ -302,7 +302,7 @@ 4.13 } 4.14 pclog("%06X = %02X\n",acl.dest_addr&0x1FFFFF,out); 4.15 vram[acl.dest_addr&0x1FFFFF]=out; 4.16 - changedvram[(acl.dest_addr&0x1FFFFF)>>10]=changeframecount; 4.17 + changedvram[(acl.dest_addr&0x1FFFFF)>>12]=changeframecount; 4.18 4.19 acl.pattern_x++; 4.20 acl.pattern_x&=et4000w32_wrap_x[acl.internal.pattern_wrap&7]; 4.21 @@ -378,7 +378,7 @@ 4.22 if (acl.internal.rop_bg&(1<<d)) out|=(1<<c); 4.23 } 4.24 vram[acl.dest_addr&0x1FFFFF]=out; 4.25 - changedvram[(acl.dest_addr&0x1FFFFF)>>10]=changeframecount; 4.26 + changedvram[(acl.dest_addr&0x1FFFFF)>>12]=changeframecount; 4.27 4.28 pattern_x++; 4.29 pattern_x&=et4000w32_wrap_x[acl.internal.pattern_wrap&7];
5.1 --- a/src/vid_s3.c Sat Mar 22 17:04:25 2014 +0000 5.2 +++ b/src/vid_s3.c Sat Mar 22 19:10:00 2014 +0000 5.3 @@ -1048,17 +1048,17 @@ 5.4 #define WRITE(addr) if (s3->bpp == 0) \ 5.5 { \ 5.6 svga->vram[(addr) & 0x3fffff] = dest_dat; \ 5.7 - svga->changedvram[((addr) & 0x3fffff) >> 10] = changeframecount; \ 5.8 + svga->changedvram[((addr) & 0x3fffff) >> 12] = changeframecount; \ 5.9 } \ 5.10 else if (s3->bpp == 1) \ 5.11 { \ 5.12 vram_w[(addr) & 0x1fffff] = dest_dat; \ 5.13 - svga->changedvram[((addr) & 0x1fffff) >> 9] = changeframecount; \ 5.14 + svga->changedvram[((addr) & 0x1fffff) >> 11] = changeframecount; \ 5.15 } \ 5.16 else \ 5.17 { \ 5.18 vram_l[(addr) & 0xfffff] = dest_dat; \ 5.19 - svga->changedvram[((addr) & 0xfffff) >> 8] = changeframecount; \ 5.20 + svga->changedvram[((addr) & 0xfffff) >> 10] = changeframecount; \ 5.21 } 5.22 5.23 void s3_accel_start(int count, int cpu_input, uint32_t mix_dat, uint32_t cpu_dat, s3_t *s3)
6.1 --- a/src/vid_s3_virge.c Sat Mar 22 17:04:25 2014 +0000 6.2 +++ b/src/vid_s3_virge.c Sat Mar 22 19:10:00 2014 +0000 6.3 @@ -989,16 +989,16 @@ 6.4 { \ 6.5 case 0: /*8 bpp*/ \ 6.6 vram[addr & 0x3fffff] = val; \ 6.7 - virge->svga.changedvram[(addr & 0x3fffff) >> 10] = changeframecount; \ 6.8 + virge->svga.changedvram[(addr & 0x3fffff) >> 12] = changeframecount; \ 6.9 break; \ 6.10 case 1: /*16 bpp*/ \ 6.11 *(uint16_t *)&vram[addr & 0x3fffff] = val; \ 6.12 - virge->svga.changedvram[(addr & 0x3fffff) >> 10] = changeframecount; \ 6.13 + virge->svga.changedvram[(addr & 0x3fffff) >> 12] = changeframecount; \ 6.14 break; \ 6.15 case 2: /*24 bpp*/ \ 6.16 *(uint32_t *)&vram[addr & 0x3fffff] = (val & 0xffffff) | \ 6.17 (vram[(addr + 3) & 0x3fffff] << 24); \ 6.18 - virge->svga.changedvram[(addr & 0x3fffff) >> 10] = changeframecount; \ 6.19 + virge->svga.changedvram[(addr & 0x3fffff) >> 12] = changeframecount; \ 6.20 break; \ 6.21 } \ 6.22 } while (0)
7.1 --- a/src/vid_svga.c Sat Mar 22 17:04:25 2014 +0000 7.2 +++ b/src/vid_svga.c Sat Mar 22 19:10:00 2014 +0000 7.3 @@ -415,7 +415,7 @@ 7.4 svga->firstline = svga->displine; 7.5 7.6 if (svga->hwcursor_on) 7.7 - svga->changedvram[svga->ma >> 10] = svga->changedvram[(svga->ma >> 10) + 1] = 2; 7.8 + svga->changedvram[svga->ma >> 12] = svga->changedvram[(svga->ma >> 12) + 1] = 2; 7.9 7.10 svga->render(svga); 7.11 7.12 @@ -503,7 +503,7 @@ 7.13 svga->fullchange = 2; 7.14 svga->blink++; 7.15 7.16 - for (x = 0; x < (svga->vram_limit >> 10); x++) 7.17 + for (x = 0; x < (svga->vram_limit >> 12); x++) 7.18 { 7.19 if (svga->changedvram[x]) 7.20 svga->changedvram[x]--; 7.21 @@ -634,7 +634,7 @@ 7.22 svga->vram = malloc(memsize); 7.23 svga->vram_limit = memsize; 7.24 svga->vrammask = memsize - 1; 7.25 - svga->changedvram = malloc(/*(memsize >> 10) << 1*/0x800000 >> 10); 7.26 + svga->changedvram = malloc(/*(memsize >> 12) << 1*/0x800000 >> 12); 7.27 svga->recalctimings_ex = recalctimings_ex; 7.28 svga->video_in = video_in; 7.29 svga->video_out = video_out; 7.30 @@ -687,7 +687,7 @@ 7.31 return; 7.32 7.33 if (svga_output) pclog("%08X (%i, %i) %02X %i %i %i %02X\n", addr, addr & 1023, addr >> 10, val, writemask2, svga->writemode, svga->chain4, svga->gdcreg[8]); 7.34 - svga->changedvram[addr >> 10] = changeframecount; 7.35 + svga->changedvram[addr >> 12] = changeframecount; 7.36 7.37 switch (svga->writemode) 7.38 { 7.39 @@ -913,7 +913,7 @@ 7.40 if (addr >= svga->vram_limit) 7.41 return; 7.42 if (svga_output) pclog("%08X\n", addr); 7.43 - svga->changedvram[addr>>10]=changeframecount; 7.44 + svga->changedvram[addr >> 12]=changeframecount; 7.45 7.46 switch (svga->writemode) 7.47 { 7.48 @@ -1161,7 +1161,7 @@ 7.49 if (addr >= svga->vram_limit) 7.50 return; 7.51 if (svga_output) pclog("%08X (%i, %i) %04X\n", addr, addr & 1023, addr >> 10, val); 7.52 - svga->changedvram[addr >> 10] = changeframecount; 7.53 + svga->changedvram[addr >> 12] = changeframecount; 7.54 *(uint16_t *)&svga->vram[addr] = val; 7.55 } 7.56 7.57 @@ -1190,7 +1190,7 @@ 7.58 return; 7.59 if (svga_output) pclog("%08X (%i, %i) %08X\n", addr, addr & 1023, addr >> 10, val); 7.60 7.61 - svga->changedvram[addr >> 10] = changeframecount; 7.62 + svga->changedvram[addr >> 12] = changeframecount; 7.63 *(uint32_t *)&svga->vram[addr] = val; 7.64 } 7.65 7.66 @@ -1256,7 +1256,7 @@ 7.67 addr &= 0x7FFFFF; 7.68 if (addr >= svga->vram_limit) 7.69 return; 7.70 - svga->changedvram[addr >> 10] = changeframecount; 7.71 + svga->changedvram[addr >> 12] = changeframecount; 7.72 *(uint16_t *)&svga->vram[addr] = val; 7.73 } 7.74 7.75 @@ -1282,7 +1282,7 @@ 7.76 addr &= 0x7fffff; 7.77 if (addr >= svga->vram_limit) 7.78 return; 7.79 - svga->changedvram[addr >> 10] = changeframecount; 7.80 + svga->changedvram[addr >> 12] = changeframecount; 7.81 *(uint32_t *)&svga->vram[addr] = val; 7.82 } 7.83
8.1 --- a/src/vid_svga_render.c Sat Mar 22 17:04:25 2014 +0000 8.2 +++ b/src/vid_svga_render.c Sat Mar 22 19:10:00 2014 +0000 8.3 @@ -163,9 +163,9 @@ 8.4 int changed_offset; 8.5 8.6 if (svga->sc & 1 && !(svga->crtc[0x17] & 1)) 8.7 - changed_offset = (svga->ma << 1) >> 10; 8.8 + changed_offset = (svga->ma << 1) >> 12; 8.9 else 8.10 - changed_offset = ((svga->ma << 1) + 0x8000) >> 10; 8.11 + changed_offset = ((svga->ma << 1) + 0x8000) >> 12; 8.12 8.13 if (svga->changedvram[changed_offset] || svga->changedvram[changed_offset + 1] || svga->fullchange) 8.14 { 8.15 @@ -213,9 +213,9 @@ 8.16 int changed_offset; 8.17 8.18 if (svga->sc & 1 && !(svga->crtc[0x17] & 1)) 8.19 - changed_offset = ((svga->ma << 1) | 0x8000) >> 10; 8.20 + changed_offset = ((svga->ma << 1) | 0x8000) >> 12; 8.21 else 8.22 - changed_offset = (svga->ma << 1) >> 10; 8.23 + changed_offset = (svga->ma << 1) >> 12; 8.24 8.25 if (svga->changedvram[changed_offset] || svga->changedvram[changed_offset + 1] || svga->fullchange) 8.26 { 8.27 @@ -260,7 +260,7 @@ 8.28 8.29 void svga_render_4bpp_lowres(svga_t *svga) 8.30 { 8.31 - if (svga->changedvram[svga->ma >> 10] || svga->changedvram[(svga->ma >> 10) + 1] || svga->changedvram[(svga->ma >> 10) + 2] || svga->fullchange) 8.32 + if (svga->changedvram[svga->ma >> 12] || svga->changedvram[(svga->ma >> 12) + 1] || svga->fullchange) 8.33 { 8.34 int x; 8.35 int offset = ((8 - svga->scrollcache) << 1) + 16; 8.36 @@ -302,11 +302,11 @@ 8.37 int changed_offset; 8.38 8.39 if (svga->sc & 1 && !(svga->crtc[0x17] & 1)) 8.40 - changed_offset = (svga->ma | 0x8000) >> 10; 8.41 + changed_offset = (svga->ma | 0x8000) >> 12; 8.42 else 8.43 - changed_offset = svga->ma >> 10; 8.44 + changed_offset = svga->ma >> 12; 8.45 8.46 - if (svga->changedvram[changed_offset] || svga->changedvram[changed_offset + 1] || svga->changedvram[changed_offset + 2] || svga->fullchange) 8.47 + if (svga->changedvram[changed_offset] || svga->changedvram[changed_offset + 1] || svga->fullchange) 8.48 { 8.49 int x; 8.50 int offset = (8 - svga->scrollcache) + 24; 8.51 @@ -348,7 +348,7 @@ 8.52 8.53 void svga_render_8bpp_lowres(svga_t *svga) 8.54 { 8.55 - if (svga->changedvram[svga->ma >> 10] || svga->changedvram[(svga->ma >> 10) + 1] || svga->changedvram[(svga->ma >> 10) + 2] || svga->fullchange) 8.56 + if (svga->changedvram[svga->ma >> 12] || svga->changedvram[(svga->ma >> 12) + 1] || svga->fullchange) 8.57 { 8.58 int x; 8.59 int offset = (8 - (svga->scrollcache & 6)) + 24; 8.60 @@ -376,7 +376,7 @@ 8.61 8.62 void svga_render_8bpp_highres(svga_t *svga) 8.63 { 8.64 - if (svga->changedvram[svga->ma >> 10] || svga->changedvram[(svga->ma >> 10) + 1] || svga->changedvram[(svga->ma >> 10) + 2] || svga->fullchange) 8.65 + if (svga->changedvram[svga->ma >> 12] || svga->changedvram[(svga->ma >> 12) + 1] || svga->fullchange) 8.66 { 8.67 int x; 8.68 int offset = (8 - ((svga->scrollcache & 6) >> 1)) + 24; 8.69 @@ -410,7 +410,7 @@ 8.70 8.71 void svga_render_15bpp_lowres(svga_t *svga) 8.72 { 8.73 - if (svga->changedvram[svga->ma >> 10] || svga->changedvram[(svga->ma >> 10) + 1] || svga->changedvram[(svga->ma >> 10) + 2] || svga->fullchange) 8.74 + if (svga->changedvram[svga->ma >> 12] || svga->changedvram[(svga->ma >> 12) + 1] || svga->fullchange) 8.75 { 8.76 int x; 8.77 int offset = (8 - (svga->scrollcache & 6)) + 24; 8.78 @@ -439,7 +439,7 @@ 8.79 8.80 void svga_render_15bpp_highres(svga_t *svga) 8.81 { 8.82 - if (svga->changedvram[svga->ma >> 10] || svga->changedvram[(svga->ma >> 10) + 1] || svga->changedvram[(svga->ma >> 10) + 2] || svga->fullchange) 8.83 + if (svga->changedvram[svga->ma >> 12] || svga->changedvram[(svga->ma >> 12) + 1] || svga->fullchange) 8.84 { 8.85 int x; 8.86 int offset = (8 - ((svga->scrollcache & 6) >> 1)) + 24; 8.87 @@ -474,7 +474,7 @@ 8.88 8.89 void svga_render_16bpp_lowres(svga_t *svga) 8.90 { 8.91 - if (svga->changedvram[svga->ma >> 10] || svga->changedvram[(svga->ma >> 10) + 1] || svga->changedvram[(svga->ma >> 10) + 2] || svga->fullchange) 8.92 + if (svga->changedvram[svga->ma >> 12] || svga->changedvram[(svga->ma >> 12) + 1] || svga->fullchange) 8.93 { 8.94 int x; 8.95 int offset = (8 - (svga->scrollcache & 6)) + 24; 8.96 @@ -503,7 +503,7 @@ 8.97 8.98 void svga_render_16bpp_highres(svga_t *svga) 8.99 { 8.100 - if (svga->changedvram[svga->ma >> 10] || svga->changedvram[(svga->ma >> 10) + 1] || svga->changedvram[(svga->ma >> 10) + 2] || svga->fullchange) 8.101 + if (svga->changedvram[svga->ma >> 12] || svga->changedvram[(svga->ma >> 12) + 1] || svga->fullchange) 8.102 { 8.103 int x; 8.104 int offset = (8 - ((svga->scrollcache & 6) >> 1)) + 24; 8.105 @@ -541,7 +541,7 @@ 8.106 int x, offset; 8.107 uint32_t fg; 8.108 8.109 - if (svga->changedvram[svga->ma >> 10] || svga->changedvram[(svga->ma >> 10) + 1] || svga->changedvram[(svga->ma >> 10) + 2] || svga->fullchange) 8.110 + if (svga->changedvram[svga->ma >> 12] || svga->changedvram[(svga->ma >> 12) + 1] || svga->fullchange) 8.111 { 8.112 if (svga->firstline_draw == 2000) 8.113 svga->firstline_draw = svga->displine; 8.114 @@ -561,7 +561,7 @@ 8.115 8.116 void svga_render_24bpp_highres(svga_t *svga) 8.117 { 8.118 - if (svga->changedvram[svga->ma >> 10] || svga->changedvram[(svga->ma >> 10) + 1] || svga->changedvram[(svga->ma >> 10) + 2] || svga->fullchange) 8.119 + if (svga->changedvram[svga->ma >> 12] || svga->changedvram[(svga->ma >> 12) + 1] || svga->fullchange) 8.120 { 8.121 int x; 8.122 int offset = (8 - ((svga->scrollcache & 6) >> 1)) + 24; 8.123 @@ -596,7 +596,7 @@ 8.124 int x, offset; 8.125 uint32_t fg; 8.126 8.127 - if (svga->changedvram[svga->ma >> 10] || svga->changedvram[(svga->ma >> 10) + 1] || svga->changedvram[(svga->ma >> 10) + 2] || svga->fullchange) 8.128 + if (svga->changedvram[svga->ma >> 12] || svga->changedvram[(svga->ma >> 12) + 1] || svga->fullchange) 8.129 { 8.130 if (svga->firstline_draw == 2000) 8.131 svga->firstline_draw = svga->displine; 8.132 @@ -618,7 +618,7 @@ 8.133 91%*/ 8.134 void svga_render_32bpp_highres(svga_t *svga) 8.135 { 8.136 - if (svga->changedvram[svga->ma >> 10] || svga->changedvram[(svga->ma >> 10) + 1] || svga->changedvram[(svga->ma >> 10) + 2] || svga->fullchange) 8.137 + if (svga->changedvram[svga->ma >> 12] || svga->changedvram[(svga->ma >> 12) + 1] || svga->changedvram[(svga->ma >> 12) + 2] || svga->fullchange) 8.138 { 8.139 int x; 8.140 int offset = (8 - ((svga->scrollcache & 6) >> 1)) + 24;
9.1 --- a/src/vid_tgui9440.c Sat Mar 22 17:04:25 2014 +0000 9.2 +++ b/src/vid_tgui9440.c Sat Mar 22 19:10:00 2014 +0000 9.3 @@ -552,12 +552,12 @@ 9.4 #define WRITE(addr, dat) if (tgui->accel.bpp == 0) \ 9.5 { \ 9.6 svga->vram[addr & 0x1fffff] = dat; \ 9.7 - svga->changedvram[((addr) & 0x1fffff) >> 10] = changeframecount; \ 9.8 + svga->changedvram[((addr) & 0x1fffff) >> 12] = changeframecount; \ 9.9 } \ 9.10 else \ 9.11 { \ 9.12 vram_w[addr & 0xfffff] = dat; \ 9.13 - svga->changedvram[((addr) & 0xfffff) >> 9] = changeframecount; \ 9.14 + svga->changedvram[((addr) & 0xfffff) >> 11] = changeframecount; \ 9.15 } 9.16 9.17 void tgui_accel_write_fb_b(uint32_t addr, uint8_t val, void *priv);
