diff options
| author | Fiora <fioraaeterna@gmail.com> | 2014-09-21 08:01:47 -0700 |
|---|---|---|
| committer | Fiora <fioraaeterna@gmail.com> | 2014-09-21 08:17:41 -0700 |
| commit | 9c4407fb803bd150cfd855e27bdbabb5b00ed813 (patch) | |
| tree | 880824503c722b53e643fb9c279483b06af3125a /Source/Core/Common/GekkoDisassembler.cpp | |
| parent | 9f2d4ee53e9040925aa56ea5a04a374578562d02 (diff) | |
Disassembler: fix disassembly of some twi instructions
Diffstat (limited to 'Source/Core/Common/GekkoDisassembler.cpp')
| -rw-r--r-- | Source/Core/Common/GekkoDisassembler.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/Source/Core/Common/GekkoDisassembler.cpp b/Source/Core/Common/GekkoDisassembler.cpp index afccf35028..34da4279e6 100644 --- a/Source/Core/Common/GekkoDisassembler.cpp +++ b/Source/Core/Common/GekkoDisassembler.cpp @@ -356,16 +356,18 @@ void GekkoDisassembler::trapi(u32 in, unsigned char dmode) { const char* cnd = trap_condition[PPCGETD(in)]; + + m_flags |= dmode; if (cnd != nullptr) { - m_flags |= dmode; m_opcode = StringFromFormat("t%c%s", dmode ? 'd' : 'w', cnd); - m_operands = imm(in, 0, 2, false); } else { - ill(in); + m_opcode = StringFromFormat("t%ci", dmode ? 'd' : 'w'); + m_operands = StringFromFormat("%d, ", PPCGETD(in)); } + m_operands += imm(in, 0, 2, false); } |
