mirror of
https://github.com/holub/mame
synced 2025-07-03 00:56:03 +03:00
Removed init_scsibus() from scsibus_device as it was only used for passing the sector size, in reality this is an attribute of the hard drive and not the bus. It now asks the device for the size, however this will go away soon (nw)
This commit is contained in:
parent
ea2666bdc5
commit
feee0c35b8
@ -130,6 +130,7 @@ void scsibus_device::scsi_data_w( UINT8 data )
|
||||
// only one line active.
|
||||
case SCSI_PHASE_BUS_FREE:
|
||||
last_id=scsibus_driveno(data);
|
||||
sectorbytes = devices[last_id]->GetSectorBytes();
|
||||
break;
|
||||
|
||||
case SCSI_PHASE_COMMAND:
|
||||
@ -690,11 +691,6 @@ int scsibus_device::get_scsi_cmd_len(int cbyte)
|
||||
return 6;
|
||||
}
|
||||
|
||||
void scsibus_device::init_scsibus(int _sectorbytes)
|
||||
{
|
||||
sectorbytes = _sectorbytes;
|
||||
}
|
||||
|
||||
scsibus_device::scsibus_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: device_t(mconfig, SCSIBUS, "SCSI bus", tag, owner, clock)
|
||||
{
|
||||
|
@ -118,9 +118,6 @@ public:
|
||||
DECLARE_WRITE_LINE_MEMBER( scsi_ack_w );
|
||||
DECLARE_WRITE_LINE_MEMBER( scsi_rst_w );
|
||||
|
||||
/* Initialisation at machine reset time */
|
||||
void init_scsibus(int sectorbytes);
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
virtual void device_start();
|
||||
|
@ -773,3 +773,8 @@ void scsicd_device::SetDevice( void *_cdrom )
|
||||
{
|
||||
cdrom = (cdrom_file *)_cdrom;
|
||||
}
|
||||
|
||||
int scsicd_device::GetSectorBytes()
|
||||
{
|
||||
return bytes_per_sector;
|
||||
}
|
||||
|
@ -23,6 +23,7 @@ public:
|
||||
virtual void ExecCommand( int *transferLength );
|
||||
virtual void WriteData( UINT8 *data, int dataLength );
|
||||
virtual void ReadData( UINT8 *data, int dataLength );
|
||||
virtual int GetSectorBytes();
|
||||
|
||||
static struct cdrom_interface cd_intf;
|
||||
|
||||
|
@ -128,6 +128,11 @@ int scsidev_device::GetDeviceID()
|
||||
return scsiID;
|
||||
}
|
||||
|
||||
int scsidev_device::GetSectorBytes()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
void scsidev_device::static_set_deviceid( device_t &device, int _scsiID )
|
||||
{
|
||||
scsidev_device &scsidev = downcast<scsidev_device &>(device);
|
||||
|
@ -24,6 +24,7 @@ public:
|
||||
virtual void SetPhase( int phase );
|
||||
virtual void GetPhase( int *phase );
|
||||
virtual int GetDeviceID();
|
||||
virtual int GetSectorBytes();
|
||||
|
||||
// configuration helpers
|
||||
static void static_set_deviceid(device_t &device, int _scsiID);
|
||||
|
@ -324,3 +324,8 @@ void scsihd_device::SetDevice( void *_disk )
|
||||
{
|
||||
disk = (hard_disk_file *)_disk;
|
||||
}
|
||||
|
||||
int scsihd_device::GetSectorBytes()
|
||||
{
|
||||
return sectorbytes;
|
||||
}
|
||||
|
@ -23,6 +23,7 @@ public:
|
||||
virtual void ExecCommand( int *transferLength );
|
||||
virtual void WriteData( UINT8 *data, int dataLength );
|
||||
virtual void ReadData( UINT8 *data, int dataLength );
|
||||
virtual int GetSectorBytes();
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
|
@ -1102,9 +1102,6 @@ void bullet_state::machine_start()
|
||||
|
||||
void bulletf_state::machine_start()
|
||||
{
|
||||
// initialize SASI bus
|
||||
m_scsibus->init_scsibus(512);
|
||||
|
||||
// state saving
|
||||
save_item(NAME(m_fdrdy));
|
||||
save_item(NAME(m_rome));
|
||||
|
@ -1022,9 +1022,6 @@ void v1050_state::machine_start()
|
||||
{
|
||||
address_space &program = m_maincpu->space(AS_PROGRAM);
|
||||
|
||||
// initialize SASI bus
|
||||
m_sasibus->init_scsibus(256);
|
||||
|
||||
// initialize I8214
|
||||
m_pic->etlg_w(1);
|
||||
m_pic->inte_w(1);
|
||||
|
@ -560,8 +560,6 @@ void base_d9060_device::device_start()
|
||||
|
||||
void base_d9060_device::device_reset()
|
||||
{
|
||||
m_sasibus->init_scsibus(256);
|
||||
|
||||
m_maincpu->set_input_line(M6502_SET_OVERFLOW, ASSERT_LINE);
|
||||
m_maincpu->set_input_line(M6502_SET_OVERFLOW, CLEAR_LINE);
|
||||
|
||||
|
@ -557,8 +557,6 @@ void e01_device::device_start()
|
||||
|
||||
void e01_device::device_reset()
|
||||
{
|
||||
m_scsibus->init_scsibus(512);
|
||||
|
||||
m_clk_timer->adjust(attotime::zero, 0, attotime::from_hz(200000));
|
||||
|
||||
membank("bank1")->set_entry(1);
|
||||
|
@ -206,8 +206,6 @@ void luxor_4105_device::device_start()
|
||||
|
||||
void luxor_4105_device::device_reset()
|
||||
{
|
||||
m_sasibus->init_scsibus(512);
|
||||
|
||||
m_cs = 0;
|
||||
m_data = 0;
|
||||
m_dma = 0;
|
||||
|
@ -2423,8 +2423,6 @@ static void hdc_reset(running_machine &machine)
|
||||
rmnimbus_state *state = machine.driver_data<rmnimbus_state>();
|
||||
scsibus_device *hdc = machine.device<scsibus_device>(SCSIBUS_TAG);
|
||||
|
||||
hdc->init_scsibus(512);
|
||||
|
||||
state->m_nimbus_drives.reg410_in=0;
|
||||
state->m_nimbus_drives.reg410_in |= (hdc->get_scsi_line(SCSI_LINE_REQ) ? HDC_REQ_MASK : 0);
|
||||
state->m_nimbus_drives.reg410_in |= (hdc->get_scsi_line(SCSI_LINE_CD) ? HDC_CD_MASK : 0);
|
||||
|
Loading…
Reference in New Issue
Block a user