diff --git a/src/devices/machine/sis5513_ide.cpp b/src/devices/machine/sis5513_ide.cpp index de0167fc5e7..f29c91fecf0 100644 --- a/src/devices/machine/sis5513_ide.cpp +++ b/src/devices/machine/sis5513_ide.cpp @@ -144,6 +144,7 @@ void sis5513_ide_device::device_reset() pci_device::device_reset(); command = 0x0000; + command_mask = 5; status = 0x0000; pclass = 0x01018a; m_ide_ctrl0 = 0; diff --git a/src/devices/machine/sis5513_ide.h b/src/devices/machine/sis5513_ide.h index 89d4916c47b..58a1ef0beb6 100644 --- a/src/devices/machine/sis5513_ide.h +++ b/src/devices/machine/sis5513_ide.h @@ -7,7 +7,7 @@ #pragma once #include "pci.h" -#include "machine/pci-ide.h" +#include "idectrl.h" class sis5513_ide_device : public pci_device { @@ -40,11 +40,6 @@ protected: virtual void config_map(address_map &map) override; - void ide1_command_map(address_map &map); - void ide1_control_map(address_map &map); - void ide2_command_map(address_map &map); - void ide2_control_map(address_map &map); - void bus_master_ide_control_map(address_map &map); private: required_device m_ide1; required_device m_ide2; @@ -52,6 +47,12 @@ private: devcb_write_line m_irq_sec_callback; required_address_space m_bus_master_space; + void ide1_command_map(address_map &map); + void ide1_control_map(address_map &map); + void ide2_command_map(address_map &map); + void ide2_control_map(address_map &map); + void bus_master_ide_control_map(address_map &map); + bool ide1_mode(); bool ide2_mode();