epc: Workarounds for issue #5776 - RAM sizes trigger segfault in BGFX. Also added comment about assert when DEBUG=1

This commit is contained in:
Joakim Larsson Edstrom 2019-10-24 10:12:19 +02:00
parent 3d4bd27551
commit 74f6c2b21f
2 changed files with 7 additions and 4 deletions

View File

@ -614,7 +614,7 @@ READ8_MEMBER( epc_state::ppi_portc_r )
// Read 4 configurations dip switches depending on PB3 // Read 4 configurations dip switches depending on PB3
data = (m_io_dsw->read() >> ((m_ppi_portb & 0x08) ? 4 : 0) & 0x0f); data = (m_io_dsw->read() >> ((m_ppi_portb & 0x08) ? 4 : 0) & 0x0f);
// TODO: verify what PC4-PC7 is used for, if anything // TODO: implement PC4/PC5, ibmPCjr compatible cassette feedback
LOGPPI("PPI Port C read: %02x\n", data); LOGPPI("PPI Port C read: %02x\n", data);
@ -814,8 +814,10 @@ void epc_state::epc(machine_config &config)
// System board has 128kB memory with parity, expansion can be achieved through the // System board has 128kB memory with parity, expansion can be achieved through the
// 128kB Memory Expansion Board 1090 and/or the 128kB Multifunction Board MB1080-001 // 128kB Memory Expansion Board 1090 and/or the 128kB Multifunction Board MB1080-001
// and/or the 384kB MB1080-002. The MB1080 DRAM might need to be dynamically added as // and/or the 384kB MB1080-002. The MB1080 DRAM might need to be dynamically added as
// base address and also a video memory hole is configuarable. // base address and also a video memory hole is configurable.
RAM(config, m_ram).set_default_size("128K").set_extra_options("256K, 384K, 512K, 640K"); // Some RAM sizes are disabled because they trigger issue #5776, just until that is sorted out
//RAM(config, m_ram).set_default_size("128K").set_extra_options("256K, 384K, 512K, 640K");
RAM(config, m_ram).set_default_size("128K").set_extra_options("384K");
// FDC // FDC
I8272A(config, m_fdc, XTAL(16'000'000) / 2, false); // TEW crystal marked X3 verified I8272A(config, m_fdc, XTAL(16'000'000) / 2, false); // TEW crystal marked X3 verified

View File

@ -267,6 +267,7 @@ WRITE_LINE_MEMBER(eispc_keyboard_device::hold_w)
m_hold = CLEAR_LINE == state; m_hold = CLEAR_LINE == state;
} }
// TODO: Fix proper HOLD of reset line for MCU until released by hist CPU
WRITE_LINE_MEMBER(eispc_keyboard_device::rst_line_w) WRITE_LINE_MEMBER(eispc_keyboard_device::rst_line_w)
{ {
if (state == CLEAR_LINE) if (state == CLEAR_LINE)
@ -278,7 +279,7 @@ WRITE_LINE_MEMBER(eispc_keyboard_device::rst_line_w)
else else
{ {
// set_input_line suspends with a true argument which causes "Keyboard error" // set_input_line suspends with a true argument which causes "Keyboard error"
m_mcu->suspend(SUSPEND_REASON_RESET, false); m_mcu->suspend(SUSPEND_REASON_RESET, false); // This causes an assert later when DEBUG==1
//m_mcu->set_input_line(INPUT_LINE_RESET, ASSERT_LINE); //m_mcu->set_input_line(INPUT_LINE_RESET, ASSERT_LINE);
LOGRST("KBD: Keyboard mcu reset line is asserted\n"); LOGRST("KBD: Keyboard mcu reset line is asserted\n");
} }