diff --git a/src/mame/drivers/apple2gs.cpp b/src/mame/drivers/apple2gs.cpp index 08cba6a6b9a..8eac15fc46a 100644 --- a/src/mame/drivers/apple2gs.cpp +++ b/src/mame/drivers/apple2gs.cpp @@ -886,10 +886,18 @@ WRITE_LINE_MEMBER(apple2gs_state::ay3600_data_ready_w) trans |= (m_kbspecial->read() & 0x08) ? 0x00 : 0x02; // control is bit 2 (active low) trans |= (m_kbspecial->read() & 0x01) ? 0x0000 : 0x0200; // caps lock is bit 9 (active low) - m_transchar = decode[trans]; + // hack in keypad equals because we can't find it in the IIe keymap (Sather doesn't show it in the matrix, but it's clearly on real platinum IIes) + if (m_lastchar == 0x146) + { + m_transchar = '='; + } + else + { + m_transchar = decode[trans]; + } m_strobe = 0x80; - //printf("new char = %04x (%02x)\n", m_lastchar, m_transchar); +// printf("new char = %04x (%02x)\n", m_lastchar, m_transchar); } } @@ -2437,7 +2445,7 @@ u8 apple2gs_state::c000_r(offs_t offset) { ret |= 0x10; } - else if (m_lastchar >= 0x32 && m_lastchar <= 0x3f) + else if ((m_lastchar >= 0x32 && m_lastchar <= 0x3f) && (m_lastchar != 0x39)) { ret |= 0x10; } @@ -2445,7 +2453,7 @@ u8 apple2gs_state::c000_r(offs_t offset) { ret |= 0x10; } - else if (m_lastchar >= 0x109 && m_lastchar <= 0x10a) + else if ((m_lastchar >= 0x109 && m_lastchar <= 0x10a) || (m_lastchar == 0x146)) { ret |= 0x10; } @@ -4839,7 +4847,7 @@ INPUT_PORTS_START( apple2gs ) PORT_BIT(0x200, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_QUOTE) PORT_CHAR('\'') PORT_CHAR('\"') PORT_START("X7") - PORT_BIT(0x001, IP_ACTIVE_HIGH, IPT_UNUSED) + PORT_BIT(0x001, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_EQUALS_PAD) PORT_CHAR(UCHAR_MAMEKEY(EQUALS_PAD)) PORT_BIT(0x002, IP_ACTIVE_HIGH, IPT_UNUSED) PORT_BIT(0x004, IP_ACTIVE_HIGH, IPT_UNUSED) PORT_BIT(0x008, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_MINUS_PAD) PORT_CHAR(UCHAR_MAMEKEY(MINUS_PAD)) @@ -5138,8 +5146,9 @@ void apple2gs_state::apple2gs(machine_config &config) SOFTWARE_LIST(config, "flop35_list").set_original("apple2gs"); SOFTWARE_LIST(config, "flop525_clean").set_compatible("apple2_flop_clcracked"); // No filter on clean cracks yet. - // As WOZ images won't load in the 2GS driver yet, comment out the softlist entry. - //SOFTWARE_LIST(config, "flop525_orig").set_compatible("apple2_flop_orig").set_filter("A2GS"); // Filter list to compatible disks for this machine. +#if NEW_IWM + SOFTWARE_LIST(config, "flop525_orig").set_compatible("apple2_flop_orig").set_filter("A2GS"); // Filter list to compatible disks for this machine. +#endif SOFTWARE_LIST(config, "flop525_misc").set_compatible("apple2_flop_misc"); }