summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/cpu/m68000/m68kdasm.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/cpu/m68000/m68kdasm.c')
-rw-r--r--src/emu/cpu/m68000/m68kdasm.c28
1 files changed, 27 insertions, 1 deletions
diff --git a/src/emu/cpu/m68000/m68kdasm.c b/src/emu/cpu/m68000/m68kdasm.c
index ecb77953ffd..de8f34ba652 100644
--- a/src/emu/cpu/m68000/m68kdasm.c
+++ b/src/emu/cpu/m68000/m68kdasm.c
@@ -3027,6 +3027,32 @@ static void d68030_pmove(void)
// do this after fetching the second PMOVE word so we properly get the 3rd if necessary
str = get_ea_mode_str_32(g_cpu_ir);
+ if ((modes & 0xfde0) == 0x2000) // PLOAD
+ {
+ if (modes & 0x0200)
+ {
+ sprintf(g_dasm_str, "pload #%d, %s", (modes>>10)&7, str);
+ }
+ else
+ {
+ sprintf(g_dasm_str, "pload %s, #%d", str, (modes>>10)&7);
+ }
+ return;
+ }
+
+ if ((modes & 0xe200) == 0x2000) // PFLUSHA
+ {
+ if (modes & 0x0200)
+ {
+ sprintf(g_dasm_str, "pflush %s, %s", g_mmuregs[(modes>>10)&7], str);
+ }
+ else
+ {
+ sprintf(g_dasm_str, "pflush %s, %s", str, g_mmuregs[(modes>>10)&7]);
+ }
+ return;
+ }
+
switch ((modes>>13) & 0x7)
{
case 0: // MC68030/040 form with FD bit
@@ -3803,7 +3829,7 @@ CPU_DISASSEMBLE( m68040 )
return m68k_disassemble_raw(buffer, pc, oprom, opram, M68K_CPU_TYPE_68040);
}
-
+// f028 2215 0008
/* ======================================================================== */
/* ============================== END OF FILE ============================= */