Load VGA latches even on 'fast' chained mode byte reads. Fixes missing
logos on Amnesia.
This commit is contained in:
parent
8fa271dca9
commit
d4dc2e9441
1 changed files with 6 additions and 2 deletions
|
|
@ -1012,6 +1012,11 @@ uint8_t svga_read(uint32_t addr, void *p)
|
||||||
addr &= svga->decode_mask;
|
addr &= svga->decode_mask;
|
||||||
if (addr >= svga->vram_max)
|
if (addr >= svga->vram_max)
|
||||||
return 0xff;
|
return 0xff;
|
||||||
|
latch_addr = addr & svga->vram_mask & ~3;
|
||||||
|
svga->la = svga->vram[latch_addr];
|
||||||
|
svga->lb = svga->vram[latch_addr | 0x1];
|
||||||
|
svga->lc = svga->vram[latch_addr | 0x2];
|
||||||
|
svga->ld = svga->vram[latch_addr | 0x3];
|
||||||
return svga->vram[addr & svga->vram_mask];
|
return svga->vram[addr & svga->vram_mask];
|
||||||
}
|
}
|
||||||
else if (svga->chain2_read)
|
else if (svga->chain2_read)
|
||||||
|
|
@ -1060,7 +1065,6 @@ uint8_t svga_read(uint32_t addr, void *p)
|
||||||
return ~(temp | temp2 | temp3 | temp4);
|
return ~(temp | temp2 | temp3 | temp4);
|
||||||
}
|
}
|
||||||
//pclog("Read %02X %04X %04X\n",vram[addr|svga->readplane],addr,svga->readplane);
|
//pclog("Read %02X %04X %04X\n",vram[addr|svga->readplane],addr,svga->readplane);
|
||||||
|
|
||||||
return svga->vram[addr | readplane];
|
return svga->vram[addr | readplane];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue