summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/cpu/m68000/68307bus.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/cpu/m68000/68307bus.c')
-rw-r--r--src/emu/cpu/m68000/68307bus.c59
1 files changed, 51 insertions, 8 deletions
diff --git a/src/emu/cpu/m68000/68307bus.c b/src/emu/cpu/m68000/68307bus.c
index 801c75deb6d..f551534339e 100644
--- a/src/emu/cpu/m68000/68307bus.c
+++ b/src/emu/cpu/m68000/68307bus.c
@@ -1,10 +1,11 @@
/* 68307 MBUS module */
+/* all ports on this are 8-bit? */
#include "emu.h"
#include "m68kcpu.h"
-READ16_HANDLER( m68307_internal_mbus_r )
+READ8_HANDLER( m68307_internal_mbus_r )
{
m68ki_cpu_core *m68k = m68k_get_safe_token(&space->device());
m68307_mbus* mbus = m68k->m68307MBUS;
@@ -15,22 +16,38 @@ READ16_HANDLER( m68307_internal_mbus_r )
int pc = cpu_get_pc(&space->device());
- switch (offset<<1)
+ switch (offset)
{
+ case m68307BUS_MADR:
+ logerror("%08x m68307_internal_mbus_r %08x (MADR - M-Bus Address Register)\n", pc, offset);
+ return space->machine().rand();
+
+ case m68307BUS_MFDR:
+ logerror("%08x m68307_internal_mbus_r %08x (MFDR - M-Bus Frequency Divider Register)\n", pc, offset);
+ return space->machine().rand();
+
+ case m68307BUS_MBCR:
+ logerror("%08x m68307_internal_mbus_r %08x (MFDR - M-Bus Control Register)\n", pc, offset);
+ return space->machine().rand();
+
case m68307BUS_MBSR:
- logerror("%08x m68307_internal_mbus_r %08x, (%04x) (MBSR - Status Register)\n", pc, offset*2,mem_mask);
+ logerror("%08x m68307_internal_mbus_r %08x (MBSR - M-Bus Status Register)\n", pc, offset);
+ return space->machine().rand();
+
+ case m68307BUS_MBDR:
+ logerror("%08x m68307_internal_mbus_r %08x (MBDR - M-Bus Data I/O Register)\n", pc, offset);
return space->machine().rand();
default:
- logerror("%08x m68307_internal_mbus_r %08x, (%04x)\n", pc, offset*2,mem_mask);
- return 0x0000;
+ logerror("%08x m68307_internal_mbus_r %08x (UNKNOWN / ILLEGAL)\n", pc, offset);
+ return 0x00;
}
}
- return 0xffff;
+ return 0xff;
}
-WRITE16_HANDLER( m68307_internal_mbus_w )
+WRITE8_HANDLER( m68307_internal_mbus_w )
{
m68ki_cpu_core *m68k = m68k_get_safe_token(&space->device());
m68307_mbus* mbus = m68k->m68307MBUS;
@@ -39,7 +56,33 @@ WRITE16_HANDLER( m68307_internal_mbus_w )
if (mbus)
{
int pc = cpu_get_pc(&space->device());
- logerror("%08x m68307_internal_mbus_w %08x, %04x (%04x)\n", pc, offset*2,data,mem_mask);
+
+ switch (offset)
+ {
+ case m68307BUS_MADR:
+ logerror("%08x m68307_internal_mbus_w %08x, %02x (MADR - M-Bus Address Register)\n", pc, offset,data);
+ break;
+
+ case m68307BUS_MFDR:
+ logerror("%08x m68307_internal_mbus_w %08x, %02x (MFDR - M-Bus Frequency Divider Register)\n", pc, offset,data);
+ break;
+
+ case m68307BUS_MBCR:
+ logerror("%08x m68307_internal_mbus_w %08x, %02x (MFDR - M-Bus Control Register)\n", pc, offset,data);
+ break;
+
+ case m68307BUS_MBSR:
+ logerror("%08x m68307_internal_mbus_w %08x, %02x (MBSR - M-Bus Status Register)\n", pc, offset,data);
+ break;
+
+ case m68307BUS_MBDR:
+ logerror("%08x m68307_internal_mbus_w %08x, %02x (MBDR - M-Bus Data I/O Register)\n", pc, offset,data);
+ break;
+
+ default:
+ logerror("%08x m68307_internal_mbus_w %08x, %02x (UNKNOWN / ILLEGAL)\n", pc, offset,data);
+ break;
+ }
}
}