mirror of
https://github.com/holub/mame
synced 2025-06-07 05:13:46 +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 )
|
// I8255A_INTERFACE( ppi0_intf )
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
READ8_MEMBER( softbox_state::pia0_pa_r )
|
READ8_MEMBER( softbox_state::ppi0_pa_r )
|
||||||
{
|
{
|
||||||
return m_ieee->dio_r() ^ 0xff;
|
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);
|
m_ieee->dio_w(data ^ 0xff);
|
||||||
}
|
}
|
||||||
|
|
||||||
static I8255A_INTERFACE( ppi0_intf )
|
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 A write
|
||||||
DEVCB_NULL, // Port B read
|
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_INPUT_PORT("SW1"), // Port C read
|
||||||
DEVCB_NULL // Port C write
|
DEVCB_NULL // Port C write
|
||||||
};
|
};
|
||||||
@ -129,7 +129,7 @@ static I8255A_INTERFACE( ppi0_intf )
|
|||||||
// I8255A_INTERFACE( ppi1_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;
|
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));
|
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;
|
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 )
|
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 A write
|
||||||
DEVCB_NULL, // Port B read
|
DEVCB_NULL, // Port B read
|
||||||
DEVCB_DRIVER_MEMBER(softbox_state, pia1_pb_w),
|
DEVCB_DRIVER_MEMBER(softbox_state, ppi1_pb_w),
|
||||||
DEVCB_DRIVER_MEMBER(softbox_state, pia1_pc_r),
|
DEVCB_DRIVER_MEMBER(softbox_state, ppi1_pc_r),
|
||||||
DEVCB_DRIVER_MEMBER(softbox_state, pia1_pc_w)
|
DEVCB_DRIVER_MEMBER(softbox_state, ppi1_pc_w)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -338,4 +338,4 @@ ROM_END
|
|||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
|
|
||||||
// YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS
|
// 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;
|
required_device<ieee488_device> m_ieee;
|
||||||
|
|
||||||
DECLARE_WRITE8_MEMBER( dbrg_w );
|
DECLARE_WRITE8_MEMBER( dbrg_w );
|
||||||
DECLARE_READ8_MEMBER( pia0_pa_r );
|
|
||||||
DECLARE_WRITE8_MEMBER( pia0_pb_w );
|
DECLARE_READ8_MEMBER( ppi0_pa_r );
|
||||||
DECLARE_READ8_MEMBER( pia1_pa_r );
|
DECLARE_WRITE8_MEMBER( ppi0_pb_w );
|
||||||
DECLARE_WRITE8_MEMBER( pia1_pb_w );
|
|
||||||
DECLARE_READ8_MEMBER( pia1_pc_r );
|
DECLARE_READ8_MEMBER( ppi1_pa_r );
|
||||||
DECLARE_WRITE8_MEMBER( pia1_pc_w );
|
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( fr_w );
|
||||||
DECLARE_WRITE_LINE_MEMBER( ft_w );
|
DECLARE_WRITE_LINE_MEMBER( ft_w );
|
||||||
DECLARE_WRITE8_MEMBER( dummy_w );
|
|
||||||
|
|
||||||
enum
|
enum
|
||||||
{
|
{
|
||||||
|
@ -481,8 +481,10 @@ void c2031_device::ieee488_atn(int state)
|
|||||||
|
|
||||||
void c2031_device::ieee488_ifc(int state)
|
void c2031_device::ieee488_ifc(int state)
|
||||||
{
|
{
|
||||||
if (!state)
|
if (!m_ifc && state)
|
||||||
{
|
{
|
||||||
device_reset();
|
device_reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_ifc = state;
|
||||||
}
|
}
|
||||||
|
@ -74,6 +74,7 @@ protected:
|
|||||||
int m_nrfd_out; // not ready for data
|
int m_nrfd_out; // not ready for data
|
||||||
int m_ndac_out; // not data accepted
|
int m_ndac_out; // not data accepted
|
||||||
int m_atna; // attention acknowledge
|
int m_atna; // attention acknowledge
|
||||||
|
int m_ifc;
|
||||||
|
|
||||||
// interrupts
|
// interrupts
|
||||||
int m_via0_irq; // VIA #0 interrupt request
|
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)
|
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)
|
void c2040_device::ieee488_ifc(int state)
|
||||||
{
|
{
|
||||||
if (!state)
|
if (!m_ifc && state)
|
||||||
{
|
{
|
||||||
device_reset();
|
device_reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_ifc = state;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -125,6 +125,7 @@ protected:
|
|||||||
int m_rfdo; // not ready for data output
|
int m_rfdo; // not ready for data output
|
||||||
int m_daco; // not data accepted output
|
int m_daco; // not data accepted output
|
||||||
int m_atna; // attention acknowledge
|
int m_atna; // attention acknowledge
|
||||||
|
int m_ifc;
|
||||||
|
|
||||||
// track
|
// track
|
||||||
int m_ds; // density select
|
int m_ds; // density select
|
||||||
|
@ -465,10 +465,12 @@ void c8280_device::ieee488_atn(int state)
|
|||||||
|
|
||||||
void c8280_device::ieee488_ifc(int state)
|
void c8280_device::ieee488_ifc(int state)
|
||||||
{
|
{
|
||||||
if (!state)
|
if (!m_ifc && state)
|
||||||
{
|
{
|
||||||
device_reset();
|
device_reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_ifc = state;
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER( c8280_device::fk5_r )
|
READ8_MEMBER( c8280_device::fk5_r )
|
||||||
|
@ -75,6 +75,7 @@ private:
|
|||||||
int m_rfdo; // not ready for data output
|
int m_rfdo; // not ready for data output
|
||||||
int m_daco; // not data accepted output
|
int m_daco; // not data accepted output
|
||||||
int m_atna; // attention acknowledge
|
int m_atna; // attention acknowledge
|
||||||
|
int m_ifc;
|
||||||
|
|
||||||
UINT8 m_fk5;
|
UINT8 m_fk5;
|
||||||
};
|
};
|
||||||
|
@ -569,8 +569,10 @@ void base_d9060_device::ieee488_atn(int state)
|
|||||||
|
|
||||||
void base_d9060_device::ieee488_ifc(int state)
|
void base_d9060_device::ieee488_ifc(int state)
|
||||||
{
|
{
|
||||||
if (!state)
|
if (!m_ifc && state)
|
||||||
{
|
{
|
||||||
device_reset();
|
device_reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_ifc = state;
|
||||||
}
|
}
|
||||||
|
@ -95,6 +95,7 @@ private:
|
|||||||
int m_rfdo; // not ready for data output
|
int m_rfdo; // not ready for data output
|
||||||
int m_daco; // not data accepted output
|
int m_daco; // not data accepted output
|
||||||
int m_atna; // attention acknowledge
|
int m_atna; // attention acknowledge
|
||||||
|
int m_ifc;
|
||||||
|
|
||||||
// SASI bus
|
// SASI bus
|
||||||
int m_enable;
|
int m_enable;
|
||||||
|
Loading…
Reference in New Issue
Block a user