Merge pull request #4612 from 86Box/tc1995

PVGA 256 col+ fixes (July 14th, 2024)
This commit is contained in:
Miran Grča
2024-07-14 20:29:03 +02:00
committed by GitHub

View File

@@ -364,7 +364,7 @@ paradise_write(uint32_t addr, uint8_t val, void *priv)
addr = (addr & 0x7fff) + paradise->write_bank[(addr >> 15) & 3];
/*Could be done in a better way but it works.*/
if (svga->gdcreg[0x0e] & 0x01) {
if ((svga->gdcreg[0x0e] & 0x01) || (svga->gdcreg[5] & 0x40)) {
if (((svga->gdcreg[6] & 0x0c) == 0x04) && (svga->crtc[0x14] & 0x40) && ((svga->gdcreg[0x0b] & 0xc0) == 0xc0) && !svga->chain4) {
prev_addr = addr & 3;
prev_addr2 = addr & 0xfffc;
@@ -401,7 +401,7 @@ paradise_writew(uint32_t addr, uint16_t val, void *priv)
addr = (addr & 0x7fff) + paradise->write_bank[(addr >> 15) & 3];
/*Could be done in a better way but it works.*/
if (svga->gdcreg[0x0e] & 0x01) {
if ((svga->gdcreg[0x0e] & 0x01) || (svga->gdcreg[5] & 0x40)) {
if (((svga->gdcreg[6] & 0x0c) == 0x04) && (svga->crtc[0x14] & 0x40) && ((svga->gdcreg[0x0b] & 0xc0) == 0xc0) && !svga->chain4) {
prev_addr = addr & 3;
prev_addr2 = addr & 0xfffc;
@@ -437,7 +437,7 @@ paradise_read(uint32_t addr, void *priv)
addr = (addr & 0x7fff) + paradise->read_bank[(addr >> 15) & 3];
/*Could be done in a better way but it works.*/
if (svga->gdcreg[0x0e] & 0x01) {
if ((svga->gdcreg[0x0e] & 0x01) || (svga->gdcreg[5] & 0x40)) {
if (((svga->gdcreg[6] & 0x0c) == 0x04) && (svga->crtc[0x14] & 0x40) && ((svga->gdcreg[0x0b] & 0xc0) == 0xc0) && !svga->chain4) {
prev_addr = addr & 3;
prev_addr2 = addr & 0xfffc;
@@ -472,7 +472,7 @@ paradise_readw(uint32_t addr, void *priv)
addr = (addr & 0x7fff) + paradise->read_bank[(addr >> 15) & 3];
/*Could be done in a better way but it works.*/
if (svga->gdcreg[0x0e] & 0x01) {
if ((svga->gdcreg[0x0e] & 0x01) || (svga->gdcreg[5] & 0x40)) { {
if (((svga->gdcreg[6] & 0x0c) == 0x04) && (svga->crtc[0x14] & 0x40) && ((svga->gdcreg[0x0b] & 0xc0) == 0xc0) && !svga->chain4) {
prev_addr = addr & 3;
prev_addr2 = addr & 0xfffc;