diff options
Diffstat (limited to 'src/devices/bus/isa/3c505.cpp')
-rw-r--r-- | src/devices/bus/isa/3c505.cpp | 39 |
1 files changed, 11 insertions, 28 deletions
diff --git a/src/devices/bus/isa/3c505.cpp b/src/devices/bus/isa/3c505.cpp index c45f3e9b78a..e56cfcd8d31 100644 --- a/src/devices/bus/isa/3c505.cpp +++ b/src/devices/bus/isa/3c505.cpp @@ -25,7 +25,6 @@ #include "emu.h" #include "3c505.h" -#define LOG_GENERAL (1U << 0) #define LOG_REG (1U << 1) #define LOG_DATA (1U << 2) @@ -280,7 +279,7 @@ void isa16_3c505_device::device_reset() offs_t const rom_base = (m_romopts->read() & 0xfe) << 12; if (m_isa->is_option_rom_space_available(rom_base, 0x2000)) - m_isa->install_rom(this, rom_base, rom_base | 0x01fff, "host", "host"); + m_isa->install_rom(this, rom_base, rom_base | 0x01fff, "host"); } m_isa->set_dma_channel(m_isa_drq, this, true); @@ -318,6 +317,9 @@ void isa16_3c505_device::map_main(address_map &map) // i82586 upper 4 address lines are ignored map.global_mask(0x0fffff); + // suppress logging when sizing RAM + map(0x00000, 0x7ffff).noprw(); + map(0xfc000, 0xfffff).rom().region("system", 0); } @@ -397,12 +399,13 @@ void isa16_3c505_device::acr_w(u8 data) m_hsr = (m_hsr & ~HSR_ASF) | (data & ACR_ASF); if ((data ^ m_acr) & ACR_LED1) - m_led[0] = !!(data & ACR_LED1); + m_led[0] = bool(data & ACR_LED1); if ((data ^ m_acr) & ACR_LED2) - m_led[1] = !!(data & ACR_LED2); + m_led[1] = bool(data & ACR_LED2); - m_net->reset_w((data & ACR_R586) ? 1 : 0); + if ((data ^ m_acr) & ACR_R586) + m_net->reset_w((data & ACR_R586) ? 1 : 0); if ((data ^ m_acr) & ACR_FLSH) { @@ -492,7 +495,7 @@ void isa16_3c505_device::hcr_w(u8 data) { if (!(data & HCR_FLSH)) { - LOGMASKED(LOG_REG, "### soft reset\n"); + LOGMASKED(LOG_REG, "soft reset\n"); // soft reset m_cpu->set_input_line(INPUT_LINE_NMI, 1); @@ -500,7 +503,7 @@ void isa16_3c505_device::hcr_w(u8 data) } else { - LOGMASKED(LOG_REG, "### hard reset\n"); + LOGMASKED(LOG_REG, "hard reset\n"); // hard reset reset(); @@ -550,26 +553,6 @@ void isa16_3c505_device::hcr_w(u8 data) update_rdy(m_acr, data); } - // attention condition - if (!(m_hcr & HCR_ATTN) && (data & HCR_ATTN)) - { - if (!(data & HCR_FLSH)) - { - LOGMASKED(LOG_REG, "soft reset\n"); - - // soft reset - m_cpu->set_input_line(INPUT_LINE_NMI, 1); - m_cpu->set_input_line(INPUT_LINE_NMI, 0); - } - else - { - LOGMASKED(LOG_REG, "hard reset\n"); - - // hard reset - reset(); - } - } - m_hcr = data; } @@ -655,7 +638,7 @@ void isa16_3c505_device::update_rdy(u8 const acr, u8 const hcr) m_hsr &= ~HSR_HRDY; } - update_cpu_drq(!!(m_asr & ASR_ARDY)); + update_cpu_drq(bool(m_asr & ASR_ARDY)); update_isa_drq((m_hsr & HSR_HRDY) && (hcr & HCR_DMAE)); } |