diff options
author | 2018-06-28 18:16:55 +0200 | |
---|---|---|
committer | 2018-06-28 18:24:16 +0200 | |
commit | eb5a8a3dc85b2cb3572687633b07bf93292ead62 (patch) | |
tree | c81c264a72bb19ebde9f758c406ff17b6d01905a /src/devices/cpu/mips/mips3dsm.cpp | |
parent | 85a16dfb9d98283b6dfccb4b1b915fd19c432361 (diff) |
-ps2sony: Fleshing out the skeleton driver. [Ryan Holtz]
* Added ps2timer device to encapsulate Playstation 2 timers.
* Temporarily hacked R5900 core to always have scratchpad RAM mapped at 0x70000000.
* Added reference counting to divtlb so that it does not unmap pages that are still shared with other entries.
* Added a considerable amount of logging to ps2sony.cpp.
-mips3: Added basic Emotion Engine support. [Ryan Holtz]
* Added S bit to TLB mapping.
* Added support for VSUB, VIADD, VSQI, VISWR, VOR, LQ, SQ, MFSA, MTSA, MFHI1, MFLO1, MULT1, DIV1, DIVU1, PEXTLW, PADDUW, PMFHI,
PMFLO, PCPYLD, PCPYUD, SQC2, LQC2 opcodes. [Ryan Holtz]
Diffstat (limited to 'src/devices/cpu/mips/mips3dsm.cpp')
-rw-r--r-- | src/devices/cpu/mips/mips3dsm.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/devices/cpu/mips/mips3dsm.cpp b/src/devices/cpu/mips/mips3dsm.cpp index 0ee0bd36058..c93e8166344 100644 --- a/src/devices/cpu/mips/mips3dsm.cpp +++ b/src/devices/cpu/mips/mips3dsm.cpp @@ -799,11 +799,13 @@ uint32_t ee_disassembler::dasm_extra_base(uint32_t pc, uint32_t op, std::ostream uint32_t ee_disassembler::dasm_extra_special(uint32_t pc, uint32_t op, std::ostream &stream) { const int rs = (op >> 21) & 31; + const int rd = (op >> 11) & 31; switch (op & 63) { - case 0x29: util::stream_format(stream, "mtsa %s", reg[rs]); break; - default: util::stream_format(stream, "dc.l $%08x [invalid]", op); break; + case 0x28: util::stream_format(stream, "mfsa %s", reg[rd]); break; + case 0x29: util::stream_format(stream, "mtsa %s", reg[rs]); break; + default: util::stream_format(stream, "dc.l $%08x [invalid]", op); break; } return 0; } |