Debugger: GB - Fixed DebugRead behavior (fixes deadlocks)
This commit is contained in:
parent
f265312b4a
commit
03f8361437
3 changed files with 4 additions and 4 deletions
|
@ -190,7 +190,7 @@ uint8_t GbMemoryManager::DebugRead(uint16_t addr)
|
|||
{
|
||||
if(_state.IsReadRegister[addr >> 8]) {
|
||||
if(addr >= 0xFE00) {
|
||||
return ReadRegister(addr);
|
||||
return PeekRegister(addr);
|
||||
} else {
|
||||
//Avoid potential read side effects
|
||||
return 0xFF;
|
||||
|
@ -226,7 +226,7 @@ uint8_t GbMemoryManager::PeekRegister(uint16_t addr)
|
|||
} else if(addr >= 0x8000 && addr <= 0x9FFF) {
|
||||
return _ppu->PeekVram(addr);
|
||||
} else {
|
||||
ReadRegister(addr);
|
||||
return ReadRegister(addr);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -779,7 +779,7 @@ uint8_t GbPpu::ReadVram(uint16_t addr)
|
|||
}
|
||||
}
|
||||
|
||||
uint8_t GbPpu::PeekVram(uint8_t addr)
|
||||
uint8_t GbPpu::PeekVram(uint16_t addr)
|
||||
{
|
||||
return IsVramReadAllowed() ? _vram[(_state.CgbVramBank << 13) | (addr & 0x1FFF)] : 0xFF;
|
||||
}
|
||||
|
|
|
@ -93,7 +93,7 @@ public:
|
|||
bool IsVramReadAllowed();
|
||||
bool IsVramWriteAllowed();
|
||||
uint8_t ReadVram(uint16_t addr);
|
||||
uint8_t PeekVram(uint8_t addr);
|
||||
uint8_t PeekVram(uint16_t addr);
|
||||
void WriteVram(uint16_t addr, uint8_t value);
|
||||
|
||||
bool IsOamReadAllowed();
|
||||
|
|
Loading…
Add table
Reference in a new issue