Fixed the Cirrus Logic CL-GD 5480 on NT 5.x and ported tonioni's Cirrus improvements from WinUAE where relevant.

This commit is contained in:
OBattler
2020-11-28 07:03:26 +01:00
parent f9c2f04a52
commit 546c2788f0
2 changed files with 731 additions and 49 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -1063,8 +1063,6 @@ svga_write_common(uint32_t addr, uint8_t val, uint8_t linear, void *p)
switch (svga->writemode) {
case 0:
val = ((val >> (svga->gdcreg[3] & 7)) | (val << (8 - (svga->gdcreg[3] & 7))));
// if (svga->gdcreg[3] & 7)
// val = svga_rotate[svga->gdcreg[3] & 7][val];
if ((svga->gdcreg[8] == 0xff) && !(svga->gdcreg[3] & 0x18) && (!svga->gdcreg[1] || svga->set_reset_disabled)) {
for (i = 0; i < count; i++) {
if ((svga->adv_flags & FLAG_EXT_WRITE) && (svga->adv_flags & FLAG_ADDR_BY8)) {
@@ -1115,8 +1113,6 @@ svga_write_common(uint32_t addr, uint8_t val, uint8_t linear, void *p)
break;
case 3:
val = ((val >> (svga->gdcreg[3] & 7)) | (val << (8 - (svga->gdcreg[3] & 7))));
// if (svga->gdcreg[3] & 7)
// val = svga_rotate[svga->gdcreg[3] & 7][val];
wm = svga->gdcreg[8];
svga->gdcreg[8] &= val;