diff options
Diffstat (limited to 'src/mame/drivers/mkit09.cpp')
-rw-r--r-- | src/mame/drivers/mkit09.cpp | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/src/mame/drivers/mkit09.cpp b/src/mame/drivers/mkit09.cpp index ef2f512e32d..d1d11a017a5 100644 --- a/src/mame/drivers/mkit09.cpp +++ b/src/mame/drivers/mkit09.cpp @@ -2,15 +2,12 @@ // copyright-holders:Robbbert /*************************************************************************** - Multitech Microkit09 +Multitech Microkit09 - 2013-12-08 Mostly working driver. +2013-12-08 Mostly working driver. - The only documentation is in French, so the operation of the system - is a bit of a mystery. ToDo: - - Fix Cassette - Need software to test with Pasting: @@ -26,7 +23,7 @@ Test Paste: - 2015-10-02 Added alternate bios found on a forum. Memory map is different. +2015-10-02 Added alternate bios found on a forum. Memory map is different. Still to fix keyboard and display. No documentation exists. ****************************************************************************/ @@ -49,6 +46,7 @@ public: , m_cass(*this, "cassette") , m_maincpu(*this, "maincpu") , m_digits(*this, "digit%u", 0U) + , m_io_keyboard(*this, "X%u", 0) { } void mkit09a(machine_config &config); @@ -72,6 +70,7 @@ private: required_device<cassette_image_device> m_cass; required_device<cpu_device> m_maincpu; output_finder<10> m_digits; + required_ioport_array<4> m_io_keyboard; }; @@ -159,11 +158,7 @@ void mkit09_state::machine_reset() READ8_MEMBER( mkit09_state::pa_r ) { if (m_keydata < 4) - { - char kbdrow[4]; - sprintf(kbdrow,"X%d",m_keydata); - return ioport(kbdrow)->read(); - } + return m_io_keyboard[m_keydata]->read(); return 0xff; } @@ -219,6 +214,7 @@ void mkit09_state::mkit09(machine_config &config) m_pia->irqb_handler().set_inputline("maincpu", M6809_IRQ_LINE); CASSETTE(config, m_cass); + m_cass->set_default_state(CASSETTE_STOPPED | CASSETTE_MOTOR_ENABLED | CASSETTE_SPEAKER_ENABLED); m_cass->add_route(ALL_OUTPUTS, "mono", 0.05); } |