This commit is contained in:
Olivier Galibert 2014-11-25 14:32:05 +01:00
parent 64ee2411b6
commit 4be4f5e8c5
2 changed files with 21 additions and 3 deletions

View File

@ -77,8 +77,10 @@ DEVICE_ADDRESS_MAP_START(internal_io_map, 32, i6300esb_lpc_device)
AM_RANGE(0x004c, 0x004f) AM_READWRITE8(siu_data_port_r, siu_data_port_w, 0xff000000)
}
AM_RANGE(0x80, 0x83) AM_WRITE8( nop_w, 0x000000ff) // POST/non-existing, used for delays by the bios/os
AM_RANGE(0xec, 0xef) AM_WRITE8( nop_w, 0x0000ff00) // Non-existing, used for delays by the bios/os
AM_RANGE(0x0060, 0x0063) AM_READWRITE8( nmi_sc_r, nmi_sc_w, 0x0000ff00)
AM_RANGE(0x0080, 0x0083) AM_WRITE8( nop_w, 0x000000ff) // POST/non-existing, used for delays by the bios/os
AM_RANGE(0x00ec, 0x00ef) AM_WRITE8( nop_w, 0x0000ff00) // Non-existing, used for delays by the bios/os
ADDRESS_MAP_END
@ -117,6 +119,7 @@ void i6300esb_lpc_device::device_reset()
mon_fwd_en = 0;
memset(mon_trp_rng, 0, sizeof(mon_trp_rng));
mon_trp_msk = 0;
nmi_sc = 0;
}
void i6300esb_lpc_device::reset_all_mappings()
@ -635,6 +638,19 @@ WRITE8_MEMBER (i6300esb_lpc_device::siu_data_port_w)
logerror("%s: siu config write port %02x, %02x\n", tag(), siu_config_port, data);
}
READ8_MEMBER (i6300esb_lpc_device::nmi_sc_r)
{
nmi_sc ^= 0x10;
return nmi_sc;
}
WRITE8_MEMBER (i6300esb_lpc_device::nmi_sc_w)
{
nmi_sc = data;
logerror("%s: nmi_sc = %02x\n", tag(), nmi_sc);
}
WRITE8_MEMBER (i6300esb_lpc_device::nop_w)
{
}

View File

@ -38,7 +38,7 @@ private:
UINT8 pirq_rout[8];
UINT8 acpi_cntl, tco_cntl, gpio_cntl, serirq_cntl, d31_err_cfg, d31_err_sts, gen_sta, back_cntl, rtc_conf;
UINT8 lpc_if_com_range, lpc_if_fdd_lpt_range, lpc_if_sound_range, fwh_dec_en1, fwh_dec_en2, siu_config_port;
UINT8 gen_pmcon_3, apm_cnt, apm_sts, mon_fwd_en;
UINT8 gen_pmcon_3, apm_cnt, apm_sts, mon_fwd_en, nmi_sc;
int siu_config_state;
DECLARE_WRITE8_MEMBER (nop_w);
@ -130,6 +130,8 @@ private:
DECLARE_WRITE8_MEMBER (siu_config_port_w);
DECLARE_READ8_MEMBER (siu_data_port_r); // 4f
DECLARE_WRITE8_MEMBER (siu_data_port_w);
DECLARE_READ8_MEMBER (nmi_sc_r); // 61
DECLARE_WRITE8_MEMBER (nmi_sc_w);
void map_bios(address_space *memory_space, UINT32 start, UINT32 end, int idsel);
};