summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/ata/atapicdr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/ata/atapicdr.cpp')
-rw-r--r--src/devices/bus/ata/atapicdr.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/devices/bus/ata/atapicdr.cpp b/src/devices/bus/ata/atapicdr.cpp
index 2099763468c..fd3003f58d3 100644
--- a/src/devices/bus/ata/atapicdr.cpp
+++ b/src/devices/bus/ata/atapicdr.cpp
@@ -17,7 +17,8 @@ atapi_cdrom_device::atapi_cdrom_device(const machine_config &mconfig, const char
}
atapi_cdrom_device::atapi_cdrom_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
- atapi_hle_device(mconfig, type, tag, owner, clock)
+ atapi_hle_device(mconfig, type, tag, owner, clock),
+ ultra_dma_mode(0)
{
}
@@ -73,9 +74,16 @@ void atapi_cdrom_device::device_start()
m_identify_buffer[ 49 ] = 0x0600; // Word 49=Capabilities, IORDY may be disabled (bit_10), LBA Supported mandatory (bit_9)
+ m_identify_buffer[ 88 ] = ultra_dma_mode;
+
atapi_hle_device::device_start();
}
+void atapi_cdrom_device::set_ultra_dma_mode(uint16_t mode)
+{
+ ultra_dma_mode = mode;
+}
+
void atapi_cdrom_device::device_reset()
{
atapi_hle_device::device_reset();