diff options
author | Curt Coder <curtcoder@mail.com> | 2016-09-02 13:33:03 +0300 |
---|---|---|
committer | Curt Coder <curtcoder@mail.com> | 2016-09-02 13:33:03 +0300 |
commit | b96e5b1bddd910225e3414f96cfe0941b600d00e (patch) | |
tree | 270b303e68fe56a0945e8faf66ff49f89d4a4b85 /src/mame/drivers/pc1512.cpp | |
parent | 992ce0071e678994b34fd744cf4ae84d8820c54d (diff) |
pc1512: Fixed keyboard reset behavior. [Curt Coder]
Diffstat (limited to 'src/mame/drivers/pc1512.cpp')
-rw-r--r-- | src/mame/drivers/pc1512.cpp | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/mame/drivers/pc1512.cpp b/src/mame/drivers/pc1512.cpp index 598bd2b6aa7..968fee06f0b 100644 --- a/src/mame/drivers/pc1512.cpp +++ b/src/mame/drivers/pc1512.cpp @@ -200,6 +200,13 @@ WRITE8_MEMBER( pc1512_state::system_w ) update_speaker(); m_kb->clock_w(BIT(data, 6)); + + if (BIT(data, 7)) + { + m_kb_bits = 0; + m_kb->data_w(1); + m_pic->ir1_w(CLEAR_LINE); + } break; case 4: @@ -1134,7 +1141,6 @@ void pc1512_state::machine_reset() { m_nmi_enable = 0; m_toggle = 0; - m_kb_bits = 0; m_pit2 = 1; m_lpen = 0; @@ -1147,7 +1153,9 @@ void pc1512_state::machine_reset() m_vdu_plane = 0x0f; m_vdu_border = 0; - m_kb->clock_w(0); + m_kb_bits = 0; + m_kb->data_w(1); + m_pic->ir1_w(CLEAR_LINE); } @@ -1193,8 +1201,10 @@ void pc1640_state::machine_start() void pc1640_state::machine_reset() { m_nmi_enable = 0; + m_kb_bits = 0; - m_kb->clock_w(0); + m_kb->data_w(1); + m_pic->ir1_w(CLEAR_LINE); } |