Previous 199869 Revisions Next

r26797 Saturday 28th December, 2013 at 23:07:16 UTC by smf
push all gpio values to allow interrupts to work. [smf]
[src/mess/drivers]atarist.c
[src/mess/includes]atarist.h

trunk/src/mess/drivers/atarist.c
r26796r26797
707707{
708708}
709709
710WRITE_LINE_MEMBER( st_state::write_monochrome )
711{
712   m_monochrome = state;
713   m_mfp->i7_w(m_monochrome);
714}
710715
711716
717
712718//**************************************************************************
713719//  DMA SOUND
714720//**************************************************************************
r26796r26797
720726void ste_state::dmasound_set_state(int level)
721727{
722728   m_dmasnd_active = level;
723   m_mfp->tai_w(level);
729   m_mfp->tai_w(m_dmasnd_active);
730   m_mfp->i7_w(m_monochrome ^ m_dmasnd_active);
724731
725732   if (level == 0)
726733   {
r26796r26797
734741}
735742
736743
744WRITE_LINE_MEMBER( ste_state::write_monochrome )
745{
746   m_monochrome = state;
747   m_mfp->i7_w(m_monochrome ^ m_dmasnd_active);
748}
749
737750//-------------------------------------------------
738751//  dmasound_tick -
739752//-------------------------------------------------
r26796r26797
15721585   PORT_CONFNAME( 0x01, 0x00, "Input Port 0 Device")
15731586   PORT_CONFSETTING( 0x00, "Mouse" )
15741587   PORT_CONFSETTING( 0x01, DEF_STR( Joystick ) )
1575   PORT_CONFNAME( 0x80, 0x80, "Monitor")
1588   PORT_CONFNAME( 0x80, 0x80, "Monitor") PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, st_state, write_monochrome)
15761589   PORT_CONFSETTING( 0x00, "Monochrome (Atari SM124)" )
15771590   PORT_CONFSETTING( 0x80, "Color (Atari SC1224)" )
15781591
r26796r26797
16101623   PORT_CONFNAME( 0x01, 0x00, "Input Port 0 Device")
16111624   PORT_CONFSETTING( 0x00, "Mouse" )
16121625   PORT_CONFSETTING( 0x01, DEF_STR( Joystick ) )
1613   PORT_CONFNAME( 0x80, 0x80, "Monitor")
1626   PORT_CONFNAME( 0x80, 0x80, "Monitor") PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, ste_state, write_monochrome)
16141627   PORT_CONFSETTING( 0x00, "Monochrome (Atari SM124)" )
16151628   PORT_CONFSETTING( 0x80, "Color (Atari SC1435)" )
16161629
r26796r26797
19241937   data |= m_rs232->ri_r() << 6;
19251938
19261939   // monochrome monitor detect
1927   data |= m_config->read() & 0x80;
1940   data |= m_monochrome << 7;
19281941
19291942   return data;
19301943}
r26796r26797
19952008   data |= m_rs232->ri_r() << 6;
19962009
19972010   // monochrome monitor detect, DMA sound active
1998   data |= (m_config->read() & 0x80) ^ (m_dmasnd_active << 7);
2011   data |= (m_monochrome ^ m_dmasnd_active) << 7;
19992012
20002013   return data;
20012014}
r26796r26797
23882401
23892402   MCFG_RS232_PORT_ADD(RS232_TAG, default_rs232_devices, NULL)
23902403   MCFG_SERIAL_OUT_RX_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, write_rx))
2404   MCFG_RS232_OUT_DCD_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, i1_w))
2405   MCFG_RS232_OUT_CTS_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, i2_w))
2406   MCFG_RS232_OUT_RI_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, i6_w))
23912407
23922408   MCFG_SERIAL_PORT_ADD("mdin", midiin_slot, "midiin")
23932409   MCFG_SERIAL_OUT_RX_HANDLER(WRITELINE(st_state, midi_rx_w))
r26796r26797
24482464
24492465   MCFG_RS232_PORT_ADD(RS232_TAG, default_rs232_devices, NULL)
24502466   MCFG_SERIAL_OUT_RX_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, write_rx))
2467   MCFG_RS232_OUT_DCD_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, i1_w))
2468   MCFG_RS232_OUT_CTS_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, i2_w))
2469   MCFG_RS232_OUT_RI_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, i6_w))
24512470
24522471   MCFG_SERIAL_PORT_ADD("mdin", midiin_slot, "midiin")
24532472   MCFG_SERIAL_OUT_RX_HANDLER(WRITELINE(st_state, midi_rx_w))
r26796r26797
25172536
25182537   MCFG_RS232_PORT_ADD(RS232_TAG, default_rs232_devices, NULL)
25192538   MCFG_SERIAL_OUT_RX_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, write_rx))
2539   MCFG_RS232_OUT_DCD_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, i1_w))
2540   MCFG_RS232_OUT_CTS_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, i2_w))
2541   MCFG_RS232_OUT_RI_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, i6_w))
25202542
25212543   MCFG_SERIAL_PORT_ADD("mdin", midiin_slot, "midiin")
25222544   MCFG_SERIAL_OUT_RX_HANDLER(WRITELINE(st_state, midi_rx_w))
r26796r26797
25962618
25972619   MCFG_RS232_PORT_ADD(RS232_TAG, default_rs232_devices, NULL)
25982620   MCFG_SERIAL_OUT_RX_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, write_rx))
2621   MCFG_RS232_OUT_DCD_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, i1_w))
2622   MCFG_RS232_OUT_CTS_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, i2_w))
2623   MCFG_RS232_OUT_RI_HANDLER(DEVWRITELINE(MC68901_TAG, mc68901_device, i6_w))
25992624
26002625   MCFG_SERIAL_PORT_ADD("mdin", midiin_slot, "midiin")
26012626   MCFG_SERIAL_OUT_RX_HANDLER(WRITELINE(st_state, midi_rx_w))
trunk/src/mess/includes/atarist.h
r26796r26797
119119         m_ikbd_mouse_px(IKBD_MOUSE_PHASE_STATIC),
120120         m_ikbd_mouse_py(IKBD_MOUSE_PHASE_STATIC),
121121         m_ikbd_mouse_pc(0),
122         m_ikbd_joy(1)
122         m_ikbd_joy(1),
123         m_monochrome(1)
123124   { }
124125
125126   required_device<cpu_device> m_maincpu;
r26796r26797
330331   DECLARE_FLOPPY_FORMATS(floppy_formats);
331332   IRQ_CALLBACK_MEMBER(atarist_int_ack);
332333
334   int m_monochrome;
335   virtual DECLARE_WRITE_LINE_MEMBER( write_monochrome );
336
333337protected:
334338   virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr);
335339};
r26796r26797
390394   DECLARE_WRITE16_MEMBER( microwire_mask_w );
391395
392396   DECLARE_READ8_MEMBER( mfp_gpio_r );
397   virtual DECLARE_WRITE_LINE_MEMBER( write_monochrome );
393398
394399   void dmasound_set_state(int level);
395400   void dmasound_tick();

Previous 199869 Revisions Next


© 1997-2024 The MAME Team