summaryrefslogtreecommitdiffstatshomepage
path: root/src/mess/machine/ms7004.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mess/machine/ms7004.c')
-rw-r--r--src/mess/machine/ms7004.c200
1 files changed, 100 insertions, 100 deletions
diff --git a/src/mess/machine/ms7004.c b/src/mess/machine/ms7004.c
index b145479db2b..da8108bcad4 100644
--- a/src/mess/machine/ms7004.c
+++ b/src/mess/machine/ms7004.c
@@ -87,94 +87,94 @@ const rom_entry *ms7004_device::device_rom_region() const
// INPUT_PORTS( ms7004 )
//-------------------------------------------------
/*
-bit sig XSn ВРn
---- --- --- ---
-0 8 16 15
-1 9 15 14
-2 10 14 13
-3 11 13 12
-4 12 19 16
-5 13 12 11
-6 14 11 10
-7 15 10 9
-8 16 9 8
-9 17 8 7
-10 18 7 6
-11 19 6 5
-12 20 3 1
-13 21 1 2
-14 22 4 3
-15 23 5 4
-
-0xc9 KEY_LANGLE_RANGLE 'резервная клавиша'
-0xbc KEY_DELETE ЗБ
-0xbd KEY_RETURN ВК
-0xbf KEY_TILDE '; +'
-0xc4 - 'Ъ'
-0xca - '/ ?'
-0xed KEY_PERIOD 'Ю @'
-0xf1 - '_'
+bit sig XSn ????n
+--- --- --- ---
+0 8 16 15
+1 9 15 14
+2 10 14 13
+3 11 13 12
+4 12 19 16
+5 13 12 11
+6 14 11 10
+7 15 10 9
+8 16 9 8
+9 17 8 7
+10 18 7 6
+11 19 6 5
+12 20 3 1
+13 21 1 2
+14 22 4 3
+15 23 5 4
+
+0xc9 KEY_LANGLE_RANGLE '?????????????????? ??????????????'
+0xbc KEY_DELETE ????
+0xbd KEY_RETURN ????
+0xbf KEY_TILDE '; +'
+0xc4 - '??'
+0xca - '/ ?'
+0xed KEY_PERIOD '?? @'
+0xf1 - '_'
<...>
-0x56 KEY_F1 СТОП КАДР
-0x57 KEY_F2 ПЕЧАТЬ КАДРА
-0x58 KEY_F3 ПАУЗА
-0x59 KEY_F4 УСТ РЕЖИМА
-0x5a KEY_F5 Ф5
-
-0x64 KEY_F6 ПРЕРЫВ
-0x65 KEY_F7 ПРОДОЛЖ
-0x66 KEY_F8 ОТМЕН
-0x67 KEY_F9 ОСНОВН КАДР
-0x69 KEY_F10 ВЫХОД
-
-0x71 KEY_F11 Ф11 (АР2)
-0x72 KEY_F12 Ф12 (ВШ)
-0x73 KEY_F13 Ф13 (ПС)
-0x74 KEY_F14 ДОП ВАРИАНТ
-
-0x7c KEY_HELP ПМ
-0x7d KEY_MENU ИСП
-
-0x80 KEY_F17 Ф17
-0x81 KEY_F18 Ф18
-0x82 KEY_F19 Ф19
-0x83 KEY_F20 Ф20
-
-0xb0 KEY_LOCK ФКС
-0xae KEY_SHIFT ВР
-0xaf KEY_CTRL СУ
-
-0xb1 KEY_META КМП
-0xb2 - РУС/ЛАТ
-
-0x8a KEY_FIND НТ
-0x8b KEY_INSERT_HERE ВСТ
-0x8c KEY_REMOVE УДАЛ
-0x8d KEY_SELECT ВЫБР
-0x8e KEY_PREV_SCREEN ПРЕД КАДР
-0x8f KEY_NEXT_SCREEN СЛЕД КАДР
+0x56 KEY_F1 ???????? ????????
+0x57 KEY_F2 ???????????? ??????????
+0x58 KEY_F3 ??????????
+0x59 KEY_F4 ?????? ????????????
+0x5a KEY_F5 ??5
+
+0x64 KEY_F6 ????????????
+0x65 KEY_F7 ??????????????
+0x66 KEY_F8 ??????????
+0x67 KEY_F9 ???????????? ????????
+0x69 KEY_F10 ??????????
+
+0x71 KEY_F11 ??11 (????2)
+0x72 KEY_F12 ??12 (????)
+0x73 KEY_F13 ??13 (????)
+0x74 KEY_F14 ?????? ??????????????
+
+0x7c KEY_HELP ????
+0x7d KEY_MENU ??????
+
+0x80 KEY_F17 ??17
+0x81 KEY_F18 ??18
+0x82 KEY_F19 ??19
+0x83 KEY_F20 ??20
+
+0xb0 KEY_LOCK ??????
+0xae KEY_SHIFT ????
+0xaf KEY_CTRL ????
+
+0xb1 KEY_META ??????
+0xb2 - ??????/??????
+
+0x8a KEY_FIND ????
+0x8b KEY_INSERT_HERE ??????
+0x8c KEY_REMOVE ????????
+0x8d KEY_SELECT ????????
+0x8e KEY_PREV_SCREEN ???????? ????????
+0x8f KEY_NEXT_SCREEN ???????? ????????
nothing sends '@' or '`'
-`/~ sends ^/~
-2/@ sends 2/"
-6/^ sends 6/&
-7/& sends 7/'
-8/ * sends 8/(
-9/( sends 9/)
-0/) sends 0/0
--/_ sends _/_
-+/= sends -/=
-;/: sends ;/+
-'/" sends :/ *
-
-F10 sends ^C
-F11 sends ESC
-F12 sends ^H
+`/~ sends ^/~
+2/@ sends 2/"
+6/^ sends 6/&
+7/& sends 7/'
+8/ * sends 8/(
+9/( sends 9/)
+0/) sends 0/0
+-/_ sends _/_
++/= sends -/=
+;/: sends ;/+
+'/" sends :/ *
+
+F10 sends ^C
+F11 sends ESC
+F12 sends ^H
*/
INPUT_PORTS_START( ms7004 )
- PORT_START("KBD12") // vertical row 1
+ PORT_START("KBD12") // vertical row 1
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Print Screen (F2)") PORT_CODE(KEYCODE_F2)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Hold Screen (F1)") PORT_CODE(KEYCODE_F1)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) // '{' / '|'
@@ -184,7 +184,7 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Caps Lock") PORT_CODE(KEYCODE_CAPSLOCK) // what
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("LShift") PORT_CODE(KEYCODE_LSHIFT)
- PORT_START("KBD13") // vertical row 2
+ PORT_START("KBD13") // vertical row 2
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Setup (F3)") PORT_CODE(KEYCODE_F3)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Data / Talk (F4)") PORT_CODE(KEYCODE_F4)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("1") PORT_CODE(KEYCODE_1)
@@ -194,7 +194,7 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Rus/Lat") PORT_CODE(KEYCODE_ESC)
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Compose") PORT_CODE(KEYCODE_LALT)
- PORT_START("KBD14") // vertical row 3
+ PORT_START("KBD14") // vertical row 3
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Break (F5)") PORT_CODE(KEYCODE_F5)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("2") PORT_CODE(KEYCODE_2)
@@ -204,7 +204,7 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Q") PORT_CODE(KEYCODE_Q)
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED )
- PORT_START("KBD15") // vertical row 4
+ PORT_START("KBD15") // vertical row 4
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("3") PORT_CODE(KEYCODE_3)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("4") PORT_CODE(KEYCODE_4)
@@ -214,7 +214,7 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED )
- PORT_START("KBD11") // vertical row 5
+ PORT_START("KBD11") // vertical row 5
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Interrupt (F6)") PORT_CODE(KEYCODE_F6)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("5") PORT_CODE(KEYCODE_5)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("E") PORT_CODE(KEYCODE_E)
@@ -224,7 +224,7 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED )
- PORT_START("KBD10") // vertical row 6
+ PORT_START("KBD10") // vertical row 6
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Resume (F7)") PORT_CODE(KEYCODE_F7)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("6") PORT_CODE(KEYCODE_6)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("N") PORT_CODE(KEYCODE_N)
@@ -234,7 +234,7 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("I") PORT_CODE(KEYCODE_I)
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Space") PORT_CODE(KEYCODE_SPACE)
- PORT_START("KBD9") // vertical row 7
+ PORT_START("KBD9") // vertical row 7
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Cancel (F8)") PORT_CODE(KEYCODE_F8)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Main Screen (F9)") PORT_CODE(KEYCODE_F9)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("7") PORT_CODE(KEYCODE_7)
@@ -244,7 +244,7 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("X") PORT_CODE(KEYCODE_X)
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("B") PORT_CODE(KEYCODE_B)
- PORT_START("KBD8") // vertical row 8
+ PORT_START("KBD8") // vertical row 8
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Exit (F10)") PORT_CODE(KEYCODE_F10)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("9") PORT_CODE(KEYCODE_9)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("8") PORT_CODE(KEYCODE_8)
@@ -254,7 +254,7 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED ) // '@'
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME(",") PORT_CODE(KEYCODE_COMMA)
- PORT_START("KBD7") // vertical row 9
+ PORT_START("KBD7") // vertical row 9
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("ESC (F11)") PORT_CODE(KEYCODE_F11)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("0") PORT_CODE(KEYCODE_0)
@@ -264,27 +264,27 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("\\") PORT_CODE(KEYCODE_BACKSLASH)
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("/") PORT_CODE(KEYCODE_SLASH)
- PORT_START("KBD6") // vertical row 10
+ PORT_START("KBD6") // vertical row 10
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("BS (F12)") PORT_CODE(KEYCODE_F12)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("LF (F13)") PORT_CODE(KEYCODE_PRTSCR)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) // '}'
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("'") PORT_CODE(KEYCODE_QUOTE) // ':'
- PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) // 'ъ'
+ PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) // '??'
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME(".") PORT_CODE(KEYCODE_STOP)
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("-") PORT_CODE(KEYCODE_MINUS)
- PORT_START("KBD5") // vertical row 11
+ PORT_START("KBD5") // vertical row 11
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Additional Options (F14)") PORT_CODE(KEYCODE_PAUSE)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Delete <X") PORT_CODE(KEYCODE_BACKSPACE)
- PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) // ???
+ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) // ???
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Return") PORT_CODE(KEYCODE_ENTER)
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("RShift") PORT_CODE(KEYCODE_RSHIFT)
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED )
- PORT_START("KBD3") // vertical row 12
+ PORT_START("KBD3") // vertical row 12
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Help (F15)") PORT_CODE(KEYCODE_RALT)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Insert Here") PORT_CODE(KEYCODE_HOME)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Find") PORT_CODE(KEYCODE_INSERT)
@@ -294,7 +294,7 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Left") PORT_CODE(KEYCODE_LEFT)
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED )
- PORT_START("KBD2") // vertical row 13
+ PORT_START("KBD2") // vertical row 13
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Remove") PORT_CODE(KEYCODE_PGUP)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Next [v]") PORT_CODE(KEYCODE_PGDN)
@@ -304,7 +304,7 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Down") PORT_CODE(KEYCODE_DOWN)
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED )
- PORT_START("KBD1") // vertical row 14
+ PORT_START("KBD1") // vertical row 14
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Do (F16)") PORT_CODE(KEYCODE_RCONTROL)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("PF1") PORT_CODE(KEYCODE_NUMLOCK)
@@ -314,7 +314,7 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Num 2") PORT_CODE(KEYCODE_2_PAD)
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Num 0") PORT_CODE(KEYCODE_0_PAD)
- PORT_START("KBD0") // vertical row 15
+ PORT_START("KBD0") // vertical row 15
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("F17")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("F18")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("PF2") PORT_CODE(KEYCODE_SLASH_PAD)
@@ -324,7 +324,7 @@ INPUT_PORTS_START( ms7004 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Num 6") PORT_CODE(KEYCODE_6_PAD)
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Num 3") PORT_CODE(KEYCODE_3_PAD)
- PORT_START("KBD4") // vertical row 16
+ PORT_START("KBD4") // vertical row 16
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("F19")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("F20")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("PF4") PORT_CODE(KEYCODE_MINUS_PAD)
@@ -355,7 +355,7 @@ ioport_constructor ms7004_device::device_input_ports() const
ms7004_device::ms7004_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
: device_t(mconfig, MS7004, "MS7004 keyboard", tag, owner, clock, "ms7004", __FILE__),
-// device_serial_interface(mconfig, *this),
+// device_serial_interface(mconfig, *this),
m_maincpu(*this, MS7004_CPU_TAG),
m_speaker(*this, MS7004_SPK_TAG),
m_i8243(*this, "i8243"),
@@ -458,7 +458,7 @@ WRITE8_MEMBER( ms7004_device::i8243_port_w )
DBG_LOG(2,0,( "%s: 8243 port %d data %02xH\n",
tag(), offset + 4, data));
-
+
if (data) {
switch(offset << 4 | data) {
case 0x01: sense = m_kbd0->read(); break;