Add readable/writable byte at $43xB and $43xF
This commit is contained in:
parent
89199f298a
commit
47000bd6a5
2 changed files with 22 additions and 1 deletions
|
@ -491,6 +491,15 @@ void DmaController::Write(uint16_t addr, uint8_t value)
|
|||
channel.HdmaLineCounterAndRepeat = value;
|
||||
break;
|
||||
}
|
||||
|
||||
case 0x430B: case 0x431B: case 0x432B: case 0x433B: case 0x434B: case 0x435B: case 0x436B: case 0x437B:
|
||||
case 0x430F: case 0x431F: case 0x432F: case 0x433F: case 0x434F: case 0x435F: case 0x436F: case 0x437F:
|
||||
{
|
||||
//UNUSEDx - HDMA Indirect Address bank byte (x=0-7)
|
||||
DmaChannelConfig& channel = _channel[(addr & 0x70) >> 4];
|
||||
channel.UnusedByte = value;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -577,6 +586,15 @@ uint8_t DmaController::Read(uint16_t addr)
|
|||
DmaChannelConfig &channel = _channel[(addr & 0x70) >> 4];
|
||||
return channel.HdmaLineCounterAndRepeat;
|
||||
}
|
||||
|
||||
case 0x430B: case 0x431B: case 0x432B: case 0x433B: case 0x434B: case 0x435B: case 0x436B: case 0x437B:
|
||||
case 0x430F: case 0x431F: case 0x432F: case 0x433F: case 0x434F: case 0x435F: case 0x436F: case 0x437F:
|
||||
{
|
||||
//UNUSEDx - HDMA Indirect Address bank byte (x=0-7)
|
||||
DmaChannelConfig& channel = _channel[(addr & 0x70) >> 4];
|
||||
return channel.UnusedByte;
|
||||
}
|
||||
|
||||
}
|
||||
return _memoryManager->GetOpenBus();
|
||||
}
|
||||
|
@ -600,7 +618,8 @@ void DmaController::Serialize(Serializer &s)
|
|||
_channel[i].HdmaBank, _channel[i].HdmaFinished, _channel[i].HdmaIndirectAddressing,
|
||||
_channel[i].HdmaLineCounterAndRepeat, _channel[i].HdmaTableAddress,
|
||||
_channel[i].InvertDirection, _channel[i].SrcAddress, _channel[i].SrcBank, _channel[i].TransferMode,
|
||||
_channel[i].TransferSize, _channel[i].UnusedFlag, _channel[i].DmaActive
|
||||
_channel[i].TransferSize, _channel[i].UnusedFlag, _channel[i].DmaActive,
|
||||
_channel[i].UnusedByte
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,4 +24,6 @@ struct DmaChannelConfig
|
|||
bool HdmaFinished;
|
||||
|
||||
bool UnusedFlag;
|
||||
|
||||
uint8_t UnusedByte; // 43xB and 43xF
|
||||
};
|
Loading…
Add table
Reference in a new issue