summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/vrc5074.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/vrc5074.cpp')
-rw-r--r--src/devices/machine/vrc5074.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/devices/machine/vrc5074.cpp b/src/devices/machine/vrc5074.cpp
index ca4b1540df7..8471d631c47 100644
--- a/src/devices/machine/vrc5074.cpp
+++ b/src/devices/machine/vrc5074.cpp
@@ -877,6 +877,8 @@ WRITE32_MEMBER(vrc5074_device::cpu_reg_w)
map_cpu_space();
break;
case NREG_CPUSTAT + 0: /* CPU status */
+ if (data & 0x1) logerror("cpu_reg_w: System Cold Reset\n");
+ if (data & 0x2) logerror("cpu_reg_w: CPU Warm Reset\n");
case NREG_CPUSTAT + 1: /* CPU status */
if (LOG_NILE) logerror("%08X:NILE WRITE: CPU status(%03X) = %08X & %08X\n", m_cpu_space->device().safe_pc(), offset * 4, data, mem_mask);
logit = 0;
@@ -1003,7 +1005,7 @@ READ32_MEMBER(vrc5074_device::serial_r)
{
uint32_t result = m_uart->ins8250_r(space, offset>>1);
- if (LOG_NILE)
+ if (0 && LOG_NILE)
logerror("%06X:serial_r offset %03X = %08X (%08x)\n", m_cpu_space->device().safe_pc(), offset>>1, result, offset*4);
return result;
}
@@ -1011,8 +1013,17 @@ READ32_MEMBER(vrc5074_device::serial_r)
WRITE32_MEMBER(vrc5074_device::serial_w)
{
m_uart->ins8250_w(space, offset>>1, data);
- if (PRINTF_SERIAL && offset == NREG_UARTTHR)
+ if (PRINTF_SERIAL && offset == NREG_UARTTHR) {
+ static std::string debugStr;
printf("%c", data);
- if (LOG_NILE)
+ if (data == 0xd || debugStr.length()>=80) {
+ logerror("%s", debugStr.c_str());
+ debugStr.clear();
+ }
+ else {
+ debugStr += char(data);
+ }
+ }
+ if (0 && LOG_NILE)
logerror("%06X:serial_w offset %03X = %08X & %08X (%08x)\n", m_cpu_space->device().safe_pc(), offset>>1, data, mem_mask, offset*4);
}