Initialize the ADI 386SX NVR to 0x00's instead of 0xFF's, fixes #2761.

This commit is contained in:
OBattler
2022-10-30 02:57:15 +02:00
parent a20584fee4
commit 3a4c7e414e
4 changed files with 7 additions and 3 deletions

View File

@@ -104,7 +104,7 @@ intel_82335_write(uint16_t addr, uint16_t val, void *priv)
shadowbios_write = !!(dev->regs[0x22] & 0x01);
/* Base System 512/640KB set */
mem_set_mem_state_both(0x80000, 0x20000, (dev->regs[0x22] & 0x08) ? ENABLE_TOP_128KB : DISABLE_TOP_128KB);
// mem_set_mem_state_both(0x80000, 0x20000, (dev->regs[0x22] & 0x08) ? ENABLE_TOP_128KB : DISABLE_TOP_128KB);
/* Video RAM shadow*/
mem_set_mem_state_both(0xa0000, 0x20000, (dev->regs[0x22] & (0x04 << 8)) ? DETERMINE_VIDEO_RAM_WRITE_ACCESS : DISABLED_SHADOW);
@@ -167,6 +167,7 @@ intel_82335_init(const device_t *info)
memset(dev->regs, 0, sizeof(dev->regs));
dev->regs[0x22] = 0x08;
dev->regs[0x28] = 0xf9;
dev->cfg_locked = 0;

View File

@@ -86,6 +86,7 @@ extern const device_t at_nvr_old_device;
extern const device_t at_nvr_device;
extern const device_t ps_nvr_device;
extern const device_t amstrad_nvr_device;
extern const device_t amstrad_megapc_nvr_device;
extern const device_t ibmat_nvr_device;
extern const device_t piix4_nvr_device;
extern const device_t ps_no_nmi_nvr_device;

View File

@@ -37,6 +37,7 @@
#include <86box/fdc.h>
#include <86box/fdc_ext.h>
#include <86box/hdc.h>
#include <86box/nvr.h>
#include <86box/port_6x.h>
#include <86box/sio.h>
#include <86box/serial.h>
@@ -493,7 +494,8 @@ machine_at_adi386sx_init(const machine_t *model)
if (bios_only || !ret)
return ret;
machine_at_common_init(model);
machine_at_common_init_ex(model, 2);
device_add(&amstrad_megapc_nvr_device); /* NVR that is initialized to all 0x00's. */
device_add(&intel_82335_device);
device_add(&keyboard_at_ami_device);

View File

@@ -1299,7 +1299,7 @@ const device_t p6rp4_nvr_device = {
};
const device_t amstrad_megapc_nvr_device = {
.name = "Amstrad MegapC NVRAM",
.name = "Amstrad MegaPC NVRAM",
.internal_name = "amstrad_megapc_nvr",
.flags = DEVICE_ISA | DEVICE_AT,
.local = 36,