diff --git a/src/gba/gba-bios.c b/src/gba/gba-bios.c index 2a870e2bb..1059f5fa4 100644 --- a/src/gba/gba-bios.c +++ b/src/gba/gba-bios.c @@ -201,6 +201,9 @@ void GBASwi16(struct ARMBoard* board, int immediate) { case 0x8: gba->cpu.gprs[0] = sqrt(gba->cpu.gprs[0]); break; + case 0xA: + gba->cpu.gprs[0] = (atan2f(gba->cpu.gprs[0] / 16384.f, gba->cpu.gprs[1] / 16384.f) / 2 * M_PI) * 0x10000; + break; case 0xB: _CpuSet(gba); break;