mirror of
https://github.com/holub/mame
synced 2025-06-02 10:59:52 +03:00
(MESS) softbox: Promoted driver to working. [Curt Coder, Mike Naberezny]
(MESS) Fixed IEEE-488 bus reset on Commodore drives. [Curt Coder]
This commit is contained in:
parent
608196c112
commit
8f7c19fe24
@ -104,22 +104,22 @@ static const i8251_interface usart_intf =
|
||||
// I8255A_INTERFACE( ppi0_intf )
|
||||
//-------------------------------------------------
|
||||
|
||||
READ8_MEMBER( softbox_state::pia0_pa_r )
|
||||
READ8_MEMBER( softbox_state::ppi0_pa_r )
|
||||
{
|
||||
return m_ieee->dio_r() ^ 0xff;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER( softbox_state::pia0_pb_w )
|
||||
WRITE8_MEMBER( softbox_state::ppi0_pb_w )
|
||||
{
|
||||
m_ieee->dio_w(data ^ 0xff);
|
||||
}
|
||||
|
||||
static I8255A_INTERFACE( ppi0_intf )
|
||||
{
|
||||
DEVCB_DRIVER_MEMBER(softbox_state, pia0_pa_r),
|
||||
DEVCB_DRIVER_MEMBER(softbox_state, ppi0_pa_r),
|
||||
DEVCB_NULL, // Port A write
|
||||
DEVCB_NULL, // Port B read
|
||||
DEVCB_DRIVER_MEMBER(softbox_state, pia0_pb_w),
|
||||
DEVCB_DRIVER_MEMBER(softbox_state, ppi0_pb_w),
|
||||
DEVCB_INPUT_PORT("SW1"), // Port C read
|
||||
DEVCB_NULL // Port C write
|
||||
};
|
||||
@ -129,7 +129,7 @@ static I8255A_INTERFACE( ppi0_intf )
|
||||
// I8255A_INTERFACE( ppi1_intf )
|
||||
//-------------------------------------------------
|
||||
|
||||
READ8_MEMBER( softbox_state::pia1_pa_r )
|
||||
READ8_MEMBER( softbox_state::ppi1_pa_r )
|
||||
{
|
||||
/*
|
||||
|
||||
@ -160,7 +160,7 @@ READ8_MEMBER( softbox_state::pia1_pa_r )
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER( softbox_state::pia1_pb_w )
|
||||
WRITE8_MEMBER( softbox_state::ppi1_pb_w )
|
||||
{
|
||||
/*
|
||||
|
||||
@ -187,7 +187,7 @@ WRITE8_MEMBER( softbox_state::pia1_pb_w )
|
||||
m_ieee->ifc_w(!BIT(data, 7));
|
||||
}
|
||||
|
||||
READ8_MEMBER( softbox_state::pia1_pc_r )
|
||||
READ8_MEMBER( softbox_state::ppi1_pc_r )
|
||||
{
|
||||
/*
|
||||
|
||||
@ -207,7 +207,7 @@ READ8_MEMBER( softbox_state::pia1_pc_r )
|
||||
return 0;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER( softbox_state::pia1_pc_w )
|
||||
WRITE8_MEMBER( softbox_state::ppi1_pc_w )
|
||||
{
|
||||
/*
|
||||
|
||||
@ -231,12 +231,12 @@ WRITE8_MEMBER( softbox_state::pia1_pc_w )
|
||||
|
||||
static I8255A_INTERFACE( ppi1_intf )
|
||||
{
|
||||
DEVCB_DRIVER_MEMBER(softbox_state, pia1_pa_r),
|
||||
DEVCB_DRIVER_MEMBER(softbox_state, ppi1_pa_r),
|
||||
DEVCB_NULL, // Port A write
|
||||
DEVCB_NULL, // Port B read
|
||||
DEVCB_DRIVER_MEMBER(softbox_state, pia1_pb_w),
|
||||
DEVCB_DRIVER_MEMBER(softbox_state, pia1_pc_r),
|
||||
DEVCB_DRIVER_MEMBER(softbox_state, pia1_pc_w)
|
||||
DEVCB_DRIVER_MEMBER(softbox_state, ppi1_pb_w),
|
||||
DEVCB_DRIVER_MEMBER(softbox_state, ppi1_pc_r),
|
||||
DEVCB_DRIVER_MEMBER(softbox_state, ppi1_pc_w)
|
||||
};
|
||||
|
||||
|
||||
@ -338,4 +338,4 @@ ROM_END
|
||||
//**************************************************************************
|
||||
|
||||
// YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS
|
||||
COMP( 1981, softbox, 0, 0, softbox, softbox, driver_device, 0, "Small Systems Engineering", "SoftBox", GAME_NOT_WORKING | GAME_NO_SOUND_HW )
|
||||
COMP( 1981, softbox, 0, 0, softbox, softbox, driver_device, 0, "Small Systems Engineering", "SoftBox", GAME_NO_SOUND_HW )
|
||||
|
@ -36,15 +36,17 @@ public:
|
||||
required_device<ieee488_device> m_ieee;
|
||||
|
||||
DECLARE_WRITE8_MEMBER( dbrg_w );
|
||||
DECLARE_READ8_MEMBER( pia0_pa_r );
|
||||
DECLARE_WRITE8_MEMBER( pia0_pb_w );
|
||||
DECLARE_READ8_MEMBER( pia1_pa_r );
|
||||
DECLARE_WRITE8_MEMBER( pia1_pb_w );
|
||||
DECLARE_READ8_MEMBER( pia1_pc_r );
|
||||
DECLARE_WRITE8_MEMBER( pia1_pc_w );
|
||||
|
||||
DECLARE_READ8_MEMBER( ppi0_pa_r );
|
||||
DECLARE_WRITE8_MEMBER( ppi0_pb_w );
|
||||
|
||||
DECLARE_READ8_MEMBER( ppi1_pa_r );
|
||||
DECLARE_WRITE8_MEMBER( ppi1_pb_w );
|
||||
DECLARE_READ8_MEMBER( ppi1_pc_r );
|
||||
DECLARE_WRITE8_MEMBER( ppi1_pc_w );
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( fr_w );
|
||||
DECLARE_WRITE_LINE_MEMBER( ft_w );
|
||||
DECLARE_WRITE8_MEMBER( dummy_w );
|
||||
|
||||
enum
|
||||
{
|
||||
|
@ -481,8 +481,10 @@ void c2031_device::ieee488_atn(int state)
|
||||
|
||||
void c2031_device::ieee488_ifc(int state)
|
||||
{
|
||||
if (!state)
|
||||
if (!m_ifc && state)
|
||||
{
|
||||
device_reset();
|
||||
}
|
||||
|
||||
m_ifc = state;
|
||||
}
|
||||
|
@ -74,6 +74,7 @@ protected:
|
||||
int m_nrfd_out; // not ready for data
|
||||
int m_ndac_out; // not data accepted
|
||||
int m_atna; // attention acknowledge
|
||||
int m_ifc;
|
||||
|
||||
// interrupts
|
||||
int m_via0_irq; // VIA #0 interrupt request
|
||||
|
@ -1306,7 +1306,7 @@ inline void c2040_device::update_gcr_data()
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// update_ieee_signals -
|
||||
// read_current_track -
|
||||
//-------------------------------------------------
|
||||
|
||||
inline void c2040_device::read_current_track(int unit)
|
||||
@ -1703,10 +1703,12 @@ void c2040_device::ieee488_atn(int state)
|
||||
|
||||
void c2040_device::ieee488_ifc(int state)
|
||||
{
|
||||
if (!state)
|
||||
if (!m_ifc && state)
|
||||
{
|
||||
device_reset();
|
||||
}
|
||||
|
||||
m_ifc = state;
|
||||
}
|
||||
|
||||
|
||||
|
@ -125,6 +125,7 @@ protected:
|
||||
int m_rfdo; // not ready for data output
|
||||
int m_daco; // not data accepted output
|
||||
int m_atna; // attention acknowledge
|
||||
int m_ifc;
|
||||
|
||||
// track
|
||||
int m_ds; // density select
|
||||
|
@ -465,10 +465,12 @@ void c8280_device::ieee488_atn(int state)
|
||||
|
||||
void c8280_device::ieee488_ifc(int state)
|
||||
{
|
||||
if (!state)
|
||||
if (!m_ifc && state)
|
||||
{
|
||||
device_reset();
|
||||
}
|
||||
|
||||
m_ifc = state;
|
||||
}
|
||||
|
||||
READ8_MEMBER( c8280_device::fk5_r )
|
||||
|
@ -75,6 +75,7 @@ private:
|
||||
int m_rfdo; // not ready for data output
|
||||
int m_daco; // not data accepted output
|
||||
int m_atna; // attention acknowledge
|
||||
int m_ifc;
|
||||
|
||||
UINT8 m_fk5;
|
||||
};
|
||||
|
@ -569,8 +569,10 @@ void base_d9060_device::ieee488_atn(int state)
|
||||
|
||||
void base_d9060_device::ieee488_ifc(int state)
|
||||
{
|
||||
if (!state)
|
||||
if (!m_ifc && state)
|
||||
{
|
||||
device_reset();
|
||||
}
|
||||
|
||||
m_ifc = state;
|
||||
}
|
||||
|
@ -95,6 +95,7 @@ private:
|
||||
int m_rfdo; // not ready for data output
|
||||
int m_daco; // not data accepted output
|
||||
int m_atna; // attention acknowledge
|
||||
int m_ifc;
|
||||
|
||||
// SASI bus
|
||||
int m_enable;
|
||||
|
Loading…
Reference in New Issue
Block a user