zorba: use perfect time quantum for keybaord MCU, map right shift (nw)

There's some kind of sync issue between the keyboard MCU which generates
serial signals off its internal timer/counter and the 8251 USART in the
computer that causes characters to be dropped.  Some characters are more
likely to be dropped than others.  There's an issue somewhere in the
chain, and this is a good test case for whatever it is.
This commit is contained in:
Vas Crabb 2017-01-19 22:05:39 +11:00
parent 98b85af4a7
commit df75e7463e
2 changed files with 2 additions and 2 deletions

View File

@ -259,7 +259,7 @@ MACHINE_CONFIG_START( zorba, zorba_state )
// J6 TTL-level serial keyboard
MCFG_DEVICE_ADD("keyboard", ZORBA_KEYBOARD, 0)
MCFG_ZORBA_KEYBOARD_RXD_CB(DEVWRITELINE("uart2", i8251_device, write_rxd))
//MCFG_QUANTUM_PERFECT_CPU("keyboard:mcu")
MCFG_QUANTUM_PERFECT_CPU("keyboard:mcu")
MCFG_SOFTWARE_LIST_ADD("flop_list", "zorba")
MACHINE_CONFIG_END

View File

@ -92,7 +92,7 @@ INPUT_PORTS_START(zorba_keyboard)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_KEYBOARD ) PORT_NAME("TAB") PORT_CODE(KEYCODE_TAB) PORT_CHAR(9)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_KEYBOARD ) PORT_CODE(KEYCODE_CLOSEBRACE) PORT_CHAR(']') PORT_CHAR('}')
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_KEYBOARD ) PORT_CODE(KEYCODE_H) PORT_CHAR('h') PORT_CHAR('H')
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_KEYBOARD ) PORT_NAME("SHIFT") PORT_CODE(KEYCODE_LSHIFT) PORT_CHAR(UCHAR_SHIFT_1)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_KEYBOARD ) PORT_NAME("SHIFT") PORT_CODE(KEYCODE_LSHIFT) PORT_CODE(KEYCODE_RSHIFT) PORT_CHAR(UCHAR_SHIFT_1)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_KEYBOARD ) PORT_NAME("KP .") PORT_CODE(KEYCODE_DEL_PAD) PORT_CHAR(UCHAR_MAMEKEY(DEL_PAD))
PORT_START("ROW5")