mirror of
https://github.com/holub/mame
synced 2025-04-25 09:50:04 +03:00
apple2gs: add keypad equals, fix p showing as keypad (GitHub #7658) [R. Belmont]
This commit is contained in:
parent
a1719a7c9c
commit
854bd7a84d
@ -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");
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user