ARM: Fix disassembling of several S-type instructions (fixes mgba.io/i/1778)

This commit is contained in:
Vicki Pfau 2020-06-09 01:22:17 -07:00
parent b6db53cc90
commit f11cb1c16b
2 changed files with 13 additions and 2 deletions

View File

@ -11,9 +11,10 @@ Emulation fixes:
- GBA Timers: Fix deserializing count-up timers
- GBA Video: Fix mosaic objects drawing past the end (fixes mgba.io/i/1702)
- GBA Video: Fix disabling OBJWIN in GL renderer (fixes mgba.io/i/1759)
- GBA Video: Add missing parts of 256-color mode 0 mosaic (fixes mgba.io/1701)
- GBA Video: Fix double-size OBJ wrapping in GL renderer (fixes mgba.io/1712)
- GBA Video: Add missing parts of 256-color mode 0 mosaic (fixes mgba.io/i/1701)
- GBA Video: Fix double-size OBJ wrapping in GL renderer (fixes mgba.io/i/1712)
Other fixes:
- ARM: Fix disassembling of several S-type instructions (fixes mgba.io/i/1778)
- ARM Debugger: Clear low bit on breakpoint addresses (fixes mgba.io/i/1764)
- CMake: Always use devkitPro toolchain when applicable (fixes mgba.io/i/1755)
- Core: Fix ELF loading regression (fixes mgba.io/i/1669)

View File

@ -343,15 +343,25 @@ int ARMDisassemble(struct ARMInstructionInfo* info, uint32_t pc, char* buffer, i
case ARM_MN_ADD:
case ARM_MN_ADC:
case ARM_MN_AND:
case ARM_MN_ASR:
case ARM_MN_BIC:
case ARM_MN_EOR:
case ARM_MN_LSL:
case ARM_MN_LSR:
case ARM_MN_MLA:
case ARM_MN_MOV:
case ARM_MN_MUL:
case ARM_MN_MVN:
case ARM_MN_ORR:
case ARM_MN_ROR:
case ARM_MN_RSB:
case ARM_MN_RSC:
case ARM_MN_SBC:
case ARM_MN_SMLAL:
case ARM_MN_SMULL:
case ARM_MN_SUB:
case ARM_MN_UMLAL:
case ARM_MN_UMULL:
if (info->affectsCPSR && info->execMode == MODE_ARM) {
flags = "s";
}