summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/m3.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/m3.cpp')
-rw-r--r--src/mame/drivers/m3.cpp19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/mame/drivers/m3.cpp b/src/mame/drivers/m3.cpp
index e66db6f5350..302998657b5 100644
--- a/src/mame/drivers/m3.cpp
+++ b/src/mame/drivers/m3.cpp
@@ -411,11 +411,11 @@ MC6845_UPDATE_ROW( m3_state::crtc_update_row )
static const gfx_layout charlayout =
{
7, 10,
- 128,
+ RGN_FRAC(1,1),
1,
{ 0 },
{ 1, 2, 3, 4, 5, 6, 7 },
- { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8, 8*8, 9*8, 10*8 },
+ { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8, 8*8, 9*8 },
8*16
};
@@ -442,11 +442,10 @@ void m3_state::ppi2_pa_w(uint8_t data)
logerror("ppi2_pa_w: %02x\n", data);
- if (BIT(data, 0) == 0)
- floppy = m_floppy[0] ? m_floppy[0]->get_device() : nullptr;
-
- if (BIT(data, 1) == 0)
- floppy = m_floppy[1] ? m_floppy[1]->get_device() : nullptr;
+ if (!BIT(data, 0) && m_floppy[0])
+ floppy = m_floppy[0]->get_device();
+ else if (!BIT(data, 1) && m_floppy[1])
+ floppy = m_floppy[1]->get_device();
m_fdc->set_floppy(floppy);
@@ -469,6 +468,12 @@ void m3_state::machine_start()
void m3_state::machine_reset()
{
m_maincpu->set_pc(0xf000);
+
+ // floppy motor is always on
+ if (m_floppy[0])
+ m_floppy[0]->get_device()->mon_w(0);
+ if (m_floppy[1])
+ m_floppy[1]->get_device()->mon_w(0);
}