all repos — mgba @ a5132a7b8f2727a33f0a1a0e4347025fb581bf67

mGBA Game Boy Advance Emulator

GBA BIOS: Fix ArcTan2 accuracy and boundary conditions
Jeffrey Pfau jeffrey@endrift.com
Thu, 16 Jun 2016 00:19:20 -0700
commit

a5132a7b8f2727a33f0a1a0e4347025fb581bf67

parent

f17d4347692599434d360cd7b81eaa902a55b4c5

2 files changed, 2 insertions(+), 1 deletions(-)

jump to
M CHANGESCHANGES

@@ -22,6 +22,7 @@ - SDL: Fix SDL 1.2 build

- ARM7: Fix flags on SBC/RSC - Util: Fix realloc semantics in utf16to8 - ARM7: Fix setting spsr privilege bits when spsr is empty + - GBA BIOS: Fix ArcTan2 accuracy and boundary conditions Misc: - GBA: Slightly optimize GBAProcessEvents - Qt: Add preset for DualShock 4
M src/gba/bios.csrc/gba/bios.c

@@ -301,7 +301,7 @@ case 0x8:

cpu->gprs[0] = sqrt((uint32_t) cpu->gprs[0]); break; case 0xA: - cpu->gprs[0] = atan2f(cpu->gprs[1] / 16384.f, cpu->gprs[0] / 16384.f) / (2 * M_PI) * 0x10000; + cpu->gprs[0] = (uint16_t) (atan2f(cpu->gprs[1] / 16384.f, cpu->gprs[0] / 16384.f) / (2 * M_PI) * 0x10001); break; case 0xB: case 0xC: