Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Data processing instructions with a shift by register where rs == 15 seem to be broken #1926

wheremyfoodat opened this issue Oct 31, 2020 · 1 comment


Copy link

If rs == r15, the pc should still be (addr of instruction + 8), not +12.
In the .zip below, I've included a test ROM + source code for this edge case.

If the shift is by (addr of instruction + 8), the ROM displays green.
If it's +12, the ROM displays blue.
Else, it displays red.

The version of mgba I've installed displays blue, while the 3DS displays green

Copy link

endrift commented Nov 1, 2020

Good catch. Looks like I misread GBATEK a long time ago and never caught that it was a bug.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
None yet

No branches or pull requests

2 participants