summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/ata/atapicdr.cpp
diff options
context:
space:
mode:
author 987123879113 <63495610+987123879113@users.noreply.github.com>2021-01-29 12:18:43 +0900
committer GitHub <noreply@github.com>2021-01-28 22:18:43 -0500
commitd4ec392a16bb73d16e47abb6d5d30fd78e15b280 (patch)
tree6508f7b18d18d74f621be4d84358be8e9d9c6a99 /src/devices/bus/ata/atapicdr.cpp
parenta1d81a25d58995df952a5f7b5d17e87503d20a89 (diff)
firebeat: Implement SPU DMAs and fix SPU device configurations (#7693)
* firebeat.cpp: Implement SPU DMAs and fix SPU device configurations * cdrom: Add way to specify Ultra DMA as a machine configuration
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();