Inverted the operation of the OPTi 495 A20 control bit and made the AT keyboard controller (8042) as well as memory default to A20 off - makes both the MR 386 DX and the Award 386 and 486 clones work correctly;

The Amstrad MegaPC now correctly initializes the internal Paradise WD90C11 graphics card, making the machine work again.
This commit is contained in:
OBattler
2018-01-04 01:57:55 +01:00
parent 412ae3726b
commit 9b2705eb9f
4 changed files with 14 additions and 13 deletions

View File

@@ -294,7 +294,8 @@ static void opti495_write(uint16_t addr, uint8_t val, void *p)
}
if (optireg == 0x27)
{
mem_a20_key = (val & 0x80) ? 0x00 : 0x02;
// mem_a20_alt = (val & 0x80) ? 0x00 : 0x02;
mem_a20_alt = (val & 0x80);
mem_a20_recalc();
flushmmucache();
}

View File

@@ -6,11 +6,13 @@
#include <string.h>
#include <wchar.h>
#include "../86box.h"
#include "../device.h"
#include "../io.h"
#include "../mem.h"
#include "../serial.h"
#include "../floppy/floppy.h"
#include "../floppy/fdc.h"
#include "../video/vid_paradise.h"
#include "machine.h"
@@ -141,4 +143,6 @@ machine_at_wd76c10_init(machine_t *model)
machine_at_ide_init(model);
wd76c10_init();
device_add(&paradise_wd90c11_megapc_device);
}