mirror of
https://github.com/holub/mame
synced 2025-04-23 00:39:36 +03:00
abc1600.cpp: Improve debug logging. [Curt Coder]
This commit is contained in:
parent
73e090aa29
commit
8697c30375
@ -34,33 +34,20 @@
|
||||
|
||||
TODO:
|
||||
|
||||
- segment/page RAM addresses are not correctly decoded, "sas/format/format" after abcenix is booted can't find the SASI interface because of this
|
||||
[:mac] ':3f' (08A98) MAC 7e4a2:0004a2 (SEGA 02f SEGD 09 PGA 09c PGD 8000 NONX 1 WP 0)
|
||||
should be
|
||||
[:mac] ':3f' (089A8) MAC 7e4a2:1fe4a2 (SEGA 00f SEGD 0f PGA 0fc PGD 43fc NONX 0 WP 1)
|
||||
- sas/format/format in abcenix tries to access the SASI card using a memory location mapped for task 0, when the process is run as task 1
|
||||
|
||||
[:mac] ':3f' (100082) SEGMENT 80eeb:27 (SEGA 000 SEGD 27)
|
||||
[:mac] ':3f' (100084) PAGE 80ee8:02 (SEGA 000 SEGD 27 PGA 271 PGD 0283)
|
||||
[:mac] ':3f' (100084) PAGE 80ee9:83 (SEGA 000 SEGD 27 PGA 271 PGD 0283)
|
||||
[:mac] ':3f' (100082) SEGMENT 806eb:27 (SEGA 000 SEGD 27)
|
||||
[:mac] ':3f' (100084) PAGE 806e8:02 (SEGA 000 SEGD 27 PGA 270 PGD 0282)
|
||||
[:mac] ':3f' (100084) PAGE 806e9:82 (SEGA 000 SEGD 27 PGA 270 PGD 0282)
|
||||
[:mac] ':3f' (100082) MAC 7feea:1b8eea (SEGA 00f SEGD 36 PGA 36f PGD 0371 NONX 0 WP 0)
|
||||
[:mac] ':3f' (100082): unmapped program memory write to 1B8EEA = 00 & FF
|
||||
[:mac] ':3f' (100082) MAC 7feeb:1b8eeb (SEGA 00f SEGD 36 PGA 36f PGD 0371 NONX 0 WP 0)
|
||||
[:mac] ':3f' (100082): unmapped program memory write to 1B8EEB = 27 & FF
|
||||
[:mac] ':3f' (100084) MAC 7fee8:1b8ee8 (SEGA 00f SEGD 36 PGA 36f PGD 0371 NONX 0 WP 0)
|
||||
[:mac] ':3f' (100084): unmapped program memory write to 1B8EE8 = 02 & FF
|
||||
[:mac] ':3f' (100084) MAC 7fee9:1b8ee9 (SEGA 00f SEGD 36 PGA 36f PGD 0371 NONX 0 WP 0)
|
||||
[:mac] ':3f' (100084): unmapped program memory write to 1B8EE9 = 81 & FF
|
||||
[:mac] ':3f' (100082) MAC 7f6ea:1b86ea (SEGA 00f SEGD 36 PGA 36e PGD 0370 NONX 0 WP 0)
|
||||
[:mac] ':3f' (100082): unmapped program memory write to 1B86EA = 00 & FF
|
||||
[:mac] ':3f' (100082) MAC 7f6eb:1b86eb (SEGA 00f SEGD 36 PGA 36e PGD 0370 NONX 0 WP 0)
|
||||
[:mac] ':3f' (100082): unmapped program memory write to 1B86EB = 27 & FF
|
||||
[:mac] ':3f' (100084) MAC 7f6e8:1b86e8 (SEGA 00f SEGD 36 PGA 36e PGD 0370 NONX 0 WP 0)
|
||||
[:mac] ':3f' (100084): unmapped program memory write to 1B86E8 = 02 & FF
|
||||
[:mac] ':3f' (100084) MAC 7f6e9:1b86e9 (SEGA 00f SEGD 36 PGA 36e PGD 0370 NONX 0 WP 0)
|
||||
[:mac] ':3f' (100084): unmapped program memory write to 1B86E9 = 80 & FF
|
||||
[:mac] ':3f' (0009E) ff800:4f TASK 0 SEGMENT 15 PAGE 15 MEM 7f800-7ffff 1ff800
|
||||
[:mac] ':3f' (0009E) ff801:ff TASK 0 SEGMENT 15 PAGE 15 MEM 7f800-7ffff 1ff800
|
||||
[:mac] ':3f' (0009E) ff000:4f TASK 0 SEGMENT 15 PAGE 14 MEM 7f000-7f7ff 1ff000
|
||||
[:mac] ':3f' (0009E) ff001:fe TASK 0 SEGMENT 15 PAGE 14 MEM 7f000-7f7ff 1ff000
|
||||
[:mac] ':3f' (0009E) fe800:4f TASK 0 SEGMENT 15 PAGE 13 MEM 7e800-7efff 1fe800
|
||||
[:mac] ':3f' (0009E) fe801:fd TASK 0 SEGMENT 15 PAGE 13 MEM 7e800-7efff 1fe800
|
||||
[:mac] ':3f' (0009E) fe000:4f TASK 0 SEGMENT 15 PAGE 12 MEM 7e000-7e7ff 1fe000
|
||||
[:mac] ':3f' (0009E) fe001:fc TASK 0 SEGMENT 15 PAGE 12 MEM 7e000-7e7ff 1fe000
|
||||
|
||||
[:mac] ':3f' (08A98) MAC 7e4a2:0004a2 (SEGA 02f SEGD 09 PGA 09c PGD 8000 NONX 1 WP 0 TASK 1 FC 1)
|
||||
should be
|
||||
[:mac] ':3f' (089A8) MAC 7e4a2:1fe4a2 (SEGA 00f SEGD 0f PGA 0fc PGD 43fc NONX 0 WP 1 TASK 0 FC 5)
|
||||
|
||||
- short/long reset (RSTBUT)
|
||||
- CIO
|
||||
|
@ -233,7 +233,7 @@ offs_t abc1600_mac_device::translate_address(offs_t offset, int *nonx, int *wp)
|
||||
*nonx = PAGE_NONX;
|
||||
*wp = PAGE_WP;
|
||||
|
||||
if (LOG_MAC && offset != virtual_offset) logerror("%s MAC %05x:%06x (SEGA %03x SEGD %02x PGA %03x PGD %04x NONX %u WP %u)\n", machine().describe_context(), offset, virtual_offset, sega, segd, pga, m_page_ram[pga], *nonx, *wp);
|
||||
if (LOG_MAC && offset != virtual_offset) logerror("%s MAC %05x:%06x (SEGA %03x SEGD %02x PGA %03x PGD %04x NONX %u WP %u TASK %u FC %u)\n", machine().describe_context(), offset, virtual_offset, sega, segd, pga, m_page_ram[pga], *nonx, *wp, get_current_task(offset), get_fc());
|
||||
|
||||
return virtual_offset;
|
||||
}
|
||||
@ -440,7 +440,8 @@ void abc1600_mac_device::task_w(offs_t offset, uint8_t data)
|
||||
|
||||
m_task = data ^ 0xff;
|
||||
|
||||
if (LOG) logerror("%s TASK %05x:%02x (TASK %u BOOTE %u MAGIC %u)\n", machine().describe_context(), offset, data, get_current_task(offset), BOOTE, MAGIC);
|
||||
if (LOG) logerror("%s TASK %05x:%02x (TASK %u BOOTE %u MAGIC %u)\n", machine().describe_context(), offset, data,
|
||||
get_current_task(offset), BOOTE, MAGIC);
|
||||
}
|
||||
|
||||
|
||||
@ -497,7 +498,8 @@ void abc1600_mac_device::segment_w(offs_t offset, uint8_t data)
|
||||
|
||||
m_segment_ram[sega] = data & 0x7f;
|
||||
|
||||
if (LOG) logerror("%s SEGMENT %05x:%02x (SEGA %03x SEGD %02x)\n", machine().describe_context(), offset, data, sega, m_segment_ram[sega]);
|
||||
if (LOG) logerror("%s %05x:%02x TASK %u SEGMENT %u MEM %05x-%05x\n", machine().describe_context(), offset, data,
|
||||
get_current_task(offset), sega & 0x1f, (sega & 0x1f) * 0x8000, ((sega & 0x1f) * 0x8000) + 0x7fff);
|
||||
}
|
||||
|
||||
|
||||
@ -602,7 +604,9 @@ void abc1600_mac_device::page_w(offs_t offset, uint8_t data)
|
||||
m_page_ram[pga] = ((data & 0xc3) << 8) | (m_page_ram[pga] & 0xff);
|
||||
}
|
||||
|
||||
if (LOG) logerror("%s PAGE %05x:%02x (SEGA %03x SEGD %02x PGA %03x PGD %04x)\n", machine().describe_context(), offset, data, sega, segd, pga, m_page_ram[pga]);
|
||||
if (LOG) logerror("%s %05x:%02x TASK %u SEGMENT %u PAGE %u MEM %05x-%05x %06x\n", machine().describe_context(), offset, data,
|
||||
get_current_task(offset), sega & 0x1f, ((offset >> 11) & 0x0f), ((sega & 0x1f) * 0x8000) + ((offset >> 11) & 0x0f) * 0x800,
|
||||
((sega & 0x1f) * 0x8000) + (((offset >> 11) & 0x0f) * 0x800) + 0x7ff, (m_page_ram[pga] & 0x3ff) << 11);
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user