mirror of
https://github.com/holub/mame
synced 2025-04-19 23:12:11 +03:00
bus/ata/atahle.cpp: Reset error state on writing CS0 command. (#10869)
Also added constants for standby commands (not implemented yet).
This commit is contained in:
parent
5569cefdc2
commit
28669c5007
@ -583,10 +583,6 @@ uint16_t ata_hle_device::read_dma()
|
||||
|
||||
uint16_t ata_hle_device::read_cs0(offs_t offset, uint16_t mem_mask)
|
||||
{
|
||||
/* logit */
|
||||
// if (offset != IDE_CS0_DATA_RW && offset != IDE_CS0_STATUS_R)
|
||||
LOG(("%s:IDE cs0 read at %X, mem_mask=%X\n", machine().describe_context(), offset, mem_mask));
|
||||
|
||||
uint16_t result = 0xffff;
|
||||
|
||||
if (device_selected() || m_single_device)
|
||||
@ -695,6 +691,10 @@ uint16_t ata_hle_device::read_cs0(offs_t offset, uint16_t mem_mask)
|
||||
}
|
||||
}
|
||||
|
||||
/* logit */
|
||||
// if (offset != IDE_CS0_DATA_RW && offset != IDE_CS0_STATUS_R)
|
||||
LOG(("%s:IDE cs0 read %X at %X (err: %X), mem_mask=%X\n", machine().describe_context(), result, offset, m_error, mem_mask));
|
||||
|
||||
/* return the result */
|
||||
return result;
|
||||
}
|
||||
@ -890,6 +890,7 @@ void ata_hle_device::write_cs0(offs_t offset, uint16_t data, uint16_t mem_mask)
|
||||
else if (device_selected() || m_command == IDE_COMMAND_DIAGNOSTIC)
|
||||
{
|
||||
m_command = data;
|
||||
m_error = IDE_ERROR_NONE;
|
||||
|
||||
/* implicitly clear interrupts & dmarq here */
|
||||
set_irq(CLEAR_LINE);
|
||||
|
@ -120,7 +120,9 @@ protected:
|
||||
IDE_COMMAND_SET_BLOCK_COUNT = 0xc6,
|
||||
IDE_COMMAND_READ_DMA = 0xc8,
|
||||
IDE_COMMAND_WRITE_DMA = 0xca,
|
||||
IDE_COMMAND_STANDBY_IMMEDIATE = 0xe0,
|
||||
IDE_COMMAND_IDLE_IMMEDIATE = 0xe1,
|
||||
IDE_COMMAND_STANDBY = 0xe2,
|
||||
IDE_COMMAND_IDLE = 0xe3,
|
||||
IDE_COMMAND_CHECK_POWER_MODE = 0xe5,
|
||||
IDE_COMMAND_CACHE_FLUSH = 0xe7,
|
||||
|
Loading…
Reference in New Issue
Block a user