Debugger: Memory Viewer - Show palette at PPU addresses $3F00-$3FFF (more intuitive for most users)

This commit is contained in:
Sour 2018-12-27 12:01:43 -05:00
parent bca96de531
commit 6763d346d6

View file

@ -108,9 +108,12 @@ uint32_t MemoryDumper::GetMemoryState(DebugMemoryType type, uint8_t *buffer)
return 0x10000;
case DebugMemoryType::PpuMemory:
for(int i = 0; i <= 0x3FFF; i++) {
for(int i = 0; i < 0x3F00; i++) {
buffer[i] = _mapper->DebugReadVRAM(i);
}
for(int i = 0x3F00; i <= 0x3FFF; i++) {
buffer[i] = _ppu->ReadPaletteRAM(i);
}
return 0x4000;
case DebugMemoryType::PaletteMemory:
@ -190,7 +193,13 @@ void MemoryDumper::SetMemoryValue(DebugMemoryType memoryType, uint32_t address,
}
break;
case DebugMemoryType::PpuMemory: _mapper->DebugWriteVRAM(address, value, disableSideEffects); break;
case DebugMemoryType::PpuMemory:
if(address < 0x3F00) {
_mapper->DebugWriteVRAM(address, value, disableSideEffects);
} else {
_ppu->WritePaletteRAM(address, value);
}
break;
case DebugMemoryType::PaletteMemory: _ppu->WritePaletteRAM(address, value); break;
case DebugMemoryType::SpriteMemory: _ppu->GetSpriteRam()[address % 0x100] = value; break;
case DebugMemoryType::SecondarySpriteMemory: _ppu->GetSecondarySpriteRam()[address % 0x20] = value; break;