mirror of
https://github.com/holub/mame
synced 2025-06-07 13:23:50 +03:00
vtech2: added reset key at left alt, moved graph key from left alt to right alt(original physical location is between Enter and rightshift) (nw)
This commit is contained in:
parent
7014716003
commit
2657aa3539
@ -95,11 +95,7 @@ void vtech2_state::vtech2_io(address_map &map)
|
||||
map(0x45, 0x45).w(FUNC(vtech2_state::laser_two_color_w));
|
||||
}
|
||||
|
||||
/* 2008-05 FP:
|
||||
Small note about natural keyboard: currently,
|
||||
- "Graph" is mapped to 'F11'
|
||||
- "Del Line" is mapped to 'F12'
|
||||
*/
|
||||
|
||||
static INPUT_PORTS_START( laser500 )
|
||||
PORT_START("ROW0") /* KEY ROW 0 */
|
||||
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_UNUSED)
|
||||
@ -173,7 +169,7 @@ static INPUT_PORTS_START( laser500 )
|
||||
|
||||
PORT_START("ROW7") /* KEY ROW 7 */
|
||||
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_UNUSED)
|
||||
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("Graph") PORT_CODE(KEYCODE_LALT) PORT_CHAR(UCHAR_MAMEKEY(F11))
|
||||
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("Graph") PORT_CODE(KEYCODE_RALT) PORT_CHAR(UCHAR_MAMEKEY(RALT))
|
||||
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CODE(KEYCODE_BACKSLASH) PORT_CHAR('`') PORT_CHAR('~')
|
||||
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CODE(KEYCODE_SPACE) PORT_CHAR(' ')
|
||||
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CODE(KEYCODE_SLASH) PORT_CHAR('/') PORT_CHAR('?')
|
||||
@ -204,7 +200,7 @@ static INPUT_PORTS_START( laser500 )
|
||||
PORT_START("ROWC") /* KEY ROW C */
|
||||
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_UNUSED)
|
||||
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("Cap Lock") PORT_CODE(KEYCODE_CAPSLOCK) PORT_CHAR(UCHAR_MAMEKEY(CAPSLOCK))
|
||||
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("Del Line") PORT_CODE(KEYCODE_PGUP) PORT_CHAR(UCHAR_MAMEKEY(F12))
|
||||
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("Del Line") PORT_CODE(KEYCODE_PGUP) PORT_CHAR(UCHAR_MAMEKEY(PGUP))
|
||||
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CODE(KEYCODE_HOME) PORT_CHAR(UCHAR_MAMEKEY(HOME))
|
||||
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CODE(KEYCODE_UP) PORT_CHAR(UCHAR_MAMEKEY(UP))
|
||||
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CODE(KEYCODE_LEFT) PORT_CHAR(UCHAR_MAMEKEY(LEFT))
|
||||
@ -217,11 +213,21 @@ static INPUT_PORTS_START( laser500 )
|
||||
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CODE(KEYCODE_BACKSLASH2) PORT_CHAR('\\') PORT_CHAR('|')
|
||||
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CODE(KEYCODE_CLOSEBRACE) PORT_CHAR(']') PORT_CHAR('}')
|
||||
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CODE(KEYCODE_OPENBRACE) PORT_CHAR('[') PORT_CHAR('{')
|
||||
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("Mu \xC2\xA3") PORT_CODE(KEYCODE_TILDE) PORT_CHAR(0xA3)
|
||||
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("\xCE\xBC \xC2\xA3") PORT_CODE(KEYCODE_TILDE) PORT_CHAR(0xa3)
|
||||
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("Del") PORT_CODE(KEYCODE_DEL) PORT_CHAR(UCHAR_MAMEKEY(DEL))
|
||||
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("Ins") PORT_CODE(KEYCODE_INSERT) PORT_CHAR(UCHAR_MAMEKEY(INSERT))
|
||||
|
||||
PORT_START("RESET")
|
||||
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Reset") PORT_CODE(KEYCODE_LALT) PORT_CHAR(UCHAR_MAMEKEY(LALT)) PORT_CHANGED_MEMBER(DEVICE_SELF, vtech2_state, reset_button, nullptr)
|
||||
INPUT_PORTS_END
|
||||
|
||||
INPUT_CHANGED_MEMBER(vtech2_state::reset_button)
|
||||
{
|
||||
// RESET button is directly wired to Z80 RESET pin, BIOS will detect it (doesn't reset the computer)
|
||||
m_maincpu->set_input_line(INPUT_LINE_RESET, newval ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
|
||||
/* 2008-05 FP: I wasn't able to find a good picture of the laser 350 to verify the mapping of the emulated keyboard.
|
||||
However, old-computers.com describes it as a laser 500/700 in a laser 300/310 case. The missing inputs seem to
|
||||
confirm this. */
|
||||
@ -252,6 +258,9 @@ static INPUT_PORTS_START( laser350 )
|
||||
PORT_MODIFY("ROWD") /* KEY ROW D */
|
||||
PORT_BIT(0xff, IP_ACTIVE_LOW, IPT_UNUSED) /* not on the Laser350 */
|
||||
|
||||
PORT_MODIFY("RESET")
|
||||
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_UNUSED) /* not on the Laser350 */
|
||||
|
||||
/* 2008-05 FP: This input_port seems never to be read. Is it a leftover of the old cassette code? */
|
||||
PORT_START("TAPE") /* Tape control */
|
||||
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Tape Start") PORT_CODE(KEYCODE_SLASH_PAD)
|
||||
|
@ -37,6 +37,8 @@ public:
|
||||
|
||||
void init_laser();
|
||||
|
||||
DECLARE_INPUT_CHANGED_MEMBER(reset_button);
|
||||
|
||||
private:
|
||||
DECLARE_WRITE8_MEMBER(laser_bank_select_w);
|
||||
DECLARE_WRITE8_MEMBER(laser_fdc_w);
|
||||
|
Loading…
Reference in New Issue
Block a user