(MESS) at: fixed 16-bit DMA reading/writing (no whatsnew)
This commit is contained in:
parent
bf2f9b0071
commit
c49ee2ce32
@ -187,12 +187,13 @@ WRITE8_MEMBER(at_state::pc_dma_write_byte)
|
|||||||
|
|
||||||
READ8_MEMBER(at_state::pc_dma_read_word)
|
READ8_MEMBER(at_state::pc_dma_read_word)
|
||||||
{
|
{
|
||||||
|
address_space& prog_space = m_maincpu->space(AS_PROGRAM); // get the right address space
|
||||||
if(m_dma_channel == -1)
|
if(m_dma_channel == -1)
|
||||||
return 0xff;
|
return 0xff;
|
||||||
UINT16 result;
|
UINT16 result;
|
||||||
offs_t page_offset = (((offs_t) m_dma_offset[1][m_dma_channel & 3]) << 16) & 0xFE0000;
|
offs_t page_offset = (((offs_t) m_dma_offset[1][m_dma_channel & 3]) << 16) & 0xFE0000;
|
||||||
|
|
||||||
result = space.read_word(page_offset + ( offset << 1 ) );
|
result = prog_space.read_word(page_offset + ( offset << 1 ) );
|
||||||
m_dma_high_byte = result & 0xFF00;
|
m_dma_high_byte = result & 0xFF00;
|
||||||
|
|
||||||
return result & 0xFF;
|
return result & 0xFF;
|
||||||
@ -201,11 +202,12 @@ READ8_MEMBER(at_state::pc_dma_read_word)
|
|||||||
|
|
||||||
WRITE8_MEMBER(at_state::pc_dma_write_word)
|
WRITE8_MEMBER(at_state::pc_dma_write_word)
|
||||||
{
|
{
|
||||||
|
address_space& prog_space = m_maincpu->space(AS_PROGRAM); // get the right address space
|
||||||
if(m_dma_channel == -1)
|
if(m_dma_channel == -1)
|
||||||
return;
|
return;
|
||||||
offs_t page_offset = (((offs_t) m_dma_offset[1][m_dma_channel & 3]) << 16) & 0xFE0000;
|
offs_t page_offset = (((offs_t) m_dma_offset[1][m_dma_channel & 3]) << 16) & 0xFE0000;
|
||||||
|
|
||||||
space.write_word(page_offset + ( offset << 1 ), m_dma_high_byte | data);
|
prog_space.write_word(page_offset + ( offset << 1 ), m_dma_high_byte | data);
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER( at_state::pc_dma8237_0_dack_r ) { return m_isabus->dack_r(0); }
|
READ8_MEMBER( at_state::pc_dma8237_0_dack_r ) { return m_isabus->dack_r(0); }
|
||||||
|
Loading…
Reference in New Issue
Block a user