(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:
Curt Coder 2013-05-29 07:05:38 +00:00
parent 608196c112
commit 8f7c19fe24
10 changed files with 39 additions and 25 deletions

View File

@ -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 )

View File

@ -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
{

View File

@ -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;
}

View File

@ -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

View File

@ -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;
}

View File

@ -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

View File

@ -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 )

View File

@ -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;
};

View File

@ -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;
}

View File

@ -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;