summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/scsi
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2017-05-07 23:18:47 +1000
committer Vas Crabb <vas@vastheman.com>2017-05-14 21:44:11 +1000
commit0f0d39ef81562c75e79176dd3bebb1e491ca39d5 (patch)
tree201cee7fdf55ee800f83859a92efd2cfe66cf2b3 /src/devices/bus/scsi
parente6c4be2b4d71c7a6c95be0bae111eb416ff0f9e7 (diff)
Move static data out of devices into the device types. This is a significant change, so please pay attention.
The core changes are: * Short name, full name and source file are no longer members of device_t, they are part of the device type * MACHINE_COFIG_START no longer needs a driver class * MACHINE_CONFIG_DERIVED_CLASS is no longer necessary * Specify the state class you want in the GAME/COMP/CONS line * The compiler will work out the base class where the driver init member is declared * There is one static device type object per driver rather than one per machine configuration Use DECLARE_DEVICE_TYPE or DECLARE_DEVICE_TYPE_NS to declare device type. * DECLARE_DEVICE_TYPE forward-declares teh device type and class, and declares extern object finders. * DECLARE_DEVICE_TYPE_NS is for devices classes in namespaces - it doesn't forward-declare the device type. Use DEFINE_DEVICE_TYPE or DEFINE_DEVICE_TYPE_NS to define device types. * These macros declare storage for the static data, and instantiate the device type and device finder templates. The rest of the changes are mostly just moving stuff out of headers that shouldn't be there, renaming stuff for consistency, and scoping stuff down where appropriate. Things I've actually messed with substantially: * More descriptive names for a lot of devices * Untangled the fantasy sound from the driver state, which necessitates breaking up sound/flip writes * Changed DECO BSMT2000 ready callback into a device delegate * Untangled Microprose 3D noise from driver state * Used object finders for CoCo multipak, KC85 D002, and Irem sound subdevices * Started to get TI-99 stuff out of the TI-990 directory and arrange bus devices properly * Started to break out common parts of Samsung ARM SoC devices * Turned some of FM, SID, SCSP DSP, EPIC12 and Voodoo cores into something resmbling C++ * Tried to make Z180 table allocation/setup a bit safer * Converted generic keyboard/terminal to not use WRITE8 - space/offset aren't relevant * Dynamically allocate generic terminal buffer so derived devices (e.g. teleprinter) can specify size * Imporved encapsulation of Z80DART channels * Refactored the SPC7110 bit table generator loop to make it more readable * Added wrappers for SNES PPU operations so members can be made protected * Factored out some boilerplate for YM chips with PSG * toaplan2 gfx * stic/intv resolution * Video System video * Out Run/Y-board sprite alignment * GIC video hookup * Amstrad CPC ROM box members * IQ151 ROM cart region * MSX cart IRQ callback resolution time * SMS passthrough control devices starting subslots I've smoke-tested several drivers, but I've probably missed something. Things I've missed will likely blow up spectacularly with failure to bind errors and the like. Let me know if there's more subtle breakage (could have happened in FM or Voodoo). And can everyone please, please try to keep stuff clean. In particular, please stop polluting the global namespace. Keep things out of headers that don't need to be there, and use things that can be scoped down rather than macros. It feels like an uphill battle trying to get this stuff under control while more of it's added.
Diffstat (limited to 'src/devices/bus/scsi')
-rw-r--r--src/devices/bus/scsi/acb4070.cpp4
-rw-r--r--src/devices/bus/scsi/acb4070.h10
-rw-r--r--src/devices/bus/scsi/cdu76s.cpp4
-rw-r--r--src/devices/bus/scsi/cdu76s.h10
-rw-r--r--src/devices/bus/scsi/d9060hd.cpp4
-rw-r--r--src/devices/bus/scsi/d9060hd.h10
-rw-r--r--src/devices/bus/scsi/omti5100.cpp8
-rw-r--r--src/devices/bus/scsi/omti5100.h10
-rw-r--r--src/devices/bus/scsi/pc9801_sasi.cpp4
-rw-r--r--src/devices/bus/scsi/pc9801_sasi.h10
-rw-r--r--src/devices/bus/scsi/s1410.cpp4
-rw-r--r--src/devices/bus/scsi/s1410.h12
-rw-r--r--src/devices/bus/scsi/sa1403d.cpp4
-rw-r--r--src/devices/bus/scsi/sa1403d.h10
-rw-r--r--src/devices/bus/scsi/scsi.cpp94
-rw-r--r--src/devices/bus/scsi/scsi.h154
-rw-r--r--src/devices/bus/scsi/scsicd.cpp8
-rw-r--r--src/devices/bus/scsi/scsicd.h13
-rw-r--r--src/devices/bus/scsi/scsihd.cpp8
-rw-r--r--src/devices/bus/scsi/scsihd.h15
-rw-r--r--src/devices/bus/scsi/scsihle.cpp4
-rw-r--r--src/devices/bus/scsi/scsihle.h13
22 files changed, 209 insertions, 204 deletions
diff --git a/src/devices/bus/scsi/acb4070.cpp b/src/devices/bus/scsi/acb4070.cpp
index ddaccb9422f..0b9e67b438f 100644
--- a/src/devices/bus/scsi/acb4070.cpp
+++ b/src/devices/bus/scsi/acb4070.cpp
@@ -9,10 +9,10 @@
#include "acb4070.h"
// device type definition
-const device_type ACB4070 = device_creator<acb4070_device>;
+DEFINE_DEVICE_TYPE(ACB4070, acb4070_device, "acb4070", "ACB4070")
acb4070_device::acb4070_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : scsihd_device(mconfig, ACB4070, "ACB4070", tag, owner, clock, "acb4070", __FILE__)
+ : scsihd_device(mconfig, ACB4070, tag, owner, clock)
{
}
diff --git a/src/devices/bus/scsi/acb4070.h b/src/devices/bus/scsi/acb4070.h
index b983aad0477..848798152a5 100644
--- a/src/devices/bus/scsi/acb4070.h
+++ b/src/devices/bus/scsi/acb4070.h
@@ -1,9 +1,9 @@
// license:BSD-3-Clause
// copyright-holders:smf
-#pragma once
+#ifndef MAME_BUS_SCSI_ACB4070_H
+#define MAME_BUS_SCSI_ACB4070_H
-#ifndef __ACB4070__
-#define __ACB4070__
+#pragma once
#include "scsihd.h"
@@ -42,6 +42,6 @@ private:
};
// device type definition
-extern const device_type ACB4070;
+DECLARE_DEVICE_TYPE(ACB4070, acb4070_device)
-#endif
+#endif // MAME_BUS_SCSI_ACB4070_H
diff --git a/src/devices/bus/scsi/cdu76s.cpp b/src/devices/bus/scsi/cdu76s.cpp
index f0de47e0da3..231445f1077 100644
--- a/src/devices/bus/scsi/cdu76s.cpp
+++ b/src/devices/bus/scsi/cdu76s.cpp
@@ -40,9 +40,9 @@ void sony_cdu76s_device::ReadData( uint8_t *data, int dataLength )
}
// device type definition
-const device_type CDU76S = device_creator<sony_cdu76s_device>;
+DEFINE_DEVICE_TYPE(CDU76S, sony_cdu76s_device, "cdu76s", "Sony CDU-76S")
sony_cdu76s_device::sony_cdu76s_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
- scsicd_device(mconfig, CDU76S, "Sony CDU-76S", tag, owner, clock, "cdu76s", __FILE__)
+ scsicd_device(mconfig, CDU76S, tag, owner, clock)
{
}
diff --git a/src/devices/bus/scsi/cdu76s.h b/src/devices/bus/scsi/cdu76s.h
index 0449254b958..2e91525bfdc 100644
--- a/src/devices/bus/scsi/cdu76s.h
+++ b/src/devices/bus/scsi/cdu76s.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_BUS_SCSI_CDU76S_H
+#define MAME_BUS_SCSI_CDU76S_H
-#ifndef __CDU76S_H__
-#define __CDU76S_H__
+#pragma once
#include "scsicd.h"
#include "machine/t10mmc.h"
@@ -26,6 +26,6 @@ public:
};
// device type definition
-extern const device_type CDU76S;
+DECLARE_DEVICE_TYPE(CDU76S, sony_cdu76s_device)
-#endif
+#endif // MAME_BUS_SCSI_CDU76S_H
diff --git a/src/devices/bus/scsi/d9060hd.cpp b/src/devices/bus/scsi/d9060hd.cpp
index 3f3b4a70ce1..1d7ee7e503d 100644
--- a/src/devices/bus/scsi/d9060hd.cpp
+++ b/src/devices/bus/scsi/d9060hd.cpp
@@ -9,10 +9,10 @@
#include "d9060hd.h"
// device type definition
-const device_type D9060HD = device_creator<d9060hd_device>;
+DEFINE_DEVICE_TYPE(D9060HD, d9060hd_device, "d9060hd", "D9060HD")
d9060hd_device::d9060hd_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : scsihd_device(mconfig, D9060HD, "D9060HD", tag, owner, clock, "d9060hd", __FILE__)
+ : scsihd_device(mconfig, D9060HD, tag, owner, clock)
{
}
diff --git a/src/devices/bus/scsi/d9060hd.h b/src/devices/bus/scsi/d9060hd.h
index 979538a0b14..3e7140e74cd 100644
--- a/src/devices/bus/scsi/d9060hd.h
+++ b/src/devices/bus/scsi/d9060hd.h
@@ -1,9 +1,9 @@
// license:BSD-3-Clause
// copyright-holders:smf
-#pragma once
+#ifndef MAME_BUS_SCSI_D9060HD_H
+#define MAME_BUS_SCSI_D9060HD_H
-#ifndef __D9060HD__
-#define __D9060HD__
+#pragma once
#include "scsihd.h"
@@ -17,6 +17,6 @@ public:
};
// device type definition
-extern const device_type D9060HD;
+DECLARE_DEVICE_TYPE(D9060HD, d9060hd_device)
-#endif
+#endif // MAME_BUS_SCSI_D9060HD_H
diff --git a/src/devices/bus/scsi/omti5100.cpp b/src/devices/bus/scsi/omti5100.cpp
index 3dfcc783341..07f0bb7e881 100644
--- a/src/devices/bus/scsi/omti5100.cpp
+++ b/src/devices/bus/scsi/omti5100.cpp
@@ -10,7 +10,7 @@
#define OMTI_READ_DATA_BUFFER 0xec
#define OMTI_ASSIGN_DISK_PARAM 0xc2
-const device_type OMTI5100 = device_creator<omti5100_device>;
+DEFINE_DEVICE_TYPE(OMTI5100, omti5100_device, "omti5100", "OMTI 5100")
#if 0
ROM_START( omti5100 )
@@ -25,9 +25,9 @@ const tiny_rom_entry *omti5100_device::device_rom_region() const
#endif
omti5100_device::omti5100_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : scsihd_device(mconfig, OMTI5100, "OMTI 5100", tag, owner, clock, "omti5100", __FILE__),
- m_image0(*this, "image0"),
- m_image1(*this, "image1")
+ : scsihd_device(mconfig, OMTI5100, tag, owner, clock)
+ , m_image0(*this, "image0")
+ , m_image1(*this, "image1")
{
}
diff --git a/src/devices/bus/scsi/omti5100.h b/src/devices/bus/scsi/omti5100.h
index 24c1b74ddc3..c17d5bc4558 100644
--- a/src/devices/bus/scsi/omti5100.h
+++ b/src/devices/bus/scsi/omti5100.h
@@ -1,7 +1,7 @@
// license:BSD-3-Clause
// copyright-holders:smf
-#ifndef OMTI5100_H_
-#define OMTI5100_H_
+#ifndef MAME_BUS_SCSI_OMTI5100_H
+#define MAME_BUS_SCSI_OMTI5100_H
#include "scsi.h"
#include "scsihd.h"
@@ -18,6 +18,8 @@ public:
virtual void ExecCommand() override;
virtual void ReadData( uint8_t *data, int dataLength ) override;
virtual void WriteData( uint8_t *data, int dataLength ) override;
+
+protected:
void device_start() override;
private:
@@ -26,6 +28,6 @@ private:
hard_disk_info m_param[2];
};
-extern const device_type OMTI5100;
+DECLARE_DEVICE_TYPE(OMTI5100, omti5100_device)
-#endif /* OMTI5100_H_ */
+#endif // MAME_BUS_SCSI_OMTI5100_H
diff --git a/src/devices/bus/scsi/pc9801_sasi.cpp b/src/devices/bus/scsi/pc9801_sasi.cpp
index 29d30b48589..b7c93f98094 100644
--- a/src/devices/bus/scsi/pc9801_sasi.cpp
+++ b/src/devices/bus/scsi/pc9801_sasi.cpp
@@ -5,10 +5,10 @@
#define SASI_CMD_SPECIFY 0xc2 // according to x68k_hdc.c
-const device_type PC9801_SASI = device_creator<pc9801_sasi_device>;
+DEFINE_DEVICE_TYPE(PC9801_SASI, pc9801_sasi_device, "pc9801_sasi", "PC9801 SASI Controller")
pc9801_sasi_device::pc9801_sasi_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : scsihd_device(mconfig, PC9801_SASI, "PC-9801 SASI Controller", tag, owner, clock, "pc9801_sasi", __FILE__)
+ : scsihd_device(mconfig, PC9801_SASI, tag, owner, clock)
{
}
diff --git a/src/devices/bus/scsi/pc9801_sasi.h b/src/devices/bus/scsi/pc9801_sasi.h
index 1cbd9eb72af..773de463c61 100644
--- a/src/devices/bus/scsi/pc9801_sasi.h
+++ b/src/devices/bus/scsi/pc9801_sasi.h
@@ -1,11 +1,11 @@
// license:BSD-3-Clause
// copyright-holders:smf
-#ifndef PC9801_SASI_H_
-#define PC9801_SASI_H_
+#ifndef MAME_BUS_SCSI_PC9801_SASI_H
+#define MAME_BUS_SCSI_PC9801_SASI_H
#include "scsihd.h"
-class pc9801_sasi_device : public scsihd_device
+class pc9801_sasi_device : public scsihd_device
{
public:
// construction/destruction
@@ -15,6 +15,6 @@ public:
};
// device type definition
-extern const device_type PC9801_SASI;
+DECLARE_DEVICE_TYPE(PC9801_SASI, pc9801_sasi_device)
-#endif /* PC9801_SASI_H_ */
+#endif // MAME_BUS_SCSI_PC9801_SASI_H
diff --git a/src/devices/bus/scsi/s1410.cpp b/src/devices/bus/scsi/s1410.cpp
index df49859b844..a4a8a65c047 100644
--- a/src/devices/bus/scsi/s1410.cpp
+++ b/src/devices/bus/scsi/s1410.cpp
@@ -102,7 +102,7 @@ Notes:
// DEVICE DEFINITIONS
//**************************************************************************
-const device_type S1410 = device_creator<s1410_device>;
+DEFINE_DEVICE_TYPE(S1410, s1410_device, "s1410", "Xebec S1410")
//-------------------------------------------------
// ROM( s1410 )
@@ -194,7 +194,7 @@ machine_config_constructor s1410_device::device_mconfig_additions() const
//-------------------------------------------------
s1410_device::s1410_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : scsihd_device(mconfig, S1410, "Xebec S1410", tag, owner, clock, "s1410", __FILE__)
+ : scsihd_device(mconfig, S1410, tag, owner, clock)
{
}
diff --git a/src/devices/bus/scsi/s1410.h b/src/devices/bus/scsi/s1410.h
index d76686529bf..456f55a6ea2 100644
--- a/src/devices/bus/scsi/s1410.h
+++ b/src/devices/bus/scsi/s1410.h
@@ -6,14 +6,14 @@
**********************************************************************/
-#pragma once
+#ifndef MAME_BUS_SCSI_S1410_H
+#define MAME_BUS_SCSI_S1410_H
-#ifndef __S1410__
-#define __S1410__
+#pragma once
#include "scsihd.h"
-class s1410_device : public scsihd_device
+class s1410_device : public scsihd_device
{
public:
// construction/destruction
@@ -30,6 +30,6 @@ public:
// device type definition
-extern const device_type S1410;
+DECLARE_DEVICE_TYPE(S1410, s1410_device)
-#endif
+#endif // MAME_BUS_SCSI_S1410_H
diff --git a/src/devices/bus/scsi/sa1403d.cpp b/src/devices/bus/scsi/sa1403d.cpp
index 76587f9f0ab..f8f0d7041b7 100644
--- a/src/devices/bus/scsi/sa1403d.cpp
+++ b/src/devices/bus/scsi/sa1403d.cpp
@@ -15,7 +15,7 @@
// DEVICE DEFINITIONS
//**************************************************************************
-const device_type SA1403D = device_creator<sa1403d_device>;
+DEFINE_DEVICE_TYPE(SA1403D, sa1403d_device, "sa1403d", "Shugart SA1403D")
//-------------------------------------------------
@@ -124,7 +124,7 @@ ioport_constructor sa1403d_device::device_input_ports() const
//-------------------------------------------------
sa1403d_device::sa1403d_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : scsihd_device(mconfig, SA1403D, "Shugart SA1403D", tag, owner, clock, "sa1403d", __FILE__)
+ : scsihd_device(mconfig, SA1403D, tag, owner, clock)
{
}
diff --git a/src/devices/bus/scsi/sa1403d.h b/src/devices/bus/scsi/sa1403d.h
index 3299527a8f8..ea3d37d3d02 100644
--- a/src/devices/bus/scsi/sa1403d.h
+++ b/src/devices/bus/scsi/sa1403d.h
@@ -6,10 +6,10 @@
**********************************************************************/
-#pragma once
+#ifndef MAME_BUS_SCSI_SA1403D_H
+#define MAME_BUS_SCSI_SA1403D_H
-#ifndef __SA1403D__
-#define __SA1403D__
+#pragma once
#include "scsihd.h"
#include "imagedev/harddriv.h"
@@ -31,6 +31,6 @@ public:
// device type definition
-extern const device_type SA1403D;
+DECLARE_DEVICE_TYPE(SA1403D, sa1403d_device)
-#endif
+#endif // MAME_BUS_SCSI_SA1403D_H
diff --git a/src/devices/bus/scsi/scsi.cpp b/src/devices/bus/scsi/scsi.cpp
index 73118ee35ed..5cbd6eaf060 100644
--- a/src/devices/bus/scsi/scsi.cpp
+++ b/src/devices/bus/scsi/scsi.cpp
@@ -4,8 +4,8 @@
#include "emu.h"
#include "scsi.h"
-SCSI_PORT_DEVICE::SCSI_PORT_DEVICE(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : device_t(mconfig, SCSI_PORT, "SCSI Port", tag, owner, clock, "scsi", __FILE__),
+scsi_port_device::scsi_port_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
+ : device_t(mconfig, SCSI_PORT, tag, owner, clock),
m_bsy_handler(*this),
m_sel_handler(*this),
m_cd_handler(*this),
@@ -71,12 +71,12 @@ static MACHINE_CONFIG_FRAGMENT( scsi_port )
MCFG_DEVICE_ADD( SCSI_PORT_DEVICE7, SCSI_PORT_SLOT, 0 )
MACHINE_CONFIG_END
-machine_config_constructor SCSI_PORT_DEVICE::device_mconfig_additions() const
+machine_config_constructor scsi_port_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( scsi_port );
}
-void SCSI_PORT_DEVICE::device_start()
+void scsi_port_device::device_start()
{
const char *deviceName[] =
{
@@ -93,7 +93,7 @@ void SCSI_PORT_DEVICE::device_start()
for (int i = 0; i < 7; i++)
{
- SCSI_PORT_SLOT_device *slot = subdevice<SCSI_PORT_SLOT_device>(deviceName[i]);
+ scsi_port_slot_device *slot = subdevice<scsi_port_slot_device>(deviceName[i]);
m_slot[i] = slot;
if (slot != nullptr)
@@ -138,7 +138,7 @@ void SCSI_PORT_DEVICE::device_start()
m_rst_handler(0);
}
-void SCSI_PORT_DEVICE::update_bsy()
+void scsi_port_device::update_bsy()
{
int bsy = m_bsy_in;
for (int i = 0; i < m_device_count; i++)
@@ -160,7 +160,7 @@ void SCSI_PORT_DEVICE::update_bsy()
}
}
-void SCSI_PORT_DEVICE::update_sel()
+void scsi_port_device::update_sel()
{
int sel = m_sel_in;
for (int i = 0; i < m_device_count; i++)
@@ -182,7 +182,7 @@ void SCSI_PORT_DEVICE::update_sel()
}
}
-void SCSI_PORT_DEVICE::update_cd()
+void scsi_port_device::update_cd()
{
int cd = m_cd_in;
for (int i = 0; i < m_device_count; i++)
@@ -204,7 +204,7 @@ void SCSI_PORT_DEVICE::update_cd()
}
}
-void SCSI_PORT_DEVICE::update_io()
+void scsi_port_device::update_io()
{
int io = m_io_in;
for (int i = 0; i < m_device_count; i++)
@@ -226,7 +226,7 @@ void SCSI_PORT_DEVICE::update_io()
}
}
-void SCSI_PORT_DEVICE::update_msg()
+void scsi_port_device::update_msg()
{
int msg = m_msg_in;
for (int i = 0; i < m_device_count; i++)
@@ -248,7 +248,7 @@ void SCSI_PORT_DEVICE::update_msg()
}
}
-void SCSI_PORT_DEVICE::update_req()
+void scsi_port_device::update_req()
{
int req = m_req_in;
for (int i = 0; i < m_device_count; i++)
@@ -270,7 +270,7 @@ void SCSI_PORT_DEVICE::update_req()
}
}
-void SCSI_PORT_DEVICE::update_ack()
+void scsi_port_device::update_ack()
{
int ack = m_ack_in;
for (int i = 0; i < m_device_count; i++)
@@ -292,7 +292,7 @@ void SCSI_PORT_DEVICE::update_ack()
}
}
-void SCSI_PORT_DEVICE::update_atn()
+void scsi_port_device::update_atn()
{
int atn = m_atn_in;
for (int i = 0; i < m_device_count; i++)
@@ -314,7 +314,7 @@ void SCSI_PORT_DEVICE::update_atn()
}
}
-void SCSI_PORT_DEVICE::update_rst()
+void scsi_port_device::update_rst()
{
int rst = m_rst_in;
for (int i = 0; i < m_device_count; i++)
@@ -336,7 +336,7 @@ void SCSI_PORT_DEVICE::update_rst()
}
}
-void SCSI_PORT_DEVICE::update_data0()
+void scsi_port_device::update_data0()
{
int data0 = m_data0_in;
for (int i = 0; i < m_device_count; i++)
@@ -358,7 +358,7 @@ void SCSI_PORT_DEVICE::update_data0()
}
}
-void SCSI_PORT_DEVICE::update_data1()
+void scsi_port_device::update_data1()
{
int data1 = m_data1_in;
for (int i = 0; i < m_device_count; i++)
@@ -380,7 +380,7 @@ void SCSI_PORT_DEVICE::update_data1()
}
}
-void SCSI_PORT_DEVICE::update_data2()
+void scsi_port_device::update_data2()
{
int data2 = m_data2_in;
for (int i = 0; i < m_device_count; i++)
@@ -402,7 +402,7 @@ void SCSI_PORT_DEVICE::update_data2()
}
}
-void SCSI_PORT_DEVICE::update_data3()
+void scsi_port_device::update_data3()
{
int data3 = m_data3_in;
for (int i = 0; i < m_device_count; i++)
@@ -424,7 +424,7 @@ void SCSI_PORT_DEVICE::update_data3()
}
}
-void SCSI_PORT_DEVICE::update_data4()
+void scsi_port_device::update_data4()
{
int data4 = m_data4_in;
for (int i = 0; i < m_device_count; i++)
@@ -446,7 +446,7 @@ void SCSI_PORT_DEVICE::update_data4()
}
}
-void SCSI_PORT_DEVICE::update_data5()
+void scsi_port_device::update_data5()
{
int data5 = m_data5_in;
for (int i = 0; i < m_device_count; i++)
@@ -468,7 +468,7 @@ void SCSI_PORT_DEVICE::update_data5()
}
}
-void SCSI_PORT_DEVICE::update_data6()
+void scsi_port_device::update_data6()
{
int data6 = m_data6_in;
for (int i = 0; i < m_device_count; i++)
@@ -490,7 +490,7 @@ void SCSI_PORT_DEVICE::update_data6()
}
}
-void SCSI_PORT_DEVICE::update_data7()
+void scsi_port_device::update_data7()
{
int data7 = m_data7_in;
for (int i = 0; i < m_device_count; i++)
@@ -512,7 +512,7 @@ void SCSI_PORT_DEVICE::update_data7()
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_bsy )
+WRITE_LINE_MEMBER( scsi_port_device::write_bsy )
{
if (m_bsy_in != state)
{
@@ -521,7 +521,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_bsy )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_sel )
+WRITE_LINE_MEMBER( scsi_port_device::write_sel )
{
if (m_sel_in != state)
{
@@ -530,7 +530,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_sel )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_cd )
+WRITE_LINE_MEMBER( scsi_port_device::write_cd )
{
if (m_cd_in != state)
{
@@ -539,7 +539,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_cd )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_io )
+WRITE_LINE_MEMBER( scsi_port_device::write_io )
{
if (m_io_in != state)
{
@@ -548,7 +548,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_io )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_msg )
+WRITE_LINE_MEMBER( scsi_port_device::write_msg )
{
if (m_msg_in != state)
{
@@ -557,7 +557,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_msg )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_req )
+WRITE_LINE_MEMBER( scsi_port_device::write_req )
{
if (m_req_in != state)
{
@@ -566,7 +566,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_req )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_ack )
+WRITE_LINE_MEMBER( scsi_port_device::write_ack )
{
if (m_ack_in != state)
{
@@ -575,7 +575,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_ack )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_atn )
+WRITE_LINE_MEMBER( scsi_port_device::write_atn )
{
if (m_atn_in != state)
{
@@ -584,7 +584,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_atn )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_rst )
+WRITE_LINE_MEMBER( scsi_port_device::write_rst )
{
if (m_rst_in != state)
{
@@ -593,7 +593,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_rst )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data0 )
+WRITE_LINE_MEMBER( scsi_port_device::write_data0 )
{
if (m_data0_in != state)
{
@@ -602,7 +602,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data0 )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data1 )
+WRITE_LINE_MEMBER( scsi_port_device::write_data1 )
{
if (m_data1_in != state)
{
@@ -611,7 +611,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data1 )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data2 )
+WRITE_LINE_MEMBER( scsi_port_device::write_data2 )
{
if (m_data2_in != state)
{
@@ -620,7 +620,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data2 )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data3 )
+WRITE_LINE_MEMBER( scsi_port_device::write_data3 )
{
if (m_data3_in != state)
{
@@ -629,7 +629,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data3 )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data4 )
+WRITE_LINE_MEMBER( scsi_port_device::write_data4 )
{
if (m_data4_in != state)
{
@@ -638,7 +638,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data4 )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data5 )
+WRITE_LINE_MEMBER( scsi_port_device::write_data5 )
{
if (m_data5_in != state)
{
@@ -647,7 +647,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data5 )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data6 )
+WRITE_LINE_MEMBER( scsi_port_device::write_data6 )
{
if (m_data6_in != state)
{
@@ -656,7 +656,7 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data6 )
}
}
-WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data7 )
+WRITE_LINE_MEMBER( scsi_port_device::write_data7 )
{
if (m_data7_in != state)
{
@@ -665,10 +665,10 @@ WRITE_LINE_MEMBER( SCSI_PORT_DEVICE::write_data7 )
}
}
-const device_type SCSI_PORT = device_creator<SCSI_PORT_DEVICE>;
+DEFINE_DEVICE_TYPE(SCSI_PORT, scsi_port_device, "scsi", "SCSI Port")
-SCSI_PORT_SLOT_device::SCSI_PORT_SLOT_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
- device_t(mconfig, SCSI_PORT_SLOT, "SCSI Connector", tag, owner, clock, "scsi_slot", __FILE__),
+scsi_port_slot_device::scsi_port_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
+ device_t(mconfig, SCSI_PORT_SLOT, tag, owner, clock),
device_slot_interface(mconfig, *this),
m_dev(nullptr),
m_bsy(0),
@@ -688,24 +688,24 @@ SCSI_PORT_SLOT_device::SCSI_PORT_SLOT_device(const machine_config &mconfig, cons
m_data6(0),
m_data7(0)
{
- m_port = dynamic_cast<SCSI_PORT_DEVICE *>(device().owner());
+ m_port = dynamic_cast<scsi_port_device *>(device().owner());
}
-void SCSI_PORT_SLOT_device::device_config_complete()
+void scsi_port_slot_device::device_config_complete()
{
m_dev = dynamic_cast<scsi_port_interface *>(get_card_device());
}
-void SCSI_PORT_SLOT_device::device_start()
+void scsi_port_slot_device::device_start()
{
}
-const device_type SCSI_PORT_SLOT = device_creator<SCSI_PORT_SLOT_device>;
+DEFINE_DEVICE_TYPE(SCSI_PORT_SLOT, scsi_port_slot_device, "scsi_slot", "SCSI Connector")
scsi_port_interface::scsi_port_interface(const machine_config &mconfig, device_t &device)
: device_slot_card_interface(mconfig, device)
{
- m_slot = dynamic_cast<SCSI_PORT_SLOT_device *>(device.owner());
+ m_slot = dynamic_cast<scsi_port_slot_device *>(device.owner());
}
scsi_port_interface::~scsi_port_interface()
diff --git a/src/devices/bus/scsi/scsi.h b/src/devices/bus/scsi/scsi.h
index af362522c2d..7868b7f3777 100644
--- a/src/devices/bus/scsi/scsi.h
+++ b/src/devices/bus/scsi/scsi.h
@@ -1,10 +1,10 @@
// license:BSD-3-Clause
// copyright-holders:smf
-#pragma once
+#ifndef MAME_BUS_SCSI_SCSI_H
+#define MAME_BUS_SCSI_SCSI_H
-#ifndef _SCSI_H_
-#define _SCSI_H_
+#pragma once
#include "machine/buffer.h"
#include "machine/latch.h"
@@ -18,66 +18,66 @@
#define SCSI_PORT_DEVICE7 "7"
#define MCFG_SCSI_BSY_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_bsy_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_bsy_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_SEL_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_sel_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_sel_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_CD_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_cd_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_cd_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_IO_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_io_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_io_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_MSG_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_msg_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_msg_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_REQ_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_req_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_req_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_ACK_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_ack_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_ack_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_ATN_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_atn_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_atn_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_RST_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_rst_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_rst_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_DATA0_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_data0_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_data0_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_DATA1_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_data1_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_data1_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_DATA2_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_data2_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_data2_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_DATA3_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_data3_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_data3_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_DATA4_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_data4_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_data4_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_DATA5_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_data5_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_data5_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_DATA6_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_data6_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_data6_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_DATA7_HANDLER(_devcb) \
- devcb = &SCSI_PORT_DEVICE::set_data7_handler(*device, DEVCB_##_devcb);
+ devcb = &scsi_port_device::set_data7_handler(*device, DEVCB_##_devcb);
#define MCFG_SCSI_OUTPUT_LATCH_ADD(_tag, scsi_port_tag) \
MCFG_DEVICE_ADD(_tag, OUTPUT_LATCH, 0) \
- MCFG_OUTPUT_LATCH_BIT0_HANDLER(DEVWRITELINE(scsi_port_tag, SCSI_PORT_DEVICE, write_data0)) \
- MCFG_OUTPUT_LATCH_BIT1_HANDLER(DEVWRITELINE(scsi_port_tag, SCSI_PORT_DEVICE, write_data1)) \
- MCFG_OUTPUT_LATCH_BIT2_HANDLER(DEVWRITELINE(scsi_port_tag, SCSI_PORT_DEVICE, write_data2)) \
- MCFG_OUTPUT_LATCH_BIT3_HANDLER(DEVWRITELINE(scsi_port_tag, SCSI_PORT_DEVICE, write_data3)) \
- MCFG_OUTPUT_LATCH_BIT4_HANDLER(DEVWRITELINE(scsi_port_tag, SCSI_PORT_DEVICE, write_data4)) \
- MCFG_OUTPUT_LATCH_BIT5_HANDLER(DEVWRITELINE(scsi_port_tag, SCSI_PORT_DEVICE, write_data5)) \
- MCFG_OUTPUT_LATCH_BIT6_HANDLER(DEVWRITELINE(scsi_port_tag, SCSI_PORT_DEVICE, write_data6)) \
- MCFG_OUTPUT_LATCH_BIT7_HANDLER(DEVWRITELINE(scsi_port_tag, SCSI_PORT_DEVICE, write_data7))
+ MCFG_OUTPUT_LATCH_BIT0_HANDLER(DEVWRITELINE(scsi_port_tag, scsi_port_device, write_data0)) \
+ MCFG_OUTPUT_LATCH_BIT1_HANDLER(DEVWRITELINE(scsi_port_tag, scsi_port_device, write_data1)) \
+ MCFG_OUTPUT_LATCH_BIT2_HANDLER(DEVWRITELINE(scsi_port_tag, scsi_port_device, write_data2)) \
+ MCFG_OUTPUT_LATCH_BIT3_HANDLER(DEVWRITELINE(scsi_port_tag, scsi_port_device, write_data3)) \
+ MCFG_OUTPUT_LATCH_BIT4_HANDLER(DEVWRITELINE(scsi_port_tag, scsi_port_device, write_data4)) \
+ MCFG_OUTPUT_LATCH_BIT5_HANDLER(DEVWRITELINE(scsi_port_tag, scsi_port_device, write_data5)) \
+ MCFG_OUTPUT_LATCH_BIT6_HANDLER(DEVWRITELINE(scsi_port_tag, scsi_port_device, write_data6)) \
+ MCFG_OUTPUT_LATCH_BIT7_HANDLER(DEVWRITELINE(scsi_port_tag, scsi_port_device, write_data7))
#define MCFG_SCSI_DATA_INPUT_BUFFER(_tag) \
MCFG_SCSI_DATA0_HANDLER(DEVWRITELINE(_tag, input_buffer_device, write_bit0)) \
@@ -89,34 +89,34 @@
MCFG_SCSI_DATA6_HANDLER(DEVWRITELINE(_tag, input_buffer_device, write_bit6)) \
MCFG_SCSI_DATA7_HANDLER(DEVWRITELINE(_tag, input_buffer_device, write_bit7))
-class SCSI_PORT_SLOT_device;
+class scsi_port_slot_device;
class scsi_port_interface;
-class SCSI_PORT_DEVICE : public device_t
+class scsi_port_device : public device_t
{
friend class scsi_port_interface;
public:
// construction/destruction
- SCSI_PORT_DEVICE(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
-
- template<class _Object> static devcb_base &set_bsy_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_bsy_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_sel_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_sel_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_cd_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_cd_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_io_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_io_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_msg_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_msg_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_req_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_req_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_ack_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_ack_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_atn_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_atn_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_rst_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_rst_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_data0_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_data0_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_data1_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_data1_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_data2_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_data2_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_data3_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_data3_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_data4_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_data4_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_data5_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_data5_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_data6_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_data6_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_data7_handler(device_t &device, _Object object) { return downcast<SCSI_PORT_DEVICE &>(device).m_data7_handler.set_callback(object); }
+ scsi_port_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+
+ template <class Object> static devcb_base &set_bsy_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_bsy_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_sel_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_sel_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_cd_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_cd_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_io_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_io_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_msg_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_msg_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_req_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_req_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_ack_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_ack_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_atn_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_atn_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_rst_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_rst_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_data0_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_data0_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_data1_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_data1_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_data2_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_data2_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_data3_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_data3_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_data4_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_data4_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_data5_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_data5_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_data6_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_data6_handler.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_data7_handler(device_t &device, Object &&cb) { return downcast<scsi_port_device &>(device).m_data7_handler.set_callback(std::forward<Object>(cb)); }
DECLARE_WRITE_LINE_MEMBER( write_bsy );
DECLARE_WRITE_LINE_MEMBER( write_sel );
@@ -178,7 +178,7 @@ private:
devcb_write_line m_data6_handler;
devcb_write_line m_data7_handler;
- SCSI_PORT_SLOT_device *m_slot[7];
+ scsi_port_slot_device *m_slot[7];
int m_device_count;
int m_bsy_in;
@@ -221,17 +221,17 @@ extern const device_type SCSI_PORT;
class scsi_port_interface;
-class SCSI_PORT_SLOT_device : public device_t,
+class scsi_port_slot_device : public device_t,
public device_slot_interface
{
- friend class SCSI_PORT_DEVICE;
+ friend class scsi_port_device;
friend class scsi_port_interface;
public:
- SCSI_PORT_SLOT_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ scsi_port_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
scsi_port_interface *dev() { return m_dev; }
- SCSI_PORT_DEVICE *port() { return m_port; }
+ scsi_port_device *port() { return m_port; }
protected:
// device-level overrides
@@ -240,7 +240,7 @@ protected:
protected:
scsi_port_interface *m_dev;
- SCSI_PORT_DEVICE *m_port;
+ scsi_port_device *m_port;
int m_bsy;
int m_sel;
@@ -261,31 +261,30 @@ protected:
int m_data7;
};
-extern const device_type SCSI_PORT_SLOT;
+DECLARE_DEVICE_TYPE(SCSI_PORT_SLOT, scsi_port_slot_device)
class scsi_port_interface : public device_slot_card_interface
{
public:
- scsi_port_interface(const machine_config &mconfig, device_t &device);
virtual ~scsi_port_interface();
- virtual DECLARE_WRITE_LINE_MEMBER( input_bsy ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_sel ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_cd ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_io ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_msg ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_req ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_ack ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_atn ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_rst ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_data0 ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_data1 ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_data2 ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_data3 ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_data4 ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_data5 ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_data6 ) {}
- virtual DECLARE_WRITE_LINE_MEMBER( input_data7 ) {}
+ virtual DECLARE_WRITE_LINE_MEMBER( input_bsy ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_sel ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_cd ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_io ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_msg ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_req ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_ack ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_atn ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_rst ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_data0 ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_data1 ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_data2 ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_data3 ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_data4 ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_data5 ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_data6 ) { }
+ virtual DECLARE_WRITE_LINE_MEMBER( input_data7 ) { }
DECLARE_WRITE_LINE_MEMBER( output_bsy ) { if (m_slot->m_bsy != state) { m_slot->m_bsy = state; m_slot->port()->update_bsy(); } }
DECLARE_WRITE_LINE_MEMBER( output_sel ) { if (m_slot->m_sel != state) { m_slot->m_sel = state; m_slot->port()->update_sel(); } }
@@ -305,8 +304,11 @@ public:
DECLARE_WRITE_LINE_MEMBER( output_data6 ) { if (m_slot->m_data6 != state) { m_slot->m_data6 = state; m_slot->port()->update_data6(); } }
DECLARE_WRITE_LINE_MEMBER( output_data7 ) { if (m_slot->m_data7 != state) { m_slot->m_data7 = state; m_slot->port()->update_data7(); } }
+protected:
+ scsi_port_interface(const machine_config &mconfig, device_t &device);
+
private:
- SCSI_PORT_SLOT_device *m_slot;
+ scsi_port_slot_device *m_slot;
};
-#endif
+#endif // MAME_BUS_SCSI_SCSI_H
diff --git a/src/devices/bus/scsi/scsicd.cpp b/src/devices/bus/scsi/scsicd.cpp
index 2c995bc54a3..93bd9750e8e 100644
--- a/src/devices/bus/scsi/scsicd.cpp
+++ b/src/devices/bus/scsi/scsicd.cpp
@@ -10,15 +10,15 @@
#include "scsicd.h"
// device type definition
-const device_type SCSICD = device_creator<scsicd_device>;
+DEFINE_DEVICE_TYPE(SCSICD, scsicd_device, "scsicd", "SCSI CD")
scsicd_device::scsicd_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
- scsihle_device(mconfig, SCSICD, "SCSI CD", tag, owner, clock, "scsicd", __FILE__)
+ scsicd_device(mconfig, SCSICD, tag, owner, clock)
{
}
-scsicd_device::scsicd_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source) :
- scsihle_device(mconfig, type, name, tag, owner, clock, shortname, source)
+scsicd_device::scsicd_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
+ scsihle_device(mconfig, type, tag, owner, clock)
{
}
diff --git a/src/devices/bus/scsi/scsicd.h b/src/devices/bus/scsi/scsicd.h
index c7c2f377e50..b9dba1db6d9 100644
--- a/src/devices/bus/scsi/scsicd.h
+++ b/src/devices/bus/scsi/scsicd.h
@@ -6,26 +6,25 @@
***************************************************************************/
-#ifndef _SCSICD_H_
-#define _SCSICD_H_
+#ifndef MAME_BUS_SCSI_SCSICD_H
+#define MAME_BUS_SCSI_SCSICD_H
#include "scsihle.h"
#include "machine/t10mmc.h"
-class scsicd_device : public scsihle_device,
- public t10mmc
+class scsicd_device : public scsihle_device, public t10mmc
{
public:
// construction/destruction
scsicd_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- scsicd_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source);
virtual machine_config_constructor device_mconfig_additions() const override;
protected:
+ scsicd_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
virtual void device_start() override;
};
// device type definition
-extern const device_type SCSICD;
+DECLARE_DEVICE_TYPE(SCSICD, scsicd_device)
-#endif
+#endif // MAME_BUS_SCSI_SCSICD_H
diff --git a/src/devices/bus/scsi/scsihd.cpp b/src/devices/bus/scsi/scsihd.cpp
index b8aae0aa48e..a0868659772 100644
--- a/src/devices/bus/scsi/scsihd.cpp
+++ b/src/devices/bus/scsi/scsihd.cpp
@@ -10,15 +10,15 @@
#include "scsihd.h"
// device type definition
-const device_type SCSIHD = device_creator<scsihd_device>;
+DEFINE_DEVICE_TYPE(SCSIHD, scsihd_device, "scsihd", "SCSI HD")
scsihd_device::scsihd_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : scsihle_device(mconfig, SCSIHD, "SCSI HD", tag, owner, clock, "scsihd", __FILE__)
+ : scsihd_device(mconfig, SCSIHD, tag, owner, clock)
{
}
-scsihd_device::scsihd_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source) :
- scsihle_device(mconfig, type, name, tag, owner, clock, shortname, source)
+scsihd_device::scsihd_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
+ scsihle_device(mconfig, type, tag, owner, clock)
{
}
diff --git a/src/devices/bus/scsi/scsihd.h b/src/devices/bus/scsi/scsihd.h
index 1a312a79216..21517c8bbf7 100644
--- a/src/devices/bus/scsi/scsihd.h
+++ b/src/devices/bus/scsi/scsihd.h
@@ -6,26 +6,27 @@
***************************************************************************/
-#ifndef _SCSIHD_H_
-#define _SCSIHD_H_
+#ifndef MAME_BUS_SCSI_SCSIHD_H
+#define MAME_BUS_SCSI_SCSIHD_H
+
+#pragma once
#include "scsihle.h"
#include "machine/t10sbc.h"
-class scsihd_device : public scsihle_device,
- public t10sbc
+class scsihd_device : public scsihle_device, public t10sbc
{
public:
// construction/destruction
scsihd_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- scsihd_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source);
virtual machine_config_constructor device_mconfig_additions() const override;
protected:
+ scsihd_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
virtual void device_start() override;
};
// device type definition
-extern const device_type SCSIHD;
+DECLARE_DEVICE_TYPE(SCSIHD, scsihd_device)
-#endif
+#endif // MAME_BUS_SCSI_SCSIHD_H
diff --git a/src/devices/bus/scsi/scsihle.cpp b/src/devices/bus/scsi/scsihle.cpp
index 27c1a567b62..ed63dae450e 100644
--- a/src/devices/bus/scsi/scsihle.cpp
+++ b/src/devices/bus/scsi/scsihle.cpp
@@ -11,8 +11,8 @@ Base class for HLE'd SCSI devices.
#include "emu.h"
#include "scsihle.h"
-scsihle_device::scsihle_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source) :
- device_t(mconfig, type, name, tag, owner, clock, shortname, source),
+scsihle_device::scsihle_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
+ device_t(mconfig, type, tag, owner, clock),
scsi_port_interface(mconfig, *this),
m_scsi_id(*this, "SCSI_ID"),
req_timer(nullptr),
diff --git a/src/devices/bus/scsi/scsihle.h b/src/devices/bus/scsi/scsihle.h
index 72537d3b3b0..bce047ae474 100644
--- a/src/devices/bus/scsi/scsihle.h
+++ b/src/devices/bus/scsi/scsihle.h
@@ -8,8 +8,8 @@ Base class for HLE'd SCSI devices.
*/
-#ifndef _SCSIHLE_H_
-#define _SCSIHLE_H_
+#ifndef MAME_BUS_SCSI_SCSIHLE_H
+#define MAME_BUS_SCSI_SCSIHLE_H
#include "scsi.h"
#include "machine/t10spc.h"
@@ -21,9 +21,6 @@ class scsihle_device : public device_t,
public virtual t10spc
{
public:
- // construction/destruction
- scsihle_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source);
-
virtual int GetDeviceID(); // hack for legacy_scsi_host_adapter::get_device
virtual DECLARE_WRITE_LINE_MEMBER( input_sel ) override;
@@ -39,6 +36,9 @@ public:
virtual DECLARE_WRITE_LINE_MEMBER( input_data7 ) override { if (state) m_input_data |= 0x80; else m_input_data &= ~0x80; }
protected:
+ // construction/destruction
+ scsihle_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
+
// device-level overrides
virtual ioport_constructor device_input_ports() const override;
virtual void device_start() override;
@@ -89,4 +89,5 @@ extern const input_device_default DEVICE_INPUT_DEFAULTS_NAME(SCSI_ID_7)[];
MCFG_SLOT_OPTION_ADD( _option, _type ) \
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS( _option, _id ) \
MCFG_SLOT_DEFAULT_OPTION( _option )
-#endif
+
+#endif // MAME_BUS_SCSI_SCSIHLE_H