Attempt at fixing the Paradise VGA 640x480x8bpp mode in Windows 3.0.
This commit is contained in:
@@ -122,6 +122,7 @@ void paradise_out(uint16_t addr, uint8_t val, void *p)
|
||||
{
|
||||
svga->gdcreg[0xe] = val;
|
||||
paradise_remap(paradise);
|
||||
svga_recalctimings(svga);
|
||||
return;
|
||||
}
|
||||
break;
|
||||
@@ -251,9 +252,11 @@ void paradise_recalctimings(svga_t *svga)
|
||||
if (paradise->type == WD90C30)
|
||||
svga->interlace = (svga->crtc[0x2d] & 0x20);
|
||||
|
||||
svga->lowres = !(svga->gdcreg[0xe] & 0x01);
|
||||
if (svga->bpp == 8 && !svga->lowres)
|
||||
if (svga->gdcreg[0xe] & 0x01) {
|
||||
svga->bpp = 8;
|
||||
svga->lowres = 0;
|
||||
svga->render = svga_render_8bpp_highres;
|
||||
}
|
||||
}
|
||||
|
||||
static void paradise_write(uint32_t addr, uint8_t val, void *p)
|
||||
|
Reference in New Issue
Block a user