io(placeholder): add naive io structure

Signed-off-by: Amneesh Singh <natto@weirdnatto.in>
This commit is contained in:
2024-06-11 23:30:22 +05:30
parent 8b80f818c6
commit 933b622493
5 changed files with 74 additions and 1 deletions

View File

@@ -41,6 +41,10 @@ Memory::read(uint32_t address) const {
MATCHES(BIOS, bios)
MATCHES(BOARD_WRAM, board_wram)
MATCHES(CHIP_WRAM, chip_wram)
if (address >= 0x04000000 && address <= 0x040003FE)
return io.read(address);
MATCHES(PALETTE_RAM, palette_ram)
MATCHES(VRAM, vram)
MATCHES(OAM_OBJ_ATTR, oam_obj_attr)
@@ -64,6 +68,12 @@ Memory::write(uint32_t address, uint8_t byte) {
MATCHES(BOARD_WRAM, board_wram)
MATCHES(CHIP_WRAM, chip_wram)
if (address >= 0x04000000 && address <= 0x040003FE) {
io.write(address, byte);
return;
}
MATCHES(PALETTE_RAM, palette_ram)
MATCHES(VRAM, vram)
MATCHES(OAM_OBJ_ATTR, oam_obj_attr)