From 40b7e2512640952e8559829d9ae96a0762da778c Mon Sep 17 00:00:00 2001 From: Lior Halphon Date: Wed, 10 May 2023 00:55:04 +0300 Subject: [PATCH] Accurate emulation of SVBK, fixes audio in Flyeyes (unlicensed game) --- Core/memory.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Core/memory.c b/Core/memory.c index 723cd18..b1f61c9 100644 --- a/Core/memory.c +++ b/Core/memory.c @@ -665,7 +665,8 @@ static uint8_t read_high_memory(GB_gameboy_t *gb, uint16_t addr) if (!gb->cgb_mode) { return 0xFF; } - return gb->cgb_ram_bank | ~0x7; + + return gb->io_registers[GB_IO_SVBK]; case GB_IO_VBK: if (!GB_is_cgb(gb)) { return 0xFF; @@ -1593,6 +1594,7 @@ static void write_high_memory(GB_gameboy_t *gb, uint16_t addr, uint8_t value) if (!gb->cgb_ram_bank) { gb->cgb_ram_bank++; } + gb->io_registers[GB_IO_SVBK] = value | ~0x7; } return; case GB_IO_VBK: