all repos — mgba @ 6d8dc724c2765c10b4e6f3f3e53855aa5175e6b7

mGBA Game Boy Advance Emulator

GBA BIOS: Fix MidiKey2Freq BIOS reads
Jeffrey Pfau jeffrey@endrift.com
Tue, 11 Oct 2016 22:01:13 -0700
commit

6d8dc724c2765c10b4e6f3f3e53855aa5175e6b7

parent

cd3e304dd8cb2d91965bf5830b2647ddf08cc7ee

2 files changed, 6 insertions(+), 0 deletions(-)

jump to
M CHANGESCHANGES

@@ -1,6 +1,7 @@

0.5.2: (Future) Bugfixes: - GBA Memory: Fix misaligned BIOS reads + - GBA BIOS: Fix MidiKey2Freq BIOS reads 0.5.1: (2016-10-05) Bugfixes:
M src/gba/bios.csrc/gba/bios.c

@@ -244,7 +244,12 @@ }

static void _MidiKey2Freq(struct GBA* gba) { struct ARMCore* cpu = gba->cpu; + + int oldRegion = gba->memory.activeRegion; + gba->memory.activeRegion = REGION_BIOS; uint32_t key = cpu->memory.load32(cpu, cpu->gprs[0] + 4, 0); + gba->memory.activeRegion = oldRegion; + cpu->gprs[0] = key / powf(2, (180.f - cpu->gprs[1] - cpu->gprs[2] / 256.f) / 12.f); }