summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--src/devices/bus/centronics/epson_lx810l.cpp2
-rw-r--r--src/devices/bus/isa/mach32.cpp4
-rw-r--r--src/devices/bus/sega8/rom.cpp2
-rw-r--r--src/devices/machine/eepromser.cpp26
-rw-r--r--src/devices/machine/eepromser.h106
-rw-r--r--src/devices/sound/bsmt2000.h4
-rw-r--r--src/devices/video/ef9369.cpp1
-rw-r--r--src/devices/video/pc_vga.cpp2
-rw-r--r--src/emu/emupal.cpp5
-rw-r--r--src/emu/emupal.h6
-rw-r--r--src/emu/screen.h10
-rw-r--r--src/mame/audio/decobsmt.cpp2
-rw-r--r--src/mame/drivers/20pacgal.cpp2
-rw-r--r--src/mame/drivers/39in1.cpp2
-rw-r--r--src/mame/drivers/8080bw.cpp2
-rw-r--r--src/mame/drivers/albazg.cpp2
-rw-r--r--src/mame/drivers/aristmk5.cpp4
-rw-r--r--src/mame/drivers/aristmk6.cpp4
-rw-r--r--src/mame/drivers/asterix.cpp2
-rw-r--r--src/mame/drivers/astrcorp.cpp6
-rw-r--r--src/mame/drivers/backfire.cpp2
-rw-r--r--src/mame/drivers/bpmmicro.cpp2
-rw-r--r--src/mame/drivers/btoads.cpp2
-rw-r--r--src/mame/drivers/cave.cpp35
-rw-r--r--src/mame/drivers/cbasebal.cpp2
-rw-r--r--src/mame/drivers/centiped.cpp2
-rw-r--r--src/mame/drivers/cps1.cpp6
-rw-r--r--src/mame/drivers/cps2.cpp2
-rw-r--r--src/mame/drivers/dcheese.cpp4
-rw-r--r--src/mame/drivers/deco156.cpp4
-rw-r--r--src/mame/drivers/deco32.cpp10
-rw-r--r--src/mame/drivers/deco_mlc.cpp4
-rw-r--r--src/mame/drivers/dkong.cpp6
-rw-r--r--src/mame/drivers/dreambal.cpp2
-rw-r--r--src/mame/drivers/dynamoah.cpp2
-rw-r--r--src/mame/drivers/eolith.cpp2
-rw-r--r--src/mame/drivers/eolith16.cpp2
-rw-r--r--src/mame/drivers/esd16.cpp2
-rw-r--r--src/mame/drivers/f-32.cpp4
-rw-r--r--src/mame/drivers/fcrash.cpp8
-rw-r--r--src/mame/drivers/feversoc.cpp2
-rw-r--r--src/mame/drivers/fireball.cpp2
-rw-r--r--src/mame/drivers/fortecar.cpp4
-rw-r--r--src/mame/drivers/fromanc2.cpp6
-rw-r--r--src/mame/drivers/gaelco2.cpp6
-rw-r--r--src/mame/drivers/gaelco3d.cpp3
-rw-r--r--src/mame/drivers/galastrm.cpp2
-rw-r--r--src/mame/drivers/galgames.cpp6
-rw-r--r--src/mame/drivers/galpani2.cpp2
-rw-r--r--src/mame/drivers/galpani3.cpp2
-rw-r--r--src/mame/drivers/gcpinbal.cpp2
-rw-r--r--src/mame/drivers/gijoe.cpp2
-rw-r--r--src/mame/drivers/groundfx.cpp2
-rw-r--r--src/mame/drivers/gticlub.cpp4
-rw-r--r--src/mame/drivers/gunbustr.cpp2
-rw-r--r--src/mame/drivers/hornet.cpp4
-rw-r--r--src/mame/drivers/indigo.cpp2
-rw-r--r--src/mame/drivers/inufuku.cpp2
-rw-r--r--src/mame/drivers/invqix.cpp4
-rw-r--r--src/mame/drivers/jackpool.cpp2
-rw-r--r--src/mame/drivers/jaguar.cpp2
-rw-r--r--src/mame/drivers/jchan.cpp2
-rw-r--r--src/mame/drivers/jclub2.cpp6
-rw-r--r--src/mame/drivers/joystand.cpp2
-rw-r--r--src/mame/drivers/kaneko16.cpp14
-rw-r--r--src/mame/drivers/kickgoal.cpp8
-rw-r--r--src/mame/drivers/konamigq.cpp4
-rw-r--r--src/mame/drivers/konamigv.cpp2
-rw-r--r--src/mame/drivers/konamigx.cpp2
-rw-r--r--src/mame/drivers/konendev.cpp2
-rw-r--r--src/mame/drivers/leland.cpp5
-rw-r--r--src/mame/drivers/lethal.cpp2
-rw-r--r--src/mame/drivers/limenko.cpp4
-rw-r--r--src/mame/drivers/lordgun.cpp4
-rw-r--r--src/mame/drivers/metro.cpp6
-rw-r--r--src/mame/drivers/microterm.cpp6
-rw-r--r--src/mame/drivers/midas.cpp4
-rw-r--r--src/mame/drivers/mirage.cpp2
-rw-r--r--src/mame/drivers/mitchell.cpp8
-rw-r--r--src/mame/drivers/model2.cpp6
-rw-r--r--src/mame/drivers/model3.cpp8
-rw-r--r--src/mame/drivers/moo.cpp4
-rw-r--r--src/mame/drivers/mystwarr.cpp2
-rw-r--r--src/mame/drivers/naomi.cpp6
-rw-r--r--src/mame/drivers/othunder.cpp2
-rw-r--r--src/mame/drivers/overdriv.cpp4
-rw-r--r--src/mame/drivers/pasha2.cpp2
-rw-r--r--src/mame/drivers/photoply.cpp2
-rw-r--r--src/mame/drivers/pirates.cpp2
-rw-r--r--src/mame/drivers/playmark.cpp8
-rw-r--r--src/mame/drivers/plygonet.cpp2
-rw-r--r--src/mame/drivers/pntnpuzl.cpp2
-rw-r--r--src/mame/drivers/policetr.cpp64
-rw-r--r--src/mame/drivers/powerbal.cpp4
-rw-r--r--src/mame/drivers/psikyo4.cpp4
-rw-r--r--src/mame/drivers/psikyosh.cpp4
-rw-r--r--src/mame/drivers/pve500.cpp2
-rw-r--r--src/mame/drivers/pzletime.cpp2
-rw-r--r--src/mame/drivers/quizpun2.cpp2
-rw-r--r--src/mame/drivers/r2dx_v33.cpp4
-rw-r--r--src/mame/drivers/rabbit.cpp2
-rw-r--r--src/mame/drivers/rbmk.cpp2
-rw-r--r--src/mame/drivers/rmnimbus.cpp2
-rw-r--r--src/mame/drivers/rungun.cpp2
-rw-r--r--src/mame/drivers/segas32.cpp4
-rw-r--r--src/mame/drivers/segasp.cpp4
-rw-r--r--src/mame/drivers/seibucats.cpp2
-rw-r--r--src/mame/drivers/seibuspi.cpp6
-rw-r--r--src/mame/drivers/seta2.cpp4
-rw-r--r--src/mame/drivers/sigmab98.cpp4
-rw-r--r--src/mame/drivers/simpl156.cpp2
-rw-r--r--src/mame/drivers/simpsons.cpp2
-rw-r--r--src/mame/drivers/splash.cpp2
-rw-r--r--src/mame/drivers/spool99.cpp2
-rw-r--r--src/mame/drivers/ssv.cpp2
-rw-r--r--src/mame/drivers/stlforce.cpp2
-rw-r--r--src/mame/drivers/stv.cpp2
-rw-r--r--src/mame/drivers/superchs.cpp2
-rw-r--r--src/mame/drivers/taito_b.cpp6
-rw-r--r--src/mame/drivers/taito_f3.cpp12
-rw-r--r--src/mame/drivers/taito_z.cpp4
-rw-r--r--src/mame/drivers/taitojc.cpp2
-rw-r--r--src/mame/drivers/tasman.cpp2
-rw-r--r--src/mame/drivers/tecmosys.cpp3
-rw-r--r--src/mame/drivers/tmmjprd.cpp3
-rw-r--r--src/mame/drivers/tmnt.cpp12
-rw-r--r--src/mame/drivers/toaplan2.cpp4
-rw-r--r--src/mame/drivers/tti.cpp2
-rw-r--r--src/mame/drivers/ultrsprt.cpp2
-rw-r--r--src/mame/drivers/undrfire.cpp4
-rw-r--r--src/mame/drivers/unico.cpp2
-rw-r--r--src/mame/drivers/vamphalf.cpp4
-rw-r--r--src/mame/drivers/vendetta.cpp2
-rw-r--r--src/mame/drivers/wheelfir.cpp2
-rw-r--r--src/mame/drivers/xexex.cpp2
-rw-r--r--src/mame/drivers/xmen.cpp4
-rw-r--r--src/mame/drivers/xorworld.cpp2
-rw-r--r--src/mame/drivers/zr107.cpp4
-rw-r--r--src/mame/includes/policetr.h92
-rw-r--r--src/mame/machine/iteagle_fpga.cpp2
-rw-r--r--src/mame/machine/model1io.cpp2
-rw-r--r--src/mame/machine/model1io2.cpp2
142 files changed, 380 insertions, 423 deletions
diff --git a/src/devices/bus/centronics/epson_lx810l.cpp b/src/devices/bus/centronics/epson_lx810l.cpp
index 0e4e7b7bfbd..c85821e6cb5 100644
--- a/src/devices/bus/centronics/epson_lx810l.cpp
+++ b/src/devices/bus/centronics/epson_lx810l.cpp
@@ -159,7 +159,7 @@ MACHINE_CONFIG_START(epson_lx810l_device::device_add_mconfig)
MCFG_E05A30_CENTRONICS_SELECT_CALLBACK(WRITELINE(*this, epson_lx810l_device, e05a30_centronics_select))
/* 256-bit eeprom */
- MCFG_EEPROM_SERIAL_93C06_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C06_16BIT)
/* steppers */
MCFG_STEPPER_ADD("pf_stepper")
diff --git a/src/devices/bus/isa/mach32.cpp b/src/devices/bus/isa/mach32.cpp
index 8867a35d313..8525daf745b 100644
--- a/src/devices/bus/isa/mach32.cpp
+++ b/src/devices/bus/isa/mach32.cpp
@@ -50,7 +50,7 @@ mach32_device::mach32_device(const machine_config &mconfig, device_type type, co
MACHINE_CONFIG_START(mach32_device::device_add_mconfig)
MCFG_DEVICE_ADD("8514a", ATIMACH32_8514A, 0)
downcast<ibm8514a_device*>(device)->set_vga(DEVICE_SELF);
- MCFG_EEPROM_SERIAL_93C56_ADD("ati_eeprom")
+ MCFG_DEVICE_ADD("ati_eeprom", EEPROM_SERIAL_93C56_16BIT)
MACHINE_CONFIG_END
void mach32_8514a_device::device_start()
@@ -336,7 +336,7 @@ mach64_device::mach64_device(const machine_config &mconfig, device_type type, co
MACHINE_CONFIG_START(mach64_device::device_add_mconfig)
MCFG_DEVICE_ADD("8514a", ATIMACH64_8514A, 0)
downcast<ibm8514a_device*>(device)->set_vga(DEVICE_SELF);
- MCFG_EEPROM_SERIAL_93C56_ADD("ati_eeprom")
+ MCFG_DEVICE_ADD("ati_eeprom", EEPROM_SERIAL_93C56_16BIT)
MACHINE_CONFIG_END
void mach64_8514a_device::device_start()
diff --git a/src/devices/bus/sega8/rom.cpp b/src/devices/bus/sega8/rom.cpp
index dbd91192d00..19981c55b56 100644
--- a/src/devices/bus/sega8/rom.cpp
+++ b/src/devices/bus/sega8/rom.cpp
@@ -715,7 +715,7 @@ WRITE8_MEMBER(sega8_eeprom_device::write_mapper)
}
MACHINE_CONFIG_START(sega8_eeprom_device::device_add_mconfig)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MACHINE_CONFIG_END
diff --git a/src/devices/machine/eepromser.cpp b/src/devices/machine/eepromser.cpp
index d22adc48c68..77a17b3795b 100644
--- a/src/devices/machine/eepromser.cpp
+++ b/src/devices/machine/eepromser.cpp
@@ -155,10 +155,10 @@ ALLOW_SAVE_TYPE(eeprom_serial_base_device::eeprom_state);
// eeprom_serial_base_device - constructor
//-------------------------------------------------
-eeprom_serial_base_device::eeprom_serial_base_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner)
+eeprom_serial_base_device::eeprom_serial_base_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner, bool enable_streaming)
: eeprom_base_device(mconfig, devtype, tag, owner),
m_command_address_bits(0),
- m_streaming_enabled(false),
+ m_streaming_enabled(enable_streaming),
m_output_on_falling_clock_enabled(false),
m_do_cb(*this),
m_state(STATE_IN_RESET),
@@ -625,8 +625,8 @@ void eeprom_serial_base_device::execute_write_command()
// eeprom_serial_93cxx_device - constructor
//-------------------------------------------------
-eeprom_serial_93cxx_device::eeprom_serial_93cxx_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner)
- : eeprom_serial_base_device(mconfig, devtype, tag, owner)
+eeprom_serial_93cxx_device::eeprom_serial_93cxx_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner, bool enable_streaming)
+ : eeprom_serial_base_device(mconfig, devtype, tag, owner, enable_streaming)
{
}
@@ -692,8 +692,8 @@ WRITE_LINE_MEMBER(eeprom_serial_93cxx_device::di_write) { base_di_write(state);
// eeprom_serial_er5911_device - constructor
//-------------------------------------------------
-eeprom_serial_er5911_device::eeprom_serial_er5911_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner)
- : eeprom_serial_base_device(mconfig, devtype, tag, owner)
+eeprom_serial_er5911_device::eeprom_serial_er5911_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner, bool enable_streaming)
+ : eeprom_serial_base_device(mconfig, devtype, tag, owner, enable_streaming)
{
}
@@ -760,8 +760,8 @@ WRITE_LINE_MEMBER(eeprom_serial_er5911_device::di_write) { base_di_write(state);
// eeprom_serial_x24c44_device - constructor
//-------------------------------------------------
-eeprom_serial_x24c44_device::eeprom_serial_x24c44_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner)
- : eeprom_serial_base_device(mconfig, devtype, tag, owner)
+eeprom_serial_x24c44_device::eeprom_serial_x24c44_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner, bool enable_streaming)
+ : eeprom_serial_base_device(mconfig, devtype, tag, owner, enable_streaming)
{
}
@@ -1123,8 +1123,8 @@ WRITE_LINE_MEMBER(eeprom_serial_x24c44_device::di_write) { base_di_write(state);
// macro for defining a new device class
#define DEFINE_SERIAL_EEPROM_DEVICE(_baseclass, _lowercase, _uppercase, _bits, _cells, _addrbits) \
-eeprom_serial_##_lowercase##_##_bits##bit_device::eeprom_serial_##_lowercase##_##_bits##bit_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) \
- : eeprom_serial_##_baseclass##_device(mconfig, EEPROM_SERIAL_##_uppercase##_##_bits##BIT, tag, owner) \
+eeprom_serial_##_lowercase##_##_bits##bit_device::eeprom_serial_##_lowercase##_##_bits##bit_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, bool enable_streaming) \
+ : eeprom_serial_##_baseclass##_device(mconfig, EEPROM_SERIAL_##_uppercase##_##_bits##BIT, tag, owner, (bool)enable_streaming) \
{ \
set_size(_cells, _bits); \
set_address_bits(_addrbits); \
@@ -1142,9 +1142,9 @@ DEFINE_SERIAL_EEPROM_DEVICE(93cxx, 93c86, 93C86, 16, 1024, 10)
// Seiko S-29X90 class of 16-bit EEPROMs. They always use 13 address bits, despite needing only 6-8.
// The output is updated on the falling edge of the clock. Streaming is enabled
-DEFINE_SERIAL_EEPROM_DEVICE(93cxx, s29190, S29190, 16, 64, 13)
-DEFINE_SERIAL_EEPROM_DEVICE(93cxx, s29290, S29290, 16, 128, 13)
-DEFINE_SERIAL_EEPROM_DEVICE(93cxx, s29390, S29390, 16, 256, 13)
+DEFINE_SERIAL_EEPROM_DEVICE(s29x90, s29190, S29190, 16, 64, 13)
+DEFINE_SERIAL_EEPROM_DEVICE(s29x90, s29290, S29290, 16, 128, 13)
+DEFINE_SERIAL_EEPROM_DEVICE(s29x90, s29390, S29390, 16, 256, 13)
// some manufacturers use pin 6 as an "ORG" pin which, when pulled low, configures memory for 8-bit accesses
DEFINE_SERIAL_EEPROM_DEVICE(93cxx, 93c46, 93C46, 8, 128, 7)
diff --git a/src/devices/machine/eepromser.h b/src/devices/machine/eepromser.h
index 92a721e5305..33850b0f849 100644
--- a/src/devices/machine/eepromser.h
+++ b/src/devices/machine/eepromser.h
@@ -20,77 +20,6 @@
// INTERFACE CONFIGURATION MACROS
//**************************************************************************
-// optional enable for streaming reads
-#define MCFG_EEPROM_SERIAL_ENABLE_STREAMING() \
- downcast<eeprom_serial_base_device &>(*device).enable_streaming(true);
-// optional enable for output on falling clock
-#define MCFG_EEPROM_SERIAL_ENABLE_OUTPUT_ON_FALLING_CLOCK() \
- downcast<eeprom_serial_base_device &>(*device).enable_output_on_falling_clock(true);
-
-// standard 93CX6 class of 16-bit EEPROMs
-#define MCFG_EEPROM_SERIAL_93C06_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C06_16BIT)
-#define MCFG_EEPROM_SERIAL_93C46_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C46_16BIT)
-#define MCFG_EEPROM_SERIAL_93C56_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C56_16BIT)
-#define MCFG_EEPROM_SERIAL_93C57_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C57_16BIT)
-#define MCFG_EEPROM_SERIAL_93C66_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C66_16BIT)
-#define MCFG_EEPROM_SERIAL_93C76_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C76_16BIT)
-#define MCFG_EEPROM_SERIAL_93C86_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C86_16BIT)
-
-// some manufacturers use pin 6 as an "ORG" pin which, when pulled low, configures memory for 8-bit accesses
-#define MCFG_EEPROM_SERIAL_93C46_8BIT_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C46_8BIT)
-#define MCFG_EEPROM_SERIAL_93C56_8BIT_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C56_8BIT)
-#define MCFG_EEPROM_SERIAL_93C57_8BIT_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C57_8BIT)
-#define MCFG_EEPROM_SERIAL_93C66_8BIT_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C66_8BIT)
-#define MCFG_EEPROM_SERIAL_93C76_8BIT_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C76_8BIT)
-#define MCFG_EEPROM_SERIAL_93C86_8BIT_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_93C86_8BIT)
-
-// ER5911 has a separate ready pin, a reduced command set, and supports 8/16 bit out of the box
-#define MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_ER5911_8BIT)
-#define MCFG_EEPROM_SERIAL_ER5911_16BIT_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_ER5911_16BIT)
-
-#define MCFG_EEPROM_SERIAL_MSM16911_8BIT_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_MSM16911_8BIT)
-#define MCFG_EEPROM_SERIAL_MSM16911_16BIT_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_MSM16911_16BIT)
-
-// Seiko S-29X90 class of 16-bit EEPROMs. They always use 13 address bits, despite needing only 6-8.
-// The output is updated on the falling edge of the clock. Streaming is enabled
-#define MCFG_EEPROM_SERIAL_S29190_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_S29190_16BIT) \
- MCFG_EEPROM_SERIAL_ENABLE_OUTPUT_ON_FALLING_CLOCK() \
- MCFG_EEPROM_SERIAL_ENABLE_STREAMING()
-#define MCFG_EEPROM_SERIAL_S29290_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_S29290_16BIT) \
- MCFG_EEPROM_SERIAL_ENABLE_OUTPUT_ON_FALLING_CLOCK() \
- MCFG_EEPROM_SERIAL_ENABLE_STREAMING()
-#define MCFG_EEPROM_SERIAL_S29390_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_S29390_16BIT) \
- MCFG_EEPROM_SERIAL_ENABLE_OUTPUT_ON_FALLING_CLOCK() \
- MCFG_EEPROM_SERIAL_ENABLE_STREAMING()
-
-// X24c44 16 bit ram/eeprom combo
-#define MCFG_EEPROM_SERIAL_X24C44_ADD(_tag) \
- MCFG_DEVICE_ADD(_tag, EEPROM_SERIAL_X24C44_16BIT)
-
-// pass-throughs to the base class for setting default data
-#define MCFG_EEPROM_SERIAL_DATA MCFG_EEPROM_DATA
-#define MCFG_EEPROM_SERIAL_DEFAULT_VALUE MCFG_EEPROM_DEFAULT_VALUE
-
#define MCFG_EEPROM_SERIAL_DO_CALLBACK(_devcb) \
devcb = &downcast<eeprom_serial_base_device &>(*device).set_do_callback(DEVCB_##_devcb);
@@ -99,6 +28,11 @@
// TYPE DEFINITIONS
//**************************************************************************
+enum : bool
+{
+ EEPROM_SERIAL_NO_STREAMING = false,
+ EEPROM_SERIAL_ENABLE_STREAMING = true
+};
// ======================> eeprom_serial_base_device
@@ -113,7 +47,7 @@ public:
protected:
// construction/destruction
- eeprom_serial_base_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner);
+ eeprom_serial_base_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner, bool enable_streaming = EEPROM_SERIAL_NO_STREAMING);
// device-level overrides
virtual void device_start() override;
@@ -211,13 +145,27 @@ public:
protected:
// construction/destruction
- eeprom_serial_93cxx_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner);
+ eeprom_serial_93cxx_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner, bool enable_streaming = EEPROM_SERIAL_NO_STREAMING);
// subclass overrides
virtual void parse_command_and_address() override;
};
+// ======================> eeprom_serial_s29x90_device
+
+class eeprom_serial_s29x90_device : public eeprom_serial_93cxx_device
+{
+protected:
+ // construction/destruction
+ eeprom_serial_s29x90_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner, bool ignored = EEPROM_SERIAL_NO_STREAMING)
+ : eeprom_serial_93cxx_device(mconfig, devtype, tag, owner, true)
+ {
+ enable_output_on_falling_clock(true);
+ }
+};
+
+
// ======================> eeprom_serial_er5911_device
class eeprom_serial_er5911_device : public eeprom_serial_base_device
@@ -234,7 +182,7 @@ public:
protected:
// construction/destruction
- eeprom_serial_er5911_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner);
+ eeprom_serial_er5911_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner, bool enable_streaming = EEPROM_SERIAL_NO_STREAMING);
// subclass overrides
virtual void parse_command_and_address() override;
@@ -258,7 +206,7 @@ public:
protected:
// construction/destruction
- eeprom_serial_x24c44_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner);
+ eeprom_serial_x24c44_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner, bool enable_streaming = EEPROM_SERIAL_NO_STREAMING);
// subclass overrides
virtual void parse_command_and_address() override;
@@ -285,7 +233,7 @@ protected:
class eeprom_serial_##_lowercase##_##_bits##bit_device : public eeprom_serial_##_baseclass##_device \
{ \
public: \
- eeprom_serial_##_lowercase##_##_bits##bit_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0); \
+ eeprom_serial_##_lowercase##_##_bits##bit_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0, bool enable_streaming = EEPROM_SERIAL_NO_STREAMING); \
}; \
DECLARE_DEVICE_TYPE(EEPROM_SERIAL_##_uppercase##_##_bits##BIT, eeprom_serial_##_lowercase##_##_bits##bit_device)
@@ -314,9 +262,9 @@ DECLARE_SERIAL_EEPROM_DEVICE(er5911, msm16911, MSM16911, 16)
// Seiko S-29X90 class of 16-bit EEPROMs. They always use 13 address bits, despite needing only 6-8.
// The output is updated on the falling edge of the clock. Streaming is enabled
-DECLARE_SERIAL_EEPROM_DEVICE(93cxx, s29190, S29190, 16)
-DECLARE_SERIAL_EEPROM_DEVICE(93cxx, s29290, S29290, 16)
-DECLARE_SERIAL_EEPROM_DEVICE(93cxx, s29390, S29390, 16)
+DECLARE_SERIAL_EEPROM_DEVICE(s29x90, s29190, S29190, 16)
+DECLARE_SERIAL_EEPROM_DEVICE(s29x90, s29290, S29290, 16)
+DECLARE_SERIAL_EEPROM_DEVICE(s29x90, s29390, S29390, 16)
// X24c44 16 bit 32byte ram/eeprom combo
DECLARE_SERIAL_EEPROM_DEVICE(x24c44, x24c44, X24C44, 16)
diff --git a/src/devices/sound/bsmt2000.h b/src/devices/sound/bsmt2000.h
index c3b110b5b13..910ce816fe6 100644
--- a/src/devices/sound/bsmt2000.h
+++ b/src/devices/sound/bsmt2000.h
@@ -20,10 +20,6 @@
// INTERFACE CONFIGURATION MACROS
//**************************************************************************
-#define MCFG_BSMT2000_ADD(_tag, _clock) \
- MCFG_DEVICE_ADD(_tag, BSMT2000, _clock)
-#define MCFG_BSMT2000_REPLACE(_tag, _clock) \
- MCFG_DEVICE_REPLACE(_tag, BSMT2000, _clock)
#define MCFG_BSMT2000_READY_CALLBACK(_class, _method) \
downcast<bsmt2000_device &>(*device).set_ready_callback(bsmt2000_device::ready_callback(&_class::_method, #_class "::" #_method, nullptr, (_class *)nullptr));
diff --git a/src/devices/video/ef9369.cpp b/src/devices/video/ef9369.cpp
index 2a00ff76de3..fa2e1eb3456 100644
--- a/src/devices/video/ef9369.cpp
+++ b/src/devices/video/ef9369.cpp
@@ -11,6 +11,7 @@
#include <algorithm>
+/*static*/ constexpr int ef9369_device::NUMCOLORS;
//**************************************************************************
// DEVICE DEFINITIONS
diff --git a/src/devices/video/pc_vga.cpp b/src/devices/video/pc_vga.cpp
index f7da6fded14..86385b658cd 100644
--- a/src/devices/video/pc_vga.cpp
+++ b/src/devices/video/pc_vga.cpp
@@ -2219,7 +2219,7 @@ WRITE8_MEMBER(vga_device::mem_linear_w)
MACHINE_CONFIG_START(ati_vga_device::device_add_mconfig)
MCFG_MACH8_ADD_OWNER("8514a")
- MCFG_EEPROM_SERIAL_93C46_ADD("ati_eeprom")
+ MCFG_DEVICE_ADD("ati_eeprom", EEPROM_SERIAL_93C46_16BIT)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(s3_vga_device::device_add_mconfig)
diff --git a/src/emu/emupal.cpp b/src/emu/emupal.cpp
index a928a562aa4..6cf55ec33cb 100644
--- a/src/emu/emupal.cpp
+++ b/src/emu/emupal.cpp
@@ -17,8 +17,8 @@
DEFINE_DEVICE_TYPE(PALETTE, palette_device, "palette", "palette")
-palette_device::palette_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : device_t(mconfig, PALETTE, tag, owner, clock),
+palette_device::palette_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 entries)
+ : device_t(mconfig, PALETTE, tag, owner, (uint32_t)0),
device_palette_interface(mconfig, *this),
m_entries(0),
m_indirect_entries(0),
@@ -32,6 +32,7 @@ palette_device::palette_device(const machine_config &mconfig, const char *tag, d
m_init(palette_init_delegate()),
m_raw_to_rgb(raw_to_rgb_converter())
{
+ set_entries(entries);
}
diff --git a/src/emu/emupal.h b/src/emu/emupal.h
index c16960537f0..4b156014d06 100644
--- a/src/emu/emupal.h
+++ b/src/emu/emupal.h
@@ -174,8 +174,8 @@
//**************************************************************************
#define MCFG_PALETTE_ADD(_tag, _entries) \
- MCFG_DEVICE_ADD(_tag, PALETTE, 0) \
- MCFG_PALETTE_ENTRIES(_entries)
+ MCFG_DEVICE_ADD(_tag, PALETTE, _entries)
+
#define MCFG_PALETTE_ADD_INIT_BLACK(_tag, _entries) \
MCFG_PALETTE_ADD(_tag, _entries) \
downcast<palette_device &>(*device).set_init(palette_init_delegate(FUNC(palette_device::palette_init_all_black), downcast<palette_device *>(device)));
@@ -364,7 +364,7 @@ class palette_device : public device_t, public device_palette_interface
{
public:
// construction/destruction
- palette_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
+ palette_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 entries);
// configuration
template <typename Object> void set_init(Object &&init) { m_init = std::forward<Object>(init); }
diff --git a/src/emu/screen.h b/src/emu/screen.h
index 37aaccbfabc..8c9fb448138 100644
--- a/src/emu/screen.h
+++ b/src/emu/screen.h
@@ -168,6 +168,12 @@ class screen_device : public device_t
public:
// construction/destruction
screen_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
+
+ screen_device(const machine_config &mconfig, const char *tag, device_t *owner, screen_type_enum type)
+ : screen_device(mconfig, tag, owner, (u32)0)
+ {
+ set_type(type);
+ }
~screen_device();
// configuration readers
@@ -199,6 +205,7 @@ public:
}
void set_raw(const XTAL &xtal, u16 htotal, u16 hbend, u16 hbstart, u16 vtotal, u16 vbend, u16 vbstart) { set_raw(xtal.value(), htotal, hbend, hbstart, vtotal, vbend, vbstart); }
void set_refresh(attoseconds_t rate) { m_refresh = rate; }
+ void set_refresh_hz(attoseconds_t hz) { set_refresh(HZ_TO_ATTOSECONDS(hz)); }
void set_vblank_time(attoseconds_t time) { m_vblank = time; m_oldstyle_vblank_supplied = true; }
void set_size(u16 width, u16 height) { m_width = width; m_height = height; }
void set_visarea(s16 minx, s16 maxx, s16 miny, s16 maxy) { m_visarea.set(minx, maxx, miny, maxy); }
@@ -470,8 +477,7 @@ typedef device_type_iterator<screen_device> screen_device_iterator;
*/
#define MCFG_SCREEN_ADD(_tag, _type) \
- MCFG_DEVICE_ADD(_tag, SCREEN, 0) \
- MCFG_SCREEN_TYPE(_type)
+ MCFG_DEVICE_ADD(_tag, SCREEN, SCREEN_TYPE_##_type)
#define MCFG_SCREEN_ADD_MONOCHROME(_tag, _type, _color) \
MCFG_DEVICE_ADD(_tag, SCREEN, 0) \
diff --git a/src/mame/audio/decobsmt.cpp b/src/mame/audio/decobsmt.cpp
index fd94192e026..9735b18761f 100644
--- a/src/mame/audio/decobsmt.cpp
+++ b/src/mame/audio/decobsmt.cpp
@@ -55,7 +55,7 @@ MACHINE_CONFIG_START(decobsmt_device::device_add_mconfig)
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
- MCFG_BSMT2000_ADD(BSMT_TAG, XTAL(24'000'000))
+ MCFG_DEVICE_ADD(BSMT_TAG, BSMT2000, XTAL(24'000'000))
MCFG_DEVICE_ADDRESS_MAP(0, bsmt_map)
MCFG_BSMT2000_READY_CALLBACK(decobsmt_device, bsmt_ready_callback)
MCFG_SOUND_ROUTE(0, "lspeaker", 2.0)
diff --git a/src/mame/drivers/20pacgal.cpp b/src/mame/drivers/20pacgal.cpp
index 86b2bfd2189..5c2e058ab46 100644
--- a/src/mame/drivers/20pacgal.cpp
+++ b/src/mame/drivers/20pacgal.cpp
@@ -400,7 +400,7 @@ MACHINE_CONFIG_START(_20pacgal_state::_20pacgal)
MCFG_DEVICE_PROGRAM_MAP(_20pacgal_map)
MCFG_DEVICE_IO_MAP(_20pacgal_io_map)
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/39in1.cpp b/src/mame/drivers/39in1.cpp
index 2ad3731991f..91224c61f6e 100644
--- a/src/mame/drivers/39in1.cpp
+++ b/src/mame/drivers/39in1.cpp
@@ -1598,7 +1598,7 @@ MACHINE_CONFIG_START(_39in1_state::_39in1)
MCFG_PALETTE_ADD("palette", 256)
- MCFG_EEPROM_SERIAL_93C66_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C66_16BIT)
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
diff --git a/src/mame/drivers/8080bw.cpp b/src/mame/drivers/8080bw.cpp
index a1e24e05481..c8e1adc1d26 100644
--- a/src/mame/drivers/8080bw.cpp
+++ b/src/mame/drivers/8080bw.cpp
@@ -3524,7 +3524,7 @@ MACHINE_CONFIG_START(_8080bw_state::invmulti)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(invmulti_map)
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
MCFG_MACHINE_RESET_OVERRIDE(_8080bw_state, mw8080bw)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/albazg.cpp b/src/mame/drivers/albazg.cpp
index 46df3eceac9..6cb7845a120 100644
--- a/src/mame/drivers/albazg.cpp
+++ b/src/mame/drivers/albazg.cpp
@@ -367,7 +367,7 @@ MACHINE_CONFIG_START(albazg_state::yumefuda)
MCFG_DEVICE_IO_MAP(port_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", albazg_state, irq0_line_hold)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_WATCHDOG_ADD("watchdog")
MCFG_WATCHDOG_VBLANK_INIT("screen", 8) // timing is unknown
diff --git a/src/mame/drivers/aristmk5.cpp b/src/mame/drivers/aristmk5.cpp
index 3437c774ce1..4ad362d3474 100644
--- a/src/mame/drivers/aristmk5.cpp
+++ b/src/mame/drivers/aristmk5.cpp
@@ -2054,8 +2054,8 @@ MACHINE_CONFIG_START(aristmk5_state::aristmk5)
MCFG_PALETTE_ADD("palette", 0x200)
- MCFG_EEPROM_SERIAL_93C56_ADD("eeprom0")
- MCFG_EEPROM_SERIAL_93C56_ADD("eeprom1")
+ MCFG_DEVICE_ADD("eeprom0", EEPROM_SERIAL_93C56_16BIT)
+ MCFG_DEVICE_ADD("eeprom1", EEPROM_SERIAL_93C56_16BIT)
MCFG_NVRAM_ADD_NO_FILL("nvram")
diff --git a/src/mame/drivers/aristmk6.cpp b/src/mame/drivers/aristmk6.cpp
index 99e67f47f93..79b3196fda3 100644
--- a/src/mame/drivers/aristmk6.cpp
+++ b/src/mame/drivers/aristmk6.cpp
@@ -353,8 +353,8 @@ MACHINE_CONFIG_START(aristmk6_state::aristmk6)
MCFG_DEVICE_ADD( "uart0", NS16550, 8_MHz_XTAL )
MCFG_DEVICE_ADD( "uart1", NS16550, 8_MHz_XTAL )
- MCFG_EEPROM_SERIAL_93C56_ADD("eeprom0")
- MCFG_EEPROM_SERIAL_DEFAULT_VALUE(0xFF)
+ MCFG_DEVICE_ADD("eeprom0", EEPROM_SERIAL_93C56_16BIT)
+ MCFG_EEPROM_DEFAULT_VALUE(0xFF)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/asterix.cpp b/src/mame/drivers/asterix.cpp
index cf90da2327a..0333f73d71e 100644
--- a/src/mame/drivers/asterix.cpp
+++ b/src/mame/drivers/asterix.cpp
@@ -269,7 +269,7 @@ MACHINE_CONFIG_START(asterix_state::asterix)
MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(32'000'000)/4) // 8MHz Z80E ??
MCFG_DEVICE_PROGRAM_MAP(sound_map)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/astrcorp.cpp b/src/mame/drivers/astrcorp.cpp
index 1a59fface44..1dbdb5ae03d 100644
--- a/src/mame/drivers/astrcorp.cpp
+++ b/src/mame/drivers/astrcorp.cpp
@@ -527,8 +527,8 @@ MACHINE_CONFIG_START(astrocorp_state::showhand)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", astrocorp_state, irq4_line_hold)
MCFG_NVRAM_ADD_0FILL("nvram")
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DATA(showhand_default_eeprom, sizeof(showhand_default_eeprom))
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DATA(showhand_default_eeprom, sizeof(showhand_default_eeprom))
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -580,7 +580,7 @@ MACHINE_CONFIG_START(astrocorp_state::skilldrp)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", astrocorp_state, skilldrp_scanline, "screen", 0, 1)
MCFG_NVRAM_ADD_0FILL("nvram")
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TICKET_DISPENSER_ADD("ticket", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW )
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW )
diff --git a/src/mame/drivers/backfire.cpp b/src/mame/drivers/backfire.cpp
index 4636208ddb7..ee018bf5fba 100644
--- a/src/mame/drivers/backfire.cpp
+++ b/src/mame/drivers/backfire.cpp
@@ -425,7 +425,7 @@ MACHINE_CONFIG_START(backfire_state::backfire)
MCFG_DEVICE_ADD("maincpu", ARM, 28000000/4) /* Unconfirmed */
MCFG_DEVICE_PROGRAM_MAP(backfire_map)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("adc", ADC0808, 1000000) // unknown clock
MCFG_ADC0808_IN0_CB(IOPORT("PADDLE0"))
diff --git a/src/mame/drivers/bpmmicro.cpp b/src/mame/drivers/bpmmicro.cpp
index fc68ade40e8..51c75ab1302 100644
--- a/src/mame/drivers/bpmmicro.cpp
+++ b/src/mame/drivers/bpmmicro.cpp
@@ -368,7 +368,7 @@ MACHINE_CONFIG_START(bpmmicro_state::bpmmicro)
MCFG_DEVICE_PROGRAM_MAP(i286_mem)
MCFG_DEVICE_IO_MAP(i286_io)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom_u38")
+ MCFG_DEVICE_ADD("eeprom_u38", EEPROM_SERIAL_93C46_16BIT)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/btoads.cpp b/src/mame/drivers/btoads.cpp
index 3262a855bb4..368a6945d9e 100644
--- a/src/mame/drivers/btoads.cpp
+++ b/src/mame/drivers/btoads.cpp
@@ -332,7 +332,7 @@ MACHINE_CONFIG_START(btoads_state::btoads)
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
- MCFG_BSMT2000_ADD("bsmt", SOUND_CLOCK)
+ MCFG_DEVICE_ADD("bsmt", BSMT2000, SOUND_CLOCK)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cave.cpp b/src/mame/drivers/cave.cpp
index df6acb70784..a37f640bcc7 100644
--- a/src/mame/drivers/cave.cpp
+++ b/src/mame/drivers/cave.cpp
@@ -2103,7 +2103,7 @@ MACHINE_CONFIG_START(cave_state::dfeveron)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", cave_state, cave_interrupt)
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2143,7 +2143,7 @@ MACHINE_CONFIG_START(cave_state::ddonpach)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", cave_state, cave_interrupt)
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2182,7 +2182,7 @@ MACHINE_CONFIG_START(cave_state::donpachi)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", cave_state, cave_interrupt)
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2228,7 +2228,7 @@ MACHINE_CONFIG_START(cave_state::esprade)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", cave_state, cave_interrupt)
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2307,7 +2307,7 @@ MACHINE_CONFIG_START(cave_state::guwange)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", cave_state, cave_interrupt)
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2349,7 +2349,7 @@ MACHINE_CONFIG_START(cave_state::hotdogst)
MCFG_DEVICE_IO_MAP(hotdogst_sound_portmap)
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2398,7 +2398,7 @@ MACHINE_CONFIG_START(cave_state::korokoro)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", cave_state, cave_interrupt)
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2450,7 +2450,7 @@ MACHINE_CONFIG_START(cave_state::mazinger)
MCFG_WATCHDOG_TIME_INIT(attotime::from_seconds(3)) /* a guess, and certainly wrong */
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2506,7 +2506,7 @@ MACHINE_CONFIG_START(cave_state::metmqstr)
MCFG_WATCHDOG_TIME_INIT(attotime::from_seconds(3)) /* a guess, and certainly wrong */
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave) /* start with the watchdog armed */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2562,8 +2562,7 @@ MACHINE_CONFIG_START(cave_state::pacslot)
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_ENABLE_STREAMING()
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT, EEPROM_SERIAL_ENABLE_STREAMING)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2620,7 +2619,7 @@ MACHINE_CONFIG_START(cave_state::ppsatan)
MCFG_WATCHDOG_TIME_INIT(attotime::from_seconds(1)) /* a guess, and certainly wrong */
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD_PERIODIC("timer_lev2", cave_state, timer_lev2_cb, attotime::from_hz(60))
@@ -2684,7 +2683,7 @@ MACHINE_CONFIG_START(cave_state::pwrinst2)
MCFG_DEVICE_IO_MAP(pwrinst2_sound_portmap)
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2760,7 +2759,7 @@ MACHINE_CONFIG_START(cave_state::sailormn)
// MCFG_QUANTUM_TIME(attotime::from_hz(600))
MCFG_MACHINE_RESET_OVERRIDE(cave_state,sailormn)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2818,8 +2817,7 @@ MACHINE_CONFIG_START(cave_state::tekkencw)
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_ENABLE_STREAMING()
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT, EEPROM_SERIAL_ENABLE_STREAMING)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2873,8 +2871,7 @@ MACHINE_CONFIG_START(cave_state::tjumpman)
MCFG_MACHINE_RESET_OVERRIDE(cave_state,cave)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_ENABLE_STREAMING()
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT, EEPROM_SERIAL_ENABLE_STREAMING)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
@@ -2915,7 +2912,7 @@ MACHINE_CONFIG_START(cave_state::uopoko)
MCFG_DEVICE_PROGRAM_MAP(uopoko_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", cave_state, cave_interrupt)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("int_timer", cave_state, cave_vblank_start)
diff --git a/src/mame/drivers/cbasebal.cpp b/src/mame/drivers/cbasebal.cpp
index ff2d767551a..57770eb3973 100644
--- a/src/mame/drivers/cbasebal.cpp
+++ b/src/mame/drivers/cbasebal.cpp
@@ -270,7 +270,7 @@ MACHINE_CONFIG_START(cbasebal_state::cbasebal)
MCFG_DEVICE_OPCODES_MAP(decrypted_opcodes_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", cbasebal_state, irq0_line_hold) /* ??? */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/centiped.cpp b/src/mame/drivers/centiped.cpp
index e0d4913c401..dff31e015e6 100644
--- a/src/mame/drivers/centiped.cpp
+++ b/src/mame/drivers/centiped.cpp
@@ -1873,7 +1873,7 @@ MACHINE_CONFIG_START(centiped_state::multiped)
MCFG_DEVICE_PROGRAM_MAP(multiped_map)
MCFG_DEVICE_REMOVE("earom")
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cps1.cpp b/src/mame/drivers/cps1.cpp
index f0976322ca4..ef8507700a0 100644
--- a/src/mame/drivers/cps1.cpp
+++ b/src/mame/drivers/cps1.cpp
@@ -3438,7 +3438,7 @@ MACHINE_CONFIG_START(cps_state::pang3)
cps1_12MHz(config);
/* basic machine hardware */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(cps_state::ganbare)
@@ -3467,7 +3467,7 @@ MACHINE_CONFIG_START(cps_state::qsound)
MCFG_MACHINE_START_OVERRIDE(cps_state, qsound)
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
/* sound hardware */
MCFG_DEVICE_REMOVE("mono")
@@ -3488,7 +3488,7 @@ MACHINE_CONFIG_START(cps_state::wofhfh)
cps1_12MHz(config);
/* basic machine hardware */
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(cps_state::sf2m3)
diff --git a/src/mame/drivers/cps2.cpp b/src/mame/drivers/cps2.cpp
index 311a5d27fd3..548debedf02 100644
--- a/src/mame/drivers/cps2.cpp
+++ b/src/mame/drivers/cps2.cpp
@@ -1316,7 +1316,7 @@ MACHINE_CONFIG_START(cps2_state::cps2)
MCFG_MACHINE_START_OVERRIDE(cps2_state, cps2)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/dcheese.cpp b/src/mame/drivers/dcheese.cpp
index 73563eef05a..6bd867b1216 100644
--- a/src/mame/drivers/dcheese.cpp
+++ b/src/mame/drivers/dcheese.cpp
@@ -384,7 +384,7 @@ MACHINE_CONFIG_START(dcheese_state::dcheese)
MCFG_DEVICE_PROGRAM_MAP(sound_cpu_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(dcheese_state, irq1_line_hold, 480) /* accurate for fredmem */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TICKET_DISPENSER_ADD("ticket", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW)
@@ -408,7 +408,7 @@ MACHINE_CONFIG_START(dcheese_state::dcheese)
MCFG_GENERIC_LATCH_8_ADD("soundlatch")
MCFG_GENERIC_LATCH_DATA_PENDING_CB(INPUTLINE("audiocpu", 0))
- MCFG_BSMT2000_ADD("bsmt", SOUND_OSC)
+ MCFG_DEVICE_ADD("bsmt", BSMT2000, SOUND_OSC)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.2)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.2)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/deco156.cpp b/src/mame/drivers/deco156.cpp
index 67680a1f151..b7bb029d027 100644
--- a/src/mame/drivers/deco156.cpp
+++ b/src/mame/drivers/deco156.cpp
@@ -334,7 +334,7 @@ MACHINE_CONFIG_START(deco156_state::hvysmsh)
MCFG_DEVICE_PROGRAM_MAP(hvysmsh_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", deco156_state, deco32_vbl_interrupt)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(58)
@@ -388,7 +388,7 @@ MACHINE_CONFIG_START(deco156_state::wcvol95)
MCFG_DEVICE_PROGRAM_MAP(wcvol95_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", deco156_state, deco32_vbl_interrupt)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(58)
diff --git a/src/mame/drivers/deco32.cpp b/src/mame/drivers/deco32.cpp
index 2f6f88fd629..e3568125696 100644
--- a/src/mame/drivers/deco32.cpp
+++ b/src/mame/drivers/deco32.cpp
@@ -1959,7 +1959,7 @@ MACHINE_CONFIG_START(fghthist_state::fghthist)
MCFG_DEVICE_ADD("audiocpu", H6280, XTAL(32'220'000) / 8)
MCFG_DEVICE_PROGRAM_MAP(h6280_sound_custom_latch_map)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL(28'000'000) / 4, 442, 0, 320, 274, 8, 248)
@@ -2089,7 +2089,7 @@ MACHINE_CONFIG_START(dragngun_state::dragngun)
MCFG_DECO_IRQ_RASTER2_IRQ_CB(WRITELINE("irq_merger", input_merger_any_high_device, in_w<0>))
MCFG_DECO_IRQ_VBLANK_IRQ_CB(WRITELINE("irq_merger", input_merger_any_high_device, in_w<1>))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -2223,7 +2223,7 @@ MACHINE_CONFIG_START(dragngun_state::lockload)
MCFG_QUANTUM_TIME(attotime::from_hz(6000)) /* to improve main<->audio comms */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -2309,7 +2309,7 @@ MACHINE_CONFIG_START(nslasher_state::tattass)
MCFG_DEVICE_PROGRAM_MAP(tattass_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", deco32_state, irq0_line_assert)
- MCFG_EEPROM_SERIAL_93C76_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C76_8BIT)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL(28'000'000) / 4, 442, 0, 320, 274, 8, 248)
@@ -2388,7 +2388,7 @@ MACHINE_CONFIG_START(nslasher_state::nslasher)
MCFG_QUANTUM_TIME(attotime::from_hz(6000)) /* to improve main<->audio comms */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL(28'322'000) / 4, 442, 0, 320, 274, 8, 248)
diff --git a/src/mame/drivers/deco_mlc.cpp b/src/mame/drivers/deco_mlc.cpp
index beabd4d7bd5..a8aec9602c7 100644
--- a/src/mame/drivers/deco_mlc.cpp
+++ b/src/mame/drivers/deco_mlc.cpp
@@ -513,7 +513,7 @@ MACHINE_CONFIG_START(deco_mlc_state::avengrgs)
MCFG_DEVICE_ADD(m_maincpu, SH2, 42000000/2) /* 21 MHz clock confirmed on real board */
MCFG_DEVICE_PROGRAM_MAP(avengrgs_map)
- MCFG_EEPROM_SERIAL_93C46_ADD(m_eeprom) /* Actually 93c45 */
+ MCFG_DEVICE_ADD(m_eeprom, EEPROM_SERIAL_93C46_16BIT) /* Actually 93c45 */
MCFG_TIMER_DRIVER_ADD(m_raster_irq_timer, deco_mlc_state, interrupt_gen)
@@ -546,7 +546,7 @@ MACHINE_CONFIG_START(deco_mlc_state::mlc)
MCFG_DEVICE_ADD(m_maincpu, ARM,42000000/6) /* 42 MHz -> 7MHz clock confirmed on real board */
MCFG_DEVICE_PROGRAM_MAP(decomlc_map)
- MCFG_EEPROM_SERIAL_93C46_ADD(m_eeprom) /* Actually 93c45 */
+ MCFG_DEVICE_ADD(m_eeprom, EEPROM_SERIAL_93C46_16BIT) /* Actually 93c45 */
MCFG_TIMER_DRIVER_ADD(m_raster_irq_timer, deco_mlc_state, interrupt_gen)
diff --git a/src/mame/drivers/dkong.cpp b/src/mame/drivers/dkong.cpp
index 14f61a71ecc..c0252f2cbdf 100644
--- a/src/mame/drivers/dkong.cpp
+++ b/src/mame/drivers/dkong.cpp
@@ -1767,13 +1767,13 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_START(dkong_state::dk_braze)
dkong2b(config);
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(dkong_state::dkj_braze)
dkongjr(config);
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(dkong_state::ddk_braze)
@@ -1785,7 +1785,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_START(dkong_state::dk3_braze)
dkong3(config);
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(dkong_state::dkong3)
diff --git a/src/mame/drivers/dreambal.cpp b/src/mame/drivers/dreambal.cpp
index 9404cb3351f..e22daac49d9 100644
--- a/src/mame/drivers/dreambal.cpp
+++ b/src/mame/drivers/dreambal.cpp
@@ -327,7 +327,7 @@ MACHINE_CONFIG_START(dreambal_state::dreambal)
MCFG_PALETTE_FORMAT(xxxxBBBBGGGGRRRR)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_dreambal)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom") // 93lc46b
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT) // 93lc46b
MCFG_DECO104_ADD("ioprot104")
MCFG_DECO146_IN_PORTA_CB(IOPORT("INPUTS"))
diff --git a/src/mame/drivers/dynamoah.cpp b/src/mame/drivers/dynamoah.cpp
index 5f40e01412c..95fcd2a3cba 100644
--- a/src/mame/drivers/dynamoah.cpp
+++ b/src/mame/drivers/dynamoah.cpp
@@ -86,7 +86,7 @@ MACHINE_CONFIG_START(dynamoah_state::dynamoah)
MCFG_DEVCB_CHAIN_OUTPUT(WRITE8(*this, dynamoah_state, p1_w)) MCFG_DEVCB_MASK(0x1f)
MCFG_MCS51_PORT_P3_OUT_CB(WRITE8(*this, dynamoah_state, p3_w))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MACHINE_CONFIG_END
static INPUT_PORTS_START(dynamoah)
diff --git a/src/mame/drivers/eolith.cpp b/src/mame/drivers/eolith.cpp
index 91e2ed93eb4..ba7c5e26f72 100644
--- a/src/mame/drivers/eolith.cpp
+++ b/src/mame/drivers/eolith.cpp
@@ -552,7 +552,7 @@ MACHINE_CONFIG_START(eolith_state::eolith45)
MCFG_MACHINE_RESET_OVERRIDE(eolith_state,eolith)
- MCFG_EEPROM_SERIAL_93C66_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C66_8BIT)
MCFG_EEPROM_ERASE_TIME(attotime::from_usec(250))
MCFG_EEPROM_WRITE_TIME(attotime::from_usec(250))
diff --git a/src/mame/drivers/eolith16.cpp b/src/mame/drivers/eolith16.cpp
index eb1aefc69d4..b0438d4c85c 100644
--- a/src/mame/drivers/eolith16.cpp
+++ b/src/mame/drivers/eolith16.cpp
@@ -163,7 +163,7 @@ MACHINE_CONFIG_START(eolith16_state::eolith16)
MCFG_DEVICE_PROGRAM_MAP(eolith16_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", eolith16_state, eolith_speedup, "screen", 0, 1)
- MCFG_EEPROM_SERIAL_93C66_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C66_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/esd16.cpp b/src/mame/drivers/esd16.cpp
index 0f425e59e79..838701ad3bf 100644
--- a/src/mame/drivers/esd16.cpp
+++ b/src/mame/drivers/esd16.cpp
@@ -705,7 +705,7 @@ MACHINE_CONFIG_START(esd16_state::hedpanio)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(hedpanic_map)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MACHINE_CONFIG_END
/* The ESD 08-26-1999 PCBs take that further and modify the sprite offsets */
diff --git a/src/mame/drivers/f-32.cpp b/src/mame/drivers/f-32.cpp
index f4c5b082db5..8edada0d532 100644
--- a/src/mame/drivers/f-32.cpp
+++ b/src/mame/drivers/f-32.cpp
@@ -172,7 +172,7 @@ MACHINE_CONFIG_START(mosaicf2_state::mosaicf2)
MCFG_DEVICE_IO_MAP(mosaicf2_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", mosaicf2_state, irq0_line_hold)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_EEPROM_ERASE_TIME(attotime::from_usec(1))
MCFG_EEPROM_WRITE_TIME(attotime::from_usec(1))
@@ -251,7 +251,7 @@ MACHINE_CONFIG_START(mosaicf2_state::royalpk2)
MCFG_DEVICE_IO_MAP(royalpk2_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", mosaicf2_state, irq1_line_hold)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_EEPROM_ERASE_TIME(attotime::from_usec(1))
MCFG_EEPROM_WRITE_TIME(attotime::from_usec(1))
diff --git a/src/mame/drivers/fcrash.cpp b/src/mame/drivers/fcrash.cpp
index de39b461942..bf717d868cf 100644
--- a/src/mame/drivers/fcrash.cpp
+++ b/src/mame/drivers/fcrash.cpp
@@ -2167,7 +2167,7 @@ MACHINE_CONFIG_START(cps_state::dinopic)
MCFG_MACHINE_START_OVERRIDE(cps_state, dinopic)
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -2337,7 +2337,7 @@ MACHINE_CONFIG_START(cps_state::sgyxz)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_cps1)
MCFG_PALETTE_ADD("palette", 0xc00)
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -2449,7 +2449,7 @@ MACHINE_CONFIG_START(cps_state::punipic)
MCFG_MACHINE_START_OVERRIDE(cps_state, punipic)
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -3019,7 +3019,7 @@ MACHINE_CONFIG_START(cps_state::slampic)
MCFG_MACHINE_START_OVERRIDE(cps_state, slampic)
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/feversoc.cpp b/src/mame/drivers/feversoc.cpp
index a6cb737a775..6afc5a23931 100644
--- a/src/mame/drivers/feversoc.cpp
+++ b/src/mame/drivers/feversoc.cpp
@@ -310,7 +310,7 @@ MACHINE_CONFIG_START(feversoc_state::feversoc)
MCFG_DEVICE_ADD("oki", OKIM6295, MASTER_CLOCK/16, okim6295_device::PIN7_LOW) //pin 7 & frequency not verified (clock should be 28,6363 / n)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.6)
- MCFG_EEPROM_SERIAL_93C56_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C56_16BIT)
MCFG_JRC6355E_ADD("rtc", XTAL(32'768))
diff --git a/src/mame/drivers/fireball.cpp b/src/mame/drivers/fireball.cpp
index d5ebdfc86ba..3358d417568 100644
--- a/src/mame/drivers/fireball.cpp
+++ b/src/mame/drivers/fireball.cpp
@@ -502,7 +502,7 @@ MACHINE_CONFIG_START(fireball_state::fireball)
MCFG_MCS51_PORT_P3_OUT_CB(WRITE8(*this, fireball_state, p3_w))
MCFG_TIMER_DRIVER_ADD_PERIODIC("int_0", fireball_state, int_0, attotime::from_hz(555)) //9ms from scope reading 111Hz take care of this in the handler
- MCFG_EEPROM_SERIAL_X24C44_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_X24C44_16BIT)
/* sound hardware */
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/fortecar.cpp b/src/mame/drivers/fortecar.cpp
index e4f7623677d..6496319f51d 100644
--- a/src/mame/drivers/fortecar.cpp
+++ b/src/mame/drivers/fortecar.cpp
@@ -700,8 +700,8 @@ MACHINE_CONFIG_START(fortecar_state::fortecar)
MCFG_SCREEN_UPDATE_DRIVER(fortecar_state, screen_update)
MCFG_SCREEN_PALETTE("palette")
- MCFG_EEPROM_SERIAL_93C56_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DEFAULT_VALUE(0)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C56_16BIT)
+ MCFG_EEPROM_DEFAULT_VALUE(0)
MCFG_DEVICE_ADD("fcppi0", I8255A, 0)
/* Init with 0x9a... A, B and high C as input
diff --git a/src/mame/drivers/fromanc2.cpp b/src/mame/drivers/fromanc2.cpp
index 6ebd5ed7766..2ca182bca15 100644
--- a/src/mame/drivers/fromanc2.cpp
+++ b/src/mame/drivers/fromanc2.cpp
@@ -518,7 +518,7 @@ MACHINE_CONFIG_START(fromanc2_state::fromanc2)
MCFG_MACHINE_START_OVERRIDE(fromanc2_state,fromanc2)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "lpalette", gfx_fromanc2)
@@ -578,7 +578,7 @@ MACHINE_CONFIG_START(fromanc2_state::fromancr)
MCFG_MACHINE_START_OVERRIDE(fromanc2_state,fromanc2)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "lpalette", gfx_fromancr)
@@ -634,7 +634,7 @@ MACHINE_CONFIG_START(fromanc2_state::fromanc4)
MCFG_MACHINE_START_OVERRIDE(fromanc2_state,fromanc4)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("uart", NS16550, 2000000) // actual type is TL16C550CFN; clock unknown
MCFG_INS8250_OUT_INT_CB(INPUTLINE("maincpu", M68K_IRQ_2))
diff --git a/src/mame/drivers/gaelco2.cpp b/src/mame/drivers/gaelco2.cpp
index 63f8f2219bf..1f39905399e 100644
--- a/src/mame/drivers/gaelco2.cpp
+++ b/src/mame/drivers/gaelco2.cpp
@@ -710,7 +710,7 @@ MACHINE_CONFIG_START(bang_state::bang)
MCFG_DEVICE_PROGRAM_MAP(bang_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", bang_state, bang_irq, "screen", 0, 1)
- MCFG_EEPROM_SERIAL_93C66_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C66_16BIT)
MCFG_DEVICE_ADD("mainlatch", LS259, 0)
MCFG_ADDRESSABLE_LATCH_Q0_OUT_CB(WRITELINE(*this, gaelco2_state, coin1_counter_w))
@@ -1560,7 +1560,7 @@ MACHINE_CONFIG_START(gaelco2_state::snowboar)
MCFG_DEVICE_PROGRAM_MAP(snowboar_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", gaelco2_state, irq6_line_hold)
- MCFG_EEPROM_SERIAL_93C66_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C66_16BIT)
MCFG_DEVICE_ADD("mainlatch", LS259, 0)
MCFG_ADDRESSABLE_LATCH_Q0_OUT_CB(WRITELINE(*this, gaelco2_state, coin1_counter_w))
@@ -1603,7 +1603,7 @@ MACHINE_CONFIG_START(gaelco2_state::maniacsqs)
MCFG_DEVICE_PROGRAM_MAP(snowboar_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", gaelco2_state, irq6_line_hold)
- MCFG_EEPROM_SERIAL_93C66_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C66_16BIT)
MCFG_DEVICE_ADD("mainlatch", LS259, 0)
MCFG_ADDRESSABLE_LATCH_Q0_OUT_CB(WRITELINE(*this, gaelco2_state, coin1_counter_w))
diff --git a/src/mame/drivers/gaelco3d.cpp b/src/mame/drivers/gaelco3d.cpp
index d9c1c228b93..848dfeaef82 100644
--- a/src/mame/drivers/gaelco3d.cpp
+++ b/src/mame/drivers/gaelco3d.cpp
@@ -938,8 +938,7 @@ MACHINE_CONFIG_START(gaelco3d_state::gaelco3d)
MCFG_DEVICE_PROGRAM_MAP(adsp_program_map)
MCFG_DEVICE_DATA_MAP(adsp_data_map)
- MCFG_EEPROM_SERIAL_93C66_ADD(m_eeprom)
- MCFG_EEPROM_SERIAL_ENABLE_STREAMING()
+ MCFG_DEVICE_ADD(m_eeprom, EEPROM_SERIAL_93C66_16BIT, EEPROM_SERIAL_ENABLE_STREAMING)
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
diff --git a/src/mame/drivers/galastrm.cpp b/src/mame/drivers/galastrm.cpp
index f861412d4a1..1f66067c340 100644
--- a/src/mame/drivers/galastrm.cpp
+++ b/src/mame/drivers/galastrm.cpp
@@ -206,7 +206,7 @@ MACHINE_CONFIG_START(galastrm_state::galastrm)
MCFG_DEVICE_PROGRAM_MAP(galastrm_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", galastrm_state, galastrm_interrupt) /* VBL */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("adc", ADC0809, 500000) // unknown clock
MCFG_ADC0808_EOC_FF_CB(INPUTLINE("maincpu", 6))
diff --git a/src/mame/drivers/galgames.cpp b/src/mame/drivers/galgames.cpp
index 970d7296238..4fc08cb3d80 100644
--- a/src/mame/drivers/galgames.cpp
+++ b/src/mame/drivers/galgames.cpp
@@ -158,7 +158,7 @@ protected:
DEFINE_DEVICE_TYPE(GALGAMES_BIOS_CART, galgames_bios_cart_device, "galgames_bios_cart", "Galaxy Games BIOS Cartridge")
MACHINE_CONFIG_START(galgames_bios_cart_device::device_add_mconfig)
- MCFG_EEPROM_SERIAL_93C76_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C76_8BIT)
MACHINE_CONFIG_END
#define MCFG_GALGAMES_BIOS_CART_ADD(_tag, _cart) \
@@ -188,7 +188,7 @@ MACHINE_CONFIG_START(galgames_starpak2_cart_device::device_add_mconfig)
MCFG_PIC16C5x_READ_B_CB( READ8( *this, galgames_cart_device, int_pic_data_r))
MCFG_PIC16C5x_WRITE_B_CB(WRITE8(*this, galgames_cart_device, int_pic_data_w))
- MCFG_EEPROM_SERIAL_93C76_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C76_8BIT)
MACHINE_CONFIG_END
#define MCFG_GALGAMES_STARPAK2_CART_ADD(_tag, _cart) \
@@ -220,7 +220,7 @@ MACHINE_CONFIG_START(galgames_starpak3_cart_device::device_add_mconfig)
MCFG_PIC16C5x_READ_B_CB( READ8( *this, galgames_cart_device, int_pic_data_r))
MCFG_PIC16C5x_WRITE_B_CB(WRITE8(*this, galgames_cart_device, int_pic_data_w))
- MCFG_EEPROM_SERIAL_93C76_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C76_8BIT)
MACHINE_CONFIG_END
#define MCFG_GALGAMES_STARPAK3_CART_ADD(_tag, _cart) \
diff --git a/src/mame/drivers/galpani2.cpp b/src/mame/drivers/galpani2.cpp
index 0097127de1a..e8d8bb16479 100644
--- a/src/mame/drivers/galpani2.cpp
+++ b/src/mame/drivers/galpani2.cpp
@@ -633,7 +633,7 @@ MACHINE_CONFIG_START(galpani2_state::galpani2)
MCFG_DEVICE_PROGRAM_MAP(galpani2_mem2)
MCFG_TIMER_DRIVER_ADD_SCANLINE("s_scantimer", galpani2_state, galpani2_interrupt2, "screen", 0, 1)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/galpani3.cpp b/src/mame/drivers/galpani3.cpp
index fdf1401ed48..7837c170c55 100644
--- a/src/mame/drivers/galpani3.cpp
+++ b/src/mame/drivers/galpani3.cpp
@@ -442,7 +442,7 @@ MACHINE_CONFIG_START(galpani3_state::galpani3)
//MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 64*8-1)
MCFG_SCREEN_UPDATE_DRIVER(galpani3_state, screen_update_galpani3)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/gcpinbal.cpp b/src/mame/drivers/gcpinbal.cpp
index 34252bd0d76..065dfe1543f 100644
--- a/src/mame/drivers/gcpinbal.cpp
+++ b/src/mame/drivers/gcpinbal.cpp
@@ -369,7 +369,7 @@ MACHINE_CONFIG_START(gcpinbal_state::gcpinbal)
MCFG_DEVICE_PROGRAM_MAP(gcpinbal_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", gcpinbal_state, gcpinbal_interrupt)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("watchdog", MB3773, 0)
diff --git a/src/mame/drivers/gijoe.cpp b/src/mame/drivers/gijoe.cpp
index 711f5aebef0..abefb68e384 100644
--- a/src/mame/drivers/gijoe.cpp
+++ b/src/mame/drivers/gijoe.cpp
@@ -301,7 +301,7 @@ MACHINE_CONFIG_START(gijoe_state::gijoe)
MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(32'000'000)/4) /* Amuse & confirmed. Z80E at 8MHz */
MCFG_DEVICE_PROGRAM_MAP(sound_map)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/groundfx.cpp b/src/mame/drivers/groundfx.cpp
index 457cce66383..7a43f78930b 100644
--- a/src/mame/drivers/groundfx.cpp
+++ b/src/mame/drivers/groundfx.cpp
@@ -242,7 +242,7 @@ MACHINE_CONFIG_START(groundfx_state::groundfx)
MCFG_DEVICE_PROGRAM_MAP(groundfx_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", groundfx_state, interrupt)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("adc", ADC0809, 500000) // unknown clock
MCFG_ADC0808_EOC_FF_CB(INPUTLINE("maincpu", 5))
diff --git a/src/mame/drivers/gticlub.cpp b/src/mame/drivers/gticlub.cpp
index cb3a8bde3ab..3d19ac0f4e3 100644
--- a/src/mame/drivers/gticlub.cpp
+++ b/src/mame/drivers/gticlub.cpp
@@ -971,7 +971,7 @@ MACHINE_CONFIG_START(gticlub_state::gticlub)
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
- MCFG_EEPROM_SERIAL_93C56_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C56_16BIT)
MCFG_MACHINE_START_OVERRIDE(gticlub_state,gticlub)
MCFG_MACHINE_RESET_OVERRIDE(gticlub_state,gticlub)
@@ -1083,7 +1083,7 @@ MACHINE_CONFIG_START(gticlub_state::hangplt)
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
- MCFG_EEPROM_SERIAL_93C56_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C56_16BIT)
MCFG_MACHINE_START_OVERRIDE(gticlub_state,gticlub)
MCFG_MACHINE_RESET_OVERRIDE(gticlub_state,hangplt)
diff --git a/src/mame/drivers/gunbustr.cpp b/src/mame/drivers/gunbustr.cpp
index bf67867c66f..212752a03a6 100644
--- a/src/mame/drivers/gunbustr.cpp
+++ b/src/mame/drivers/gunbustr.cpp
@@ -235,7 +235,7 @@ MACHINE_CONFIG_START(gunbustr_state::gunbustr)
MCFG_DEVICE_PROGRAM_MAP(gunbustr_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", gunbustr_state, gunbustr_interrupt) /* VBL */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("tc0510nio", TC0510NIO, 0)
MCFG_TC0510NIO_READ_0_CB(IOPORT("EXTRA"))
diff --git a/src/mame/drivers/hornet.cpp b/src/mame/drivers/hornet.cpp
index 2baf5406db6..2201267c2de 100644
--- a/src/mame/drivers/hornet.cpp
+++ b/src/mame/drivers/hornet.cpp
@@ -1078,7 +1078,7 @@ MACHINE_CONFIG_START(hornet_state::hornet)
MCFG_WATCHDOG_ADD("watchdog")
// PCB description at top doesn't mention any EEPROM on the base board...
-// MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+// MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("voodoo0", VOODOO_1, STD_VOODOO_1_CLOCK)
MCFG_VOODOO_FBMEM(2)
@@ -1210,7 +1210,7 @@ MACHINE_CONFIG_START(hornet_state::sscope2)
hornet_2board_v2(config);
MCFG_DEVICE_ADD("lan_serial_id", DS2401)
- MCFG_EEPROM_SERIAL_93C46_ADD("lan_eeprom")
+ MCFG_DEVICE_ADD("lan_eeprom", EEPROM_SERIAL_93C46_16BIT)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/indigo.cpp b/src/mame/drivers/indigo.cpp
index ee9c2ad581a..b39ffe1e391 100644
--- a/src/mame/drivers/indigo.cpp
+++ b/src/mame/drivers/indigo.cpp
@@ -611,7 +611,7 @@ MACHINE_CONFIG_START(indigo_state::indigo3k)
MCFG_LEGACY_SCSI_PORT("scsi")
MCFG_WD33C93_IRQ_CB(WRITELINE(*this, indigo_state, scsi_irq)) /* command completion IRQ */
- MCFG_EEPROM_SERIAL_93C56_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C56_16BIT)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(indigo_state::indigo4k)
diff --git a/src/mame/drivers/inufuku.cpp b/src/mame/drivers/inufuku.cpp
index aea4d7c3cca..8611fd52628 100644
--- a/src/mame/drivers/inufuku.cpp
+++ b/src/mame/drivers/inufuku.cpp
@@ -346,7 +346,7 @@ MACHINE_CONFIG_START(inufuku_state::inufuku)
/* IRQs are triggered by the YM2610 */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/invqix.cpp b/src/mame/drivers/invqix.cpp
index 6cd5a22edd2..8e7f3e04730 100644
--- a/src/mame/drivers/invqix.cpp
+++ b/src/mame/drivers/invqix.cpp
@@ -355,8 +355,8 @@ MACHINE_CONFIG_START(invqix_state::invqix)
MCFG_SOUND_ROUTE(0, "lspeaker", 0.80)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.80)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DEFAULT_VALUE(0)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DEFAULT_VALUE(0)
MACHINE_CONFIG_END
ROM_START( invqix )
diff --git a/src/mame/drivers/jackpool.cpp b/src/mame/drivers/jackpool.cpp
index e2da694eefd..d69d8a839ea 100644
--- a/src/mame/drivers/jackpool.cpp
+++ b/src/mame/drivers/jackpool.cpp
@@ -262,7 +262,7 @@ MACHINE_CONFIG_START(jackpool_state::jackpool)
MCFG_ADDRESSABLE_LATCH_Q1_OUT_CB(WRITELINE("eeprom", eeprom_serial_93cxx_device, clk_write))
MCFG_ADDRESSABLE_LATCH_Q2_OUT_CB(WRITELINE("eeprom", eeprom_serial_93cxx_device, di_write))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("uart", NS16550, 1843200) // exact type and clock unknown
diff --git a/src/mame/drivers/jaguar.cpp b/src/mame/drivers/jaguar.cpp
index 3835509d78e..3d2cec851b1 100644
--- a/src/mame/drivers/jaguar.cpp
+++ b/src/mame/drivers/jaguar.cpp
@@ -1944,7 +1944,7 @@ MACHINE_CONFIG_START(jaguar_state::jaguar)
/* software lists */
MCFG_SOFTWARE_LIST_ADD("cart_list","jaguar")
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(jaguar_state::jaguarcd)
diff --git a/src/mame/drivers/jchan.cpp b/src/mame/drivers/jchan.cpp
index 39e7eed0640..9a0f0962b62 100644
--- a/src/mame/drivers/jchan.cpp
+++ b/src/mame/drivers/jchan.cpp
@@ -634,7 +634,7 @@ MACHINE_CONFIG_START(jchan_state::jchan)
MCFG_DEVICE_ADD("toybox", KANEKO_TOYBOX, 0)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* sound hardware */
SPEAKER(config, "lspeaker").front_left();
diff --git a/src/mame/drivers/jclub2.cpp b/src/mame/drivers/jclub2.cpp
index b01af988bb8..80931711efb 100644
--- a/src/mame/drivers/jclub2.cpp
+++ b/src/mame/drivers/jclub2.cpp
@@ -1141,7 +1141,7 @@ MACHINE_CONFIG_START(jclub2o_state::jclub2o)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", jclub2o_state, irq0_line_hold)
MCFG_NVRAM_ADD_0FILL("nvram")
- MCFG_EEPROM_SERIAL_S29290_ADD("eeprom") // S-29290 (16 bits)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_S29290_16BIT)
MCFG_WATCHDOG_ADD("watchdog")
MCFG_TICKET_DISPENSER_ADD("hopper1", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH)
@@ -1175,7 +1175,7 @@ MACHINE_CONFIG_START(jclub2_state::jclub2)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", common_state, scanline_irq, "screen", 0, 1)
MCFG_NVRAM_ADD_0FILL("nvram")
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom") // 93C46 ( 8 bits)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT) // 93C46 ( 8 bits)
MCFG_WATCHDOG_ADD("watchdog")
MCFG_TICKET_DISPENSER_ADD("hopper1", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH)
@@ -1210,7 +1210,7 @@ MACHINE_CONFIG_START(darkhors_state::darkhors)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", common_state, scanline_irq, "screen", 0, 1)
MCFG_NVRAM_ADD_0FILL("nvram")
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
MCFG_WATCHDOG_ADD("watchdog")
MCFG_TICKET_DISPENSER_ADD("hopper1", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH)
diff --git a/src/mame/drivers/joystand.cpp b/src/mame/drivers/joystand.cpp
index d0bc240abf6..c0c30f5f27a 100644
--- a/src/mame/drivers/joystand.cpp
+++ b/src/mame/drivers/joystand.cpp
@@ -632,7 +632,7 @@ MACHINE_CONFIG_START(joystand_state::joystand)
MCFG_TMS_29F040_ADD("cart.u12")
// devices
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("rtc", MSM6242, XTAL(32'768))
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/kaneko16.cpp b/src/mame/drivers/kaneko16.cpp
index 765e1f6d0c3..0cae192e9f8 100644
--- a/src/mame/drivers/kaneko16.cpp
+++ b/src/mame/drivers/kaneko16.cpp
@@ -1848,7 +1848,7 @@ MACHINE_CONFIG_START(kaneko16_state::bakubrkr)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", kaneko16_state, kaneko16_interrupt, "screen", 0, 1)
MCFG_MACHINE_RESET_OVERRIDE(kaneko16_state,gtmr)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_WATCHDOG_ADD("watchdog")
@@ -2060,7 +2060,7 @@ MACHINE_CONFIG_START(kaneko16_gtmr_state::gtmr)
MCFG_MACHINE_RESET_OVERRIDE(kaneko16_gtmr_state,gtmr)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_WATCHDOG_ADD("watchdog")
@@ -2188,7 +2188,7 @@ MACHINE_CONFIG_START(kaneko16_state::mgcrystl)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", kaneko16_state, kaneko16_interrupt, "screen", 0, 1)
MCFG_MACHINE_RESET_OVERRIDE(kaneko16_state,mgcrystl)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_WATCHDOG_ADD("watchdog")
@@ -2309,8 +2309,8 @@ MACHINE_CONFIG_START(kaneko16_shogwarr_state::shogwarr)
MCFG_MACHINE_RESET_OVERRIDE(kaneko16_shogwarr_state,mgcrystl)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DATA(shogwarr_default_eeprom, 128)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DATA(shogwarr_default_eeprom, 128)
MCFG_WATCHDOG_ADD("watchdog")
@@ -2387,8 +2387,8 @@ MACHINE_CONFIG_START(kaneko16_shogwarr_state::brapboys)
MCFG_KANEKO_HIT_TYPE(2)
MCFG_DEVICE_REMOVE("eeprom")
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DATA(brapboys_default_eeprom, 128)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DATA(brapboys_default_eeprom, 128)
MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/kickgoal.cpp b/src/mame/drivers/kickgoal.cpp
index 03d4dd86b70..4f0fd31529b 100644
--- a/src/mame/drivers/kickgoal.cpp
+++ b/src/mame/drivers/kickgoal.cpp
@@ -645,8 +645,8 @@ MACHINE_CONFIG_START(kickgoal_state::kickgoal)
MCFG_DEVICE_DISABLE() /* Disabled since the internal rom isn't dumped */
/* Program and Data Maps are internal to the MCU */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DATA(kickgoal_default_eeprom_type1, 128)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DATA(kickgoal_default_eeprom_type1, 128)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -684,8 +684,8 @@ MACHINE_CONFIG_START(kickgoal_state::actionhw)
MCFG_DEVICE_DISABLE() /* Disabled since the internal rom isn't dumped */
/* Program and Data Maps are internal to the MCU */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DATA(kickgoal_default_eeprom_type1, 128)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DATA(kickgoal_default_eeprom_type1, 128)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/konamigq.cpp b/src/mame/drivers/konamigq.cpp
index 45acd6e35bb..c5d9e2f5601 100644
--- a/src/mame/drivers/konamigq.cpp
+++ b/src/mame/drivers/konamigq.cpp
@@ -349,8 +349,8 @@ MACHINE_CONFIG_START(konamigq_state::konamigq)
MCFG_MACHINE_RESET_OVERRIDE(konamigq_state, konamigq)
MCFG_DEVICE_ADD("mb89371", MB89371, 0)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DATA(konamigq_def_eeprom, 128)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DATA(konamigq_def_eeprom, 128)
MCFG_DEVICE_ADD("scsi", SCSI_PORT, 0)
MCFG_SCSIDEV_ADD("scsi:" SCSI_PORT_DEVICE1, "harddisk", SCSIHD, SCSI_ID_0)
diff --git a/src/mame/drivers/konamigv.cpp b/src/mame/drivers/konamigv.cpp
index f7944aaabf0..58fbcecf564 100644
--- a/src/mame/drivers/konamigv.cpp
+++ b/src/mame/drivers/konamigv.cpp
@@ -367,7 +367,7 @@ MACHINE_CONFIG_START(konamigv_state::konamigv)
MCFG_PSX_DMA_CHANNEL_WRITE( "maincpu", 5, psxdma_device::write_delegate(&konamigv_state::scsi_dma_write, this ) )
MCFG_DEVICE_ADD("mb89371", MB89371, 0)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("scsi", SCSI_PORT, 0)
MCFG_SCSIDEV_ADD("scsi:" SCSI_PORT_DEVICE1, "cdrom", SCSICD, SCSI_ID_4)
diff --git a/src/mame/drivers/konamigx.cpp b/src/mame/drivers/konamigx.cpp
index f08967a5dcf..1c3df354694 100644
--- a/src/mame/drivers/konamigx.cpp
+++ b/src/mame/drivers/konamigx.cpp
@@ -1633,7 +1633,7 @@ MACHINE_CONFIG_START(konamigx_state::konamigx)
MCFG_MACHINE_START_OVERRIDE(konamigx_state,konamigx)
MCFG_MACHINE_RESET_OVERRIDE(konamigx_state,konamigx)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/konendev.cpp b/src/mame/drivers/konendev.cpp
index b6b6b11027b..9d75678d64d 100644
--- a/src/mame/drivers/konendev.cpp
+++ b/src/mame/drivers/konendev.cpp
@@ -327,7 +327,7 @@ MACHINE_CONFIG_START(konendev_state::konendev)
MCFG_NVRAM_ADD_0FILL("nvram0")
MCFG_NVRAM_ADD_0FILL("nvram1")
- MCFG_EEPROM_SERIAL_93C56_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C56_16BIT)
/* sound hardware */
SPEAKER(config, "lspeaker").front_left();
diff --git a/src/mame/drivers/leland.cpp b/src/mame/drivers/leland.cpp
index 98361e33364..d9e9c56b8ec 100644
--- a/src/mame/drivers/leland.cpp
+++ b/src/mame/drivers/leland.cpp
@@ -990,7 +990,7 @@ MACHINE_CONFIG_START(leland_state::leland)
MCFG_DEVICE_PROGRAM_MAP(slave_small_map_program)
MCFG_DEVICE_IO_MAP(slave_map_io)
- MCFG_EEPROM_SERIAL_93C46_ADD(m_eeprom)
+ MCFG_DEVICE_ADD(m_eeprom, EEPROM_SERIAL_93C46_16BIT)
MCFG_NVRAM_ADD_0FILL("battery")
/* video hardware */
@@ -1061,8 +1061,7 @@ MACHINE_CONFIG_START(ataxx_state::ataxx)
MCFG_DEVICE_PROGRAM_MAP(slave_map_program)
MCFG_DEVICE_IO_MAP(slave_map_io_2)
- MCFG_EEPROM_SERIAL_93C56_ADD(m_eeprom)
- MCFG_EEPROM_SERIAL_ENABLE_STREAMING()
+ MCFG_DEVICE_ADD(m_eeprom, EEPROM_SERIAL_93C56_16BIT, EEPROM_SERIAL_ENABLE_STREAMING)
MCFG_NVRAM_ADD_0FILL("battery")
diff --git a/src/mame/drivers/lethal.cpp b/src/mame/drivers/lethal.cpp
index fc6bb3b2341..4ec1cc54ecb 100644
--- a/src/mame/drivers/lethal.cpp
+++ b/src/mame/drivers/lethal.cpp
@@ -506,7 +506,7 @@ MACHINE_CONFIG_START(lethal_state::lethalen)
MCFG_ADDRESS_MAP_BANK_ADDR_WIDTH(16)
MCFG_ADDRESS_MAP_BANK_STRIDE(0x4000)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/limenko.cpp b/src/mame/drivers/limenko.cpp
index 864900ddc80..224673d5998 100644
--- a/src/mame/drivers/limenko.cpp
+++ b/src/mame/drivers/limenko.cpp
@@ -708,7 +708,7 @@ MACHINE_CONFIG_START(limenko_state::limenko)
MCFG_DEVICE_IO_MAP(limenko_io_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", limenko_state, irq0_line_hold)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -753,7 +753,7 @@ MACHINE_CONFIG_START(limenko_state::spotty)
MCFG_MCS51_PORT_P3_IN_CB(READ8(*this, limenko_state, spotty_sound_cmd_r))
MCFG_MCS51_PORT_P3_OUT_CB(WRITE8(*this, limenko_state, spotty_sound_cmd_w)) //not sure about anything...
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/lordgun.cpp b/src/mame/drivers/lordgun.cpp
index 43b7776ef1b..dd646a77d8f 100644
--- a/src/mame/drivers/lordgun.cpp
+++ b/src/mame/drivers/lordgun.cpp
@@ -662,7 +662,7 @@ MACHINE_CONFIG_START(lordgun_state::lordgun)
MCFG_I8255_IN_PORTC_CB(IOPORT("COIN"))
MCFG_I8255_OUT_PORTC_CB(WRITE8(*this, lordgun_state, fake_w))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -714,7 +714,7 @@ MACHINE_CONFIG_START(lordgun_state::aliencha)
MCFG_I8255_IN_PORTC_CB(IOPORT("COIN"))
MCFG_I8255_OUT_PORTC_CB(WRITE8(*this, lordgun_state, fake_w))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/metro.cpp b/src/mame/drivers/metro.cpp
index ba8104cc46c..0a443478dcb 100644
--- a/src/mame/drivers/metro.cpp
+++ b/src/mame/drivers/metro.cpp
@@ -3444,7 +3444,7 @@ MACHINE_CONFIG_START(metro_state::dokyusp)
MCFG_DEVICE_PROGRAM_MAP(dokyusp_map)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(metro_state,metro_irq_callback)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_WATCHDOG_ADD("watchdog")
@@ -3472,7 +3472,7 @@ MACHINE_CONFIG_START(metro_state::gakusai)
MCFG_DEVICE_PROGRAM_MAP(gakusai_map)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(metro_state,metro_irq_callback)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_WATCHDOG_ADD("watchdog")
@@ -3501,7 +3501,7 @@ MACHINE_CONFIG_START(metro_state::gakusai2)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(metro_state,metro_irq_callback)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/microterm.cpp b/src/mame/drivers/microterm.cpp
index 0082bd78aba..5924dda5bd3 100644
--- a/src/mame/drivers/microterm.cpp
+++ b/src/mame/drivers/microterm.cpp
@@ -105,7 +105,7 @@ MACHINE_CONFIG_START(microterm_state::mt420)
MCFG_DEVICE_ADD("aci", MC2661, XTAL(3'686'400)) // SCN2641
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_EEPROM_SERIAL_DO_CALLBACK(WRITELINE("duart", scn2681_device, ip6_w))
MCFG_SCREEN_ADD("screen", RASTER)
@@ -135,10 +135,10 @@ MACHINE_CONFIG_START(microterm_state::mt5510)
MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE("eeprom1", eeprom_serial_93cxx_device, clk_write)) MCFG_DEVCB_BIT(3)
MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE("eeprom2", eeprom_serial_93cxx_device, clk_write)) MCFG_DEVCB_BIT(3)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom1")
+ MCFG_DEVICE_ADD("eeprom1", EEPROM_SERIAL_93C46_16BIT)
MCFG_EEPROM_SERIAL_DO_CALLBACK(WRITELINE("duart", scn2681_device, ip6_w))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom2")
+ MCFG_DEVICE_ADD("eeprom2", EEPROM_SERIAL_93C46_16BIT)
MCFG_EEPROM_SERIAL_DO_CALLBACK(WRITELINE("duart", scn2681_device, ip5_w))
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/midas.cpp b/src/mame/drivers/midas.cpp
index e0624bbc24d..18f7bdd2c3d 100644
--- a/src/mame/drivers/midas.cpp
+++ b/src/mame/drivers/midas.cpp
@@ -635,7 +635,7 @@ MACHINE_CONFIG_START(midas_state::livequiz)
MCFG_DEVICE_PROGRAM_MAP(livequiz_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", midas_state, irq1_line_hold)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -664,7 +664,7 @@ MACHINE_CONFIG_START(midas_state::hammer)
MCFG_DEVICE_PROGRAM_MAP(hammer_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", midas_state, irq1_line_hold)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TICKET_DISPENSER_ADD("prize1", attotime::from_msec(1000*5), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW )
MCFG_TICKET_DISPENSER_ADD("prize2", attotime::from_msec(1000*5), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW )
diff --git a/src/mame/drivers/mirage.cpp b/src/mame/drivers/mirage.cpp
index 54363339608..12ea49b8e16 100644
--- a/src/mame/drivers/mirage.cpp
+++ b/src/mame/drivers/mirage.cpp
@@ -295,7 +295,7 @@ MACHINE_CONFIG_START(miragemj_state::mirage)
MCFG_DEVICE_PROGRAM_MAP(mirage_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", miragemj_state, irq6_line_hold)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom") // 93C45
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT) // 93C45
/* video hardware */
MCFG_DEVICE_ADD("spriteram", BUFFERED_SPRITERAM16)
diff --git a/src/mame/drivers/mitchell.cpp b/src/mame/drivers/mitchell.cpp
index fc10f1b7566..638acd117eb 100644
--- a/src/mame/drivers/mitchell.cpp
+++ b/src/mame/drivers/mitchell.cpp
@@ -1172,7 +1172,7 @@ MACHINE_CONFIG_START(mitchell_state::mgakuen)
MCFG_MACHINE_START_OVERRIDE(mitchell_state,mitchell)
MCFG_MACHINE_RESET_OVERRIDE(mitchell_state,mitchell)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -1213,7 +1213,7 @@ MACHINE_CONFIG_START(mitchell_state::pang)
MCFG_MACHINE_START_OVERRIDE(mitchell_state,mitchell)
MCFG_MACHINE_RESET_OVERRIDE(mitchell_state,mitchell)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -1368,7 +1368,7 @@ MACHINE_CONFIG_START(mitchell_state::marukin)
MCFG_DEVICE_OPCODES_MAP(decrypted_opcodes_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", mitchell_state, mitchell_irq, "screen", 0, 1)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -1423,7 +1423,7 @@ MACHINE_CONFIG_START(mitchell_state::pkladiesbl)
MCFG_DEVICE_OPCODES_MAP(decrypted_opcodes_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", mitchell_state, mitchell_irq, "screen", 0, 1)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/model2.cpp b/src/mame/drivers/model2.cpp
index 990fb90579b..704e05808c4 100644
--- a/src/mame/drivers/model2.cpp
+++ b/src/mame/drivers/model2.cpp
@@ -2637,7 +2637,7 @@ MACHINE_CONFIG_START(model2a_state::model2a)
MCFG_MACHINE_START_OVERRIDE(model2_tgp_state,model2_tgp)
MCFG_MACHINE_RESET_OVERRIDE(model2a_state,model2a)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_NVRAM_ADD_1FILL("backup1")
MCFG_DEVICE_ADD("io", SEGA_315_5649, 0)
@@ -2750,7 +2750,7 @@ MACHINE_CONFIG_START(model2b_state::model2b)
MCFG_MACHINE_START_OVERRIDE(model2b_state,model2b)
MCFG_MACHINE_RESET_OVERRIDE(model2b_state,model2b)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_NVRAM_ADD_1FILL("backup1")
MCFG_DEVICE_ADD("io", SEGA_315_5649, 0)
@@ -2865,7 +2865,7 @@ MACHINE_CONFIG_START(model2c_state::model2c)
MCFG_MACHINE_START_OVERRIDE(model2c_state,model2c)
MCFG_MACHINE_RESET_OVERRIDE(model2c_state,model2c)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_NVRAM_ADD_1FILL("backup1")
MCFG_DEVICE_ADD("io", SEGA_315_5649, 0)
diff --git a/src/mame/drivers/model3.cpp b/src/mame/drivers/model3.cpp
index 2bc82096694..8f5500a0778 100644
--- a/src/mame/drivers/model3.cpp
+++ b/src/mame/drivers/model3.cpp
@@ -5759,7 +5759,7 @@ MACHINE_CONFIG_START(model3_state::model3_10)
MCFG_MACHINE_START_OVERRIDE(model3_state,model3_10)
MCFG_MACHINE_RESET_OVERRIDE(model3_state,model3_10)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_NVRAM_ADD_1FILL("backup")
MCFG_DEVICE_ADD("rtc", RTC72421, XTAL(32'768)) // internal oscillator
@@ -5806,7 +5806,7 @@ MACHINE_CONFIG_START(model3_state::model3_15)
MCFG_MACHINE_START_OVERRIDE(model3_state,model3_15)
MCFG_MACHINE_RESET_OVERRIDE(model3_state,model3_15)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_NVRAM_ADD_1FILL("backup")
MCFG_DEVICE_ADD("rtc", RTC72421, XTAL(32'768)) // internal oscillator
@@ -5869,7 +5869,7 @@ MACHINE_CONFIG_START(model3_state::model3_20)
MCFG_MACHINE_START_OVERRIDE(model3_state, model3_20)
MCFG_MACHINE_RESET_OVERRIDE(model3_state, model3_20)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_NVRAM_ADD_1FILL("backup")
MCFG_DEVICE_ADD("rtc", RTC72421, XTAL(32'768)) // internal oscillator
@@ -5934,7 +5934,7 @@ MACHINE_CONFIG_START(model3_state::model3_21)
MCFG_MACHINE_START_OVERRIDE(model3_state, model3_21)
MCFG_MACHINE_RESET_OVERRIDE(model3_state, model3_21)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_NVRAM_ADD_1FILL("backup")
MCFG_DEVICE_ADD("rtc", RTC72421, XTAL(32'768)) // internal oscillator
diff --git a/src/mame/drivers/moo.cpp b/src/mame/drivers/moo.cpp
index c7e36e9abba..0f3fda2896a 100644
--- a/src/mame/drivers/moo.cpp
+++ b/src/mame/drivers/moo.cpp
@@ -507,7 +507,7 @@ MACHINE_CONFIG_START(moo_state::moo)
MCFG_MACHINE_START_OVERRIDE(moo_state,moo)
MCFG_MACHINE_RESET_OVERRIDE(moo_state,moo)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
MCFG_DEVICE_ADD("k053252", K053252, XTAL(32'000'000)/4) // 8MHz
MCFG_K053252_OFFSETS(40, 16)
@@ -567,7 +567,7 @@ MACHINE_CONFIG_START(moo_state::moobl)
MCFG_MACHINE_START_OVERRIDE(moo_state,moo)
MCFG_MACHINE_RESET_OVERRIDE(moo_state,moo)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/mystwarr.cpp b/src/mame/drivers/mystwarr.cpp
index 6e13c8c48ca..ef14d0efdd9 100644
--- a/src/mame/drivers/mystwarr.cpp
+++ b/src/mame/drivers/mystwarr.cpp
@@ -952,7 +952,7 @@ MACHINE_CONFIG_START(mystwarr_state::mystwarr)
MCFG_QUANTUM_TIME(attotime::from_hz(1920))
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
MCFG_DEVICE_ADD("k053252", K053252, 6000000) // 6 MHz?
MCFG_K053252_OFFSETS(24, 16)
diff --git a/src/mame/drivers/naomi.cpp b/src/mame/drivers/naomi.cpp
index 0eb7c5a80b0..b5675234f3d 100644
--- a/src/mame/drivers/naomi.cpp
+++ b/src/mame/drivers/naomi.cpp
@@ -2939,8 +2939,8 @@ MACHINE_CONFIG_START(naomi_state::naomi_base)
MCFG_DEVICE_PROGRAM_MAP(naomi_map)
MCFG_DEVICE_IO_MAP(naomi_port)
- MCFG_EEPROM_SERIAL_93C46_ADD("main_eeprom")
- MCFG_EEPROM_SERIAL_DEFAULT_VALUE(0)
+ MCFG_DEVICE_ADD("main_eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DEFAULT_VALUE(0)
// high probable this MCU uses one of "fast Z80" cores, like ASCII R800, Kawasaki KC80 or similar, where clocks per instructions is much different from regular Z80.
// was made few attempts to measure CPU core clock using different methods (in term of "regular Z80" clock and cycles):
@@ -2950,7 +2950,7 @@ MACHINE_CONFIG_START(naomi_state::naomi_base)
// for now we use higher clock, otherwise earlier NAOMI BIOS revisions will not boot (see MT#06552).
MCFG_MIE_ADD("mie", 16000000, "maple_dc", 0, nullptr, nullptr, nullptr, ":MIE.3", nullptr, ":MIE.5", nullptr, nullptr)
MCFG_SEGA_837_13551_DEVICE_ADD("837_13551", "mie", ":TILT", ":P1", ":P2", ":A0", ":A1", ":A2", ":A3", ":A4", ":A5", ":A6", ":A7", ":OUTPUT")
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("mie_eeprom")
+ MCFG_DEVICE_ADD("mie_eeprom", EEPROM_SERIAL_93C46_8BIT)
MCFG_X76F100_ADD("naomibd_eeprom")
MCFG_M3COMM_ADD("comm_board")
diff --git a/src/mame/drivers/othunder.cpp b/src/mame/drivers/othunder.cpp
index 631801041f1..9168c1af617 100644
--- a/src/mame/drivers/othunder.cpp
+++ b/src/mame/drivers/othunder.cpp
@@ -613,7 +613,7 @@ MACHINE_CONFIG_START(othunder_state::othunder)
MCFG_DEVICE_ADD("audiocpu", Z80, 16_MHz_XTAL/2/2)
MCFG_DEVICE_PROGRAM_MAP(z80_sound_map)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("adc", ADC0808, 16_MHz_XTAL/2/2/8)
MCFG_ADC0808_EOC_CB(WRITELINE(*this, othunder_state, adc_eoc_w))
diff --git a/src/mame/drivers/overdriv.cpp b/src/mame/drivers/overdriv.cpp
index 62da9f59dc6..144acf05e3c 100644
--- a/src/mame/drivers/overdriv.cpp
+++ b/src/mame/drivers/overdriv.cpp
@@ -344,8 +344,8 @@ MACHINE_CONFIG_START(overdriv_state::overdriv)
MCFG_QUANTUM_TIME(attotime::from_hz(12000))
- MCFG_EEPROM_SERIAL_ER5911_16BIT_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DATA(overdriv_default_eeprom, 128)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_16BIT)
+ MCFG_EEPROM_DATA(overdriv_default_eeprom, 128)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/pasha2.cpp b/src/mame/drivers/pasha2.cpp
index 5dc00b784b2..39d15292a39 100644
--- a/src/mame/drivers/pasha2.cpp
+++ b/src/mame/drivers/pasha2.cpp
@@ -405,7 +405,7 @@ MACHINE_CONFIG_START(pasha2_state::pasha2)
MCFG_DEVICE_ADD("audiocpu", I80C52, 12000000) /* actually AT89C52; clock from docs */
/* TODO : ports are unimplemented; P0,P1,P2,P3 and Serial Port Used */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/photoply.cpp b/src/mame/drivers/photoply.cpp
index 7e6d8386c82..8bb1d70bd0d 100644
--- a/src/mame/drivers/photoply.cpp
+++ b/src/mame/drivers/photoply.cpp
@@ -325,7 +325,7 @@ MACHINE_CONFIG_START(photoply_state::photoply)
MCFG_DEVICE_ADD("vga", CIRRUS_GD5446, 0)
MCFG_VIDEO_SET_SCREEN("screen")
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_EEPROM_WRITE_TIME(attotime::from_usec(1))
MCFG_EEPROM_ERASE_ALL_TIME(attotime::from_usec(10))
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/pirates.cpp b/src/mame/drivers/pirates.cpp
index 93a5a31c029..54d4074c4b0 100644
--- a/src/mame/drivers/pirates.cpp
+++ b/src/mame/drivers/pirates.cpp
@@ -257,7 +257,7 @@ MACHINE_CONFIG_START(pirates_state::pirates)
MCFG_DEVICE_PROGRAM_MAP(pirates_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", pirates_state, irq1_line_hold)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_pirates)
diff --git a/src/mame/drivers/playmark.cpp b/src/mame/drivers/playmark.cpp
index af32da0c41c..c00865ac865 100644
--- a/src/mame/drivers/playmark.cpp
+++ b/src/mame/drivers/playmark.cpp
@@ -1136,8 +1136,8 @@ MACHINE_CONFIG_START(playmark_state::wbeachvl)
MCFG_PIC16C5x_WRITE_C_CB(WRITE8(*this, playmark_state, playmark_snd_control_w))
// MCFG_PIC16C5x_WRITE_C_CB(WRITE8(*this, playmark_state, hrdtimes_snd_control_w)) // probably closer to this, but this only supports 2 sample bank bits
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DEFAULT_VALUE(0)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DEFAULT_VALUE(0)
MCFG_MACHINE_START_OVERRIDE(playmark_state,playmark)
MCFG_MACHINE_RESET_OVERRIDE(playmark_state,playmark)
@@ -1260,8 +1260,8 @@ MACHINE_CONFIG_START(playmark_state::hotmind)
MCFG_PIC16C5x_READ_C_CB(READ8(*this, playmark_state, playmark_snd_flag_r))
MCFG_PIC16C5x_WRITE_C_CB(WRITE8(*this, playmark_state, hrdtimes_snd_control_w))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DEFAULT_VALUE(0)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DEFAULT_VALUE(0)
MCFG_MACHINE_START_OVERRIDE(playmark_state,playmark)
MCFG_MACHINE_RESET_OVERRIDE(playmark_state,playmark)
diff --git a/src/mame/drivers/plygonet.cpp b/src/mame/drivers/plygonet.cpp
index 13fd6635885..8a083e38eb0 100644
--- a/src/mame/drivers/plygonet.cpp
+++ b/src/mame/drivers/plygonet.cpp
@@ -567,7 +567,7 @@ MACHINE_CONFIG_START(polygonet_state::plygonet)
MCFG_QUANTUM_PERFECT_CPU("maincpu") /* TODO: TEMPORARY! UNTIL A MORE LOCALIZED SYNC CAN BE MADE */
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/pntnpuzl.cpp b/src/mame/drivers/pntnpuzl.cpp
index 2ad00d4dbd6..096760764b3 100644
--- a/src/mame/drivers/pntnpuzl.cpp
+++ b/src/mame/drivers/pntnpuzl.cpp
@@ -353,7 +353,7 @@ MACHINE_CONFIG_START(pntnpuzl_state::pntnpuzl)
MCFG_DEVICE_ADD("maincpu", M68000, XTAL(12'000'000))
MCFG_DEVICE_PROGRAM_MAP(pntnpuzl_map)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("via", VIA6522, XTAL(12'000'000) / 10)
MCFG_VIA6522_READPA_HANDLER(IOPORT("IN2"))
diff --git a/src/mame/drivers/policetr.cpp b/src/mame/drivers/policetr.cpp
index 8ce78866957..4295a3baec9 100644
--- a/src/mame/drivers/policetr.cpp
+++ b/src/mame/drivers/policetr.cpp
@@ -89,11 +89,6 @@ PC5380-9651 5380-JY3306A 5380-N1045503A
#include "emu.h"
#include "includes/policetr.h"
-#include "cpu/mips/r3000.h"
-#include "machine/eepromser.h"
-#include "sound/bsmt2000.h"
-#include "speaker.h"
-
/* constants */
#define MASTER_CLOCK 48000000
@@ -156,8 +151,7 @@ WRITE32_MEMBER(policetr_state::control_w)
/* toggling BSMT off then on causes a reset */
if (!(old & 0x80000000) && (m_control_data & 0x80000000))
{
- bsmt2000_device *bsmt = machine().device<bsmt2000_device>("bsmt");
- bsmt->reset();
+ m_bsmt->reset();
}
/* log any unknown bits */
@@ -176,7 +170,7 @@ WRITE32_MEMBER(policetr_state::control_w)
WRITE32_MEMBER(policetr_state::policetr_bsmt2000_reg_w)
{
if (m_control_data & 0x80000000)
- machine().device<bsmt2000_device>("bsmt")->write_data(data);
+ m_bsmt->write_data(data);
else
COMBINE_DATA(&m_bsmt_data_offset);
}
@@ -184,20 +178,20 @@ WRITE32_MEMBER(policetr_state::policetr_bsmt2000_reg_w)
WRITE32_MEMBER(policetr_state::policetr_bsmt2000_data_w)
{
- machine().device<bsmt2000_device>("bsmt")->write_reg(data);
+ m_bsmt->write_reg(data);
COMBINE_DATA(&m_bsmt_data_bank);
}
CUSTOM_INPUT_MEMBER(policetr_state::bsmt_status_r)
{
- return machine().device<bsmt2000_device>("bsmt")->read_status();
+ return m_bsmt->read_status();
}
READ32_MEMBER(policetr_state::bsmt2000_data_r)
{
- return memregion("bsmt")->base()[m_bsmt_data_bank * 0x10000 + m_bsmt_data_offset] << 8;
+ return m_bsmt_region->base()[m_bsmt_data_bank * 0x10000 + m_bsmt_data_offset] << 8;
}
@@ -243,7 +237,7 @@ WRITE32_MEMBER(policetr_state::speedup_w)
void policetr_state::policetr_map(address_map &map)
{
- map(0x00000000, 0x0001ffff).ram().share("rambase");
+ map(0x00000000, 0x0001ffff).ram().share(m_rambase);
map(0x00200000, 0x0020000f).w(FUNC(policetr_state::policetr_video_w));
map(0x00400000, 0x00400003).r(FUNC(policetr_state::policetr_video_r));
map(0x00500000, 0x00500003).nopw(); // copies ROM here at startup, plus checksum
@@ -263,7 +257,7 @@ void policetr_state::policetr_map(address_map &map)
void policetr_state::sshooter_map(address_map &map)
{
- map(0x00000000, 0x0001ffff).ram().share("rambase");
+ map(0x00000000, 0x0001ffff).ram().share(m_rambase);
map(0x00200000, 0x00200003).w(FUNC(policetr_state::policetr_bsmt2000_data_w));
map(0x00300000, 0x00300003).w(FUNC(policetr_state::policetr_palette_offset_w));
map(0x00320000, 0x00320003).w(FUNC(policetr_state::policetr_palette_data_w));
@@ -315,7 +309,7 @@ static INPUT_PORTS_START( policetr )
PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_SERVICE( 0x00200000, IP_ACTIVE_LOW ) /* Not actually a dipswitch */
PORT_BIT( 0x00400000, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x00800000, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_CUSTOM_MEMBER(DEVICE_SELF, policetr_state,bsmt_status_r, nullptr)
+ PORT_BIT( 0x00800000, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_CUSTOM_MEMBER(DEVICE_SELF, policetr_state, bsmt_status_r, nullptr)
PORT_BIT( 0x01000000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x02000000, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04000000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
@@ -402,41 +396,37 @@ void policetr_state::machine_start()
MACHINE_CONFIG_START(policetr_state::policetr)
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", R3041, MASTER_CLOCK/2)
- MCFG_R3000_ENDIANNESS(ENDIANNESS_BIG)
- MCFG_DEVICE_PROGRAM_MAP(policetr_map)
- MCFG_DEVICE_VBLANK_INT_DRIVER("screen", policetr_state, irq4_gen)
+ device = &R3041(config, m_maincpu, MASTER_CLOCK/2);
+ m_maincpu->set_endianness(ENDIANNESS_BIG);
+ m_maincpu->set_addrmap(AS_PROGRAM, &policetr_state::policetr_map);
+ MCFG_DEVICE_VBLANK_INT_DRIVER("screen", policetr_state, irq4_gen);
- MCFG_EEPROM_SERIAL_93C66_ADD("eeprom")
+ EEPROM_SERIAL_93C66_16BIT(config, m_eeprom);
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_SIZE(400, 262) /* needs to be verified */
- MCFG_SCREEN_VISIBLE_AREA(0, 393, 0, 239)
- MCFG_SCREEN_UPDATE_DRIVER(policetr_state, screen_update_policetr)
- MCFG_SCREEN_PALETTE("palette")
-
- MCFG_PALETTE_ADD("palette", 256)
+ MCFG_DEVICE_ADD(m_screen, SCREEN, SCREEN_TYPE_RASTER);
+ m_screen->set_video_attributes(VIDEO_UPDATE_BEFORE_VBLANK);
+ m_screen->set_refresh_hz(60);
+ m_screen->set_size(400, 262); /* needs to be verified */
+ m_screen->set_visarea(0, 393, 0, 239);
+ m_screen->set_palette(m_palette);
+ MCFG_SCREEN_UPDATE_DRIVER(policetr_state, screen_update_policetr);
+ PALETTE(config, m_palette, 256);
/* sound hardware */
- SPEAKER(config, "lspeaker").front_left();
- SPEAKER(config, "rspeaker").front_right();
+ SPEAKER(config, m_lspeaker).front_left();
+ SPEAKER(config, m_rspeaker).front_right();
- MCFG_BSMT2000_ADD("bsmt", MASTER_CLOCK/2)
- MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
- MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
+ BSMT2000(config, m_bsmt, MASTER_CLOCK/2);
+ m_bsmt->add_route(0, *m_lspeaker, 1.0);
+ m_bsmt->add_route(1, *m_rspeaker, 1.0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(policetr_state::sshooter)
policetr(config);
-
- /* basic machine hardware */
- MCFG_DEVICE_MODIFY("maincpu")
- MCFG_DEVICE_PROGRAM_MAP(sshooter_map)
+ m_maincpu->set_addrmap(AS_PROGRAM, &policetr_state::sshooter_map);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/powerbal.cpp b/src/mame/drivers/powerbal.cpp
index 28362b2ac3d..7d7868d15be 100644
--- a/src/mame/drivers/powerbal.cpp
+++ b/src/mame/drivers/powerbal.cpp
@@ -665,8 +665,8 @@ MACHINE_CONFIG_START(powerbal_state::magicstk)
MCFG_DEVICE_PROGRAM_MAP(magicstk_main_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", powerbal_state, irq2_line_hold)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DEFAULT_VALUE(0)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DEFAULT_VALUE(0)
MCFG_MACHINE_START_OVERRIDE(powerbal_state,powerbal)
MCFG_MACHINE_RESET_OVERRIDE(powerbal_state,powerbal)
diff --git a/src/mame/drivers/psikyo4.cpp b/src/mame/drivers/psikyo4.cpp
index 1d907b4062d..683bb01361e 100644
--- a/src/mame/drivers/psikyo4.cpp
+++ b/src/mame/drivers/psikyo4.cpp
@@ -659,8 +659,8 @@ MACHINE_CONFIG_START(psikyo4_state::ps4big)
MCFG_DEVICE_VBLANK_INT_DRIVER("lscreen", psikyo4_state, psikyosh_interrupt)
- MCFG_EEPROM_SERIAL_93C56_8BIT_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DEFAULT_VALUE(0)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C56_8BIT)
+ MCFG_EEPROM_DEFAULT_VALUE(0)
/* video hardware */
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "lpalette", gfx_ps4)
diff --git a/src/mame/drivers/psikyosh.cpp b/src/mame/drivers/psikyosh.cpp
index 987293c471d..d0e491edde9 100644
--- a/src/mame/drivers/psikyosh.cpp
+++ b/src/mame/drivers/psikyosh.cpp
@@ -786,8 +786,8 @@ MACHINE_CONFIG_START(psikyosh_state::psikyo3v1)
MCFG_WATCHDOG_ADD("watchdog")
- MCFG_EEPROM_SERIAL_93C56_8BIT_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DEFAULT_VALUE(0)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C56_8BIT)
+ MCFG_EEPROM_DEFAULT_VALUE(0)
/* video hardware */
MCFG_DEVICE_ADD("spriteram", BUFFERED_SPRITERAM32) /* If using alpha */
diff --git a/src/mame/drivers/pve500.cpp b/src/mame/drivers/pve500.cpp
index 8a4d0833e14..3be5e9eeecb 100644
--- a/src/mame/drivers/pve500.cpp
+++ b/src/mame/drivers/pve500.cpp
@@ -405,7 +405,7 @@ MACHINE_CONFIG_START(pve500_state::pve500)
/* Serial EEPROM (128 bytes, 8-bit data organization) */
/* The EEPROM stores the setup data */
- MCFG_EEPROM_SERIAL_MSM16911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_MSM16911_8BIT)
/* FIX-ME: These are actually RS422 ports (except EDL IN/OUT which is indeed an RS232 port)*/
MCFG_DEVICE_ADD("recorder", RS232_PORT, default_rs232_devices, nullptr)
diff --git a/src/mame/drivers/pzletime.cpp b/src/mame/drivers/pzletime.cpp
index 197f42ffe89..046c93c7180 100644
--- a/src/mame/drivers/pzletime.cpp
+++ b/src/mame/drivers/pzletime.cpp
@@ -353,7 +353,7 @@ MACHINE_CONFIG_START(pzletime_state::pzletime)
MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
MCFG_PALETTE_INIT_OWNER(pzletime_state, pzletime)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* sound hardware */
diff --git a/src/mame/drivers/quizpun2.cpp b/src/mame/drivers/quizpun2.cpp
index daa02efa693..0bbc2dfa2bf 100644
--- a/src/mame/drivers/quizpun2.cpp
+++ b/src/mame/drivers/quizpun2.cpp
@@ -595,7 +595,7 @@ MACHINE_CONFIG_START(quizpun2_state::quizpun2)
MCFG_COP400_WRITE_SO_CB(WRITELINE("eeprom", eeprom_serial_93cxx_device, di_write))
MCFG_COP400_WRITE_SK_CB(WRITELINE("eeprom", eeprom_serial_93cxx_device, clk_write))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/r2dx_v33.cpp b/src/mame/drivers/r2dx_v33.cpp
index a262ba7e374..c1162f3f19d 100644
--- a/src/mame/drivers/r2dx_v33.cpp
+++ b/src/mame/drivers/r2dx_v33.cpp
@@ -793,7 +793,7 @@ MACHINE_CONFIG_START(r2dx_v33_state::rdx_v33)
MCFG_MACHINE_RESET_OVERRIDE(r2dx_v33_state,r2dx_v33)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
@@ -873,7 +873,7 @@ MACHINE_CONFIG_START(r2dx_v33_state::zerotm2k)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(zerotm2k_map)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MACHINE_CONFIG_END
void r2dx_v33_state::init_rdx_v33()
diff --git a/src/mame/drivers/rabbit.cpp b/src/mame/drivers/rabbit.cpp
index d9f50daf40a..dae7ccab5cf 100644
--- a/src/mame/drivers/rabbit.cpp
+++ b/src/mame/drivers/rabbit.cpp
@@ -905,7 +905,7 @@ MACHINE_CONFIG_START(rabbit_state::rabbit)
MCFG_DEVICE_PROGRAM_MAP(rabbit_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", rabbit_state, vblank_interrupt)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_rabbit)
diff --git a/src/mame/drivers/rbmk.cpp b/src/mame/drivers/rbmk.cpp
index de3e3729287..5cb2c29f5a7 100644
--- a/src/mame/drivers/rbmk.cpp
+++ b/src/mame/drivers/rbmk.cpp
@@ -587,7 +587,7 @@ MACHINE_CONFIG_START(rbmk_state::rbmk)
MCFG_PALETTE_ADD("palette", 0x800)
MCFG_PALETTE_FORMAT(xBBBBBGGGGGRRRRR)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
SPEAKER(config, "lspeaker").front_left();
diff --git a/src/mame/drivers/rmnimbus.cpp b/src/mame/drivers/rmnimbus.cpp
index 6e4f5807a22..a4f6c55aa1e 100644
--- a/src/mame/drivers/rmnimbus.cpp
+++ b/src/mame/drivers/rmnimbus.cpp
@@ -180,7 +180,7 @@ MACHINE_CONFIG_START(rmnimbus_state::nimbus)
MCFG_RS232_RI_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, rib_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, ctsb_w))
- MCFG_EEPROM_SERIAL_93C06_ADD(ER59256_TAG)
+ MCFG_DEVICE_ADD(ER59256_TAG, EEPROM_SERIAL_93C06_16BIT)
MCFG_DEVICE_ADD(VIA_TAG, VIA6522, 1000000)
MCFG_VIA6522_WRITEPA_HANDLER(WRITE8("cent_data_out", output_latch_device, bus_w))
diff --git a/src/mame/drivers/rungun.cpp b/src/mame/drivers/rungun.cpp
index 904546dc68e..c44b1890d48 100644
--- a/src/mame/drivers/rungun.cpp
+++ b/src/mame/drivers/rungun.cpp
@@ -411,7 +411,7 @@ MACHINE_CONFIG_START(rungun_state::rng)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_rungun)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/segas32.cpp b/src/mame/drivers/segas32.cpp
index f4a1e03d0c2..bad1b4adaec 100644
--- a/src/mame/drivers/segas32.cpp
+++ b/src/mame/drivers/segas32.cpp
@@ -2226,7 +2226,7 @@ MACHINE_CONFIG_START(segas32_state::device_add_mconfig)
MCFG_315_5296_OUT_CNT1_CB(WRITELINE(*this, segas32_state, display_enable_0_w))
MCFG_315_5296_OUT_CNT2_CB(INPUTLINE("soundcpu", INPUT_LINE_RESET)) MCFG_DEVCB_INVERT
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("v60_irq0", segas32_state, signal_v60_irq_callback)
MCFG_TIMER_DRIVER_ADD("v60_irq1", segas32_state, signal_v60_irq_callback)
@@ -2549,7 +2549,7 @@ MACHINE_CONFIG_START(sega_multi32_state::device_add_mconfig)
MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE("eeprom", eeprom_serial_93cxx_device, clk_write)) MCFG_DEVCB_BIT(6)
MCFG_315_5296_OUT_CNT1_CB(WRITELINE(*this, segas32_state, display_enable_1_w))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TIMER_DRIVER_ADD("v60_irq0", segas32_state, signal_v60_irq_callback)
MCFG_TIMER_DRIVER_ADD("v60_irq1", segas32_state, signal_v60_irq_callback)
diff --git a/src/mame/drivers/segasp.cpp b/src/mame/drivers/segasp.cpp
index 17d6b03b449..c3a7304ecce 100644
--- a/src/mame/drivers/segasp.cpp
+++ b/src/mame/drivers/segasp.cpp
@@ -304,8 +304,8 @@ MACHINE_CONFIG_START(segasp_state::segasp)
MCFG_DEVICE_PROGRAM_MAP(segasp_map)
MCFG_DEVICE_IO_MAP(onchip_port)
- MCFG_EEPROM_SERIAL_93C46_ADD("main_eeprom")
- MCFG_EEPROM_SERIAL_93C46_ADD("sp_eeprom")
+ MCFG_DEVICE_ADD("main_eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_DEVICE_ADD("sp_eeprom", EEPROM_SERIAL_93C46_16BIT)
// todo, not exactly NaomiM4 (see notes at top of driver) use custom board type here instead
MCFG_X76F100_ADD("naomibd_eeprom") // actually not present
diff --git a/src/mame/drivers/seibucats.cpp b/src/mame/drivers/seibucats.cpp
index ed4e0e84e89..f3f2a09afbf 100644
--- a/src/mame/drivers/seibucats.cpp
+++ b/src/mame/drivers/seibucats.cpp
@@ -302,7 +302,7 @@ MACHINE_CONFIG_START(seibucats_state::seibucats)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", seibuspi_state, spi_interrupt)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(seibuspi_state, spi_irq_callback)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
//MCFG_JRC6355E_ADD("rtc", XTAL(32'768))
diff --git a/src/mame/drivers/seibuspi.cpp b/src/mame/drivers/seibuspi.cpp
index b9222c35f28..2100c89ed0b 100644
--- a/src/mame/drivers/seibuspi.cpp
+++ b/src/mame/drivers/seibuspi.cpp
@@ -1976,7 +1976,7 @@ MACHINE_CONFIG_START(seibuspi_state::sxx2f)
MCFG_DEVICE_REMOVE("ds2404")
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
// Z80 is Z84C0006PCS instead of Z84C0008PEC
// clock is unknown, possibly slower than 7.159MHz
@@ -2010,7 +2010,7 @@ MACHINE_CONFIG_START(seibuspi_state::sys386i)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", seibuspi_state, spi_interrupt)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(seibuspi_state,spi_irq_callback)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -2066,7 +2066,7 @@ MACHINE_CONFIG_START(seibuspi_state::sys386f)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", seibuspi_state, spi_interrupt)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(seibuspi_state,spi_irq_callback)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/seta2.cpp b/src/mame/drivers/seta2.cpp
index 16469cb6a21..efd21ca2000 100644
--- a/src/mame/drivers/seta2.cpp
+++ b/src/mame/drivers/seta2.cpp
@@ -2591,7 +2591,7 @@ MACHINE_CONFIG_START(seta2_state::gundamex)
MCFG_TMP68301_IN_PARALLEL_CB(READ16(*this, seta2_state, gundamex_eeprom_r))
MCFG_TMP68301_OUT_PARALLEL_CB(WRITE16(*this, seta2_state, gundamex_eeprom_w))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
// video hardware
MCFG_SCREEN_MODIFY("screen")
@@ -2727,7 +2727,7 @@ MACHINE_CONFIG_START(seta2_state::telpacfl)
MCFG_DEVICE_MODIFY("tmp68301")
MCFG_TMP68301_IN_PARALLEL_CB(IOPORT("KNOB"))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom") // not hooked up, seems unused
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT) // not hooked up, seems unused
MCFG_NVRAM_ADD_0FILL("nvram")
MCFG_HOPPER_ADD("dispenser", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW)
diff --git a/src/mame/drivers/sigmab98.cpp b/src/mame/drivers/sigmab98.cpp
index e9d4a7f2005..269195f6e50 100644
--- a/src/mame/drivers/sigmab98.cpp
+++ b/src/mame/drivers/sigmab98.cpp
@@ -2847,7 +2847,7 @@ MACHINE_CONFIG_START(sigmab98_state::sigmab98)
MCFG_MACHINE_RESET_OVERRIDE(sigmab98_state, sigmab98)
MCFG_NVRAM_ADD_0FILL("nvram")
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_LOW )
@@ -3002,7 +3002,7 @@ MACHINE_CONFIG_START(sigmab98_state::sammymdl)
MCFG_MACHINE_RESET_OVERRIDE(sigmab98_state, sammymdl )
MCFG_NVRAM_ADD_0FILL("nvram") // battery backed RAM
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_LOW )
diff --git a/src/mame/drivers/simpl156.cpp b/src/mame/drivers/simpl156.cpp
index 9143acadf87..8b1de28b022 100644
--- a/src/mame/drivers/simpl156.cpp
+++ b/src/mame/drivers/simpl156.cpp
@@ -408,7 +408,7 @@ MACHINE_CONFIG_START(simpl156_state::chainrec)
MCFG_DEVICE_PROGRAM_MAP(chainrec_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", simpl156_state, simpl156_vbl_interrupt)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom") // 93C45
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT) // 93C45
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/simpsons.cpp b/src/mame/drivers/simpsons.cpp
index 034e8528d67..4cddaea2128 100644
--- a/src/mame/drivers/simpsons.cpp
+++ b/src/mame/drivers/simpsons.cpp
@@ -346,7 +346,7 @@ MACHINE_CONFIG_START(simpsons_state::simpsons)
MCFG_ADDRESS_MAP_BANK_ADDR_WIDTH(14)
MCFG_ADDRESS_MAP_BANK_STRIDE(0x2000)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/splash.cpp b/src/mame/drivers/splash.cpp
index 1900eeadd57..4aee49760a7 100644
--- a/src/mame/drivers/splash.cpp
+++ b/src/mame/drivers/splash.cpp
@@ -652,7 +652,7 @@ MACHINE_CONFIG_START(funystrp_state::funystrp)
MCFG_DEVICE_PROGRAM_MAP(funystrp_sound_map)
MCFG_DEVICE_IO_MAP(funystrp_sound_io_map)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/spool99.cpp b/src/mame/drivers/spool99.cpp
index a7ffc30b7bb..4b9f4475cf8 100644
--- a/src/mame/drivers/spool99.cpp
+++ b/src/mame/drivers/spool99.cpp
@@ -380,7 +380,7 @@ MACHINE_CONFIG_START(spool99_state::spool99)
MCFG_PALETTE_ADD("palette", 0x200)
MCFG_PALETTE_FORMAT(xxxxBBBBGGGGRRRR)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
SPEAKER(config, "lspeaker").front_left();
diff --git a/src/mame/drivers/ssv.cpp b/src/mame/drivers/ssv.cpp
index 33d784d7a91..1e6ed92392b 100644
--- a/src/mame/drivers/ssv.cpp
+++ b/src/mame/drivers/ssv.cpp
@@ -2606,7 +2606,7 @@ MACHINE_CONFIG_START(ssv_state::gdfs)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(gdfs_map)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("adc", ADC0809, 1000000) // unknown clock
MCFG_ADC0808_IN0_CB(IOPORT("GUNX1"))
diff --git a/src/mame/drivers/stlforce.cpp b/src/mame/drivers/stlforce.cpp
index 82f03625bf3..e316e7c1b14 100644
--- a/src/mame/drivers/stlforce.cpp
+++ b/src/mame/drivers/stlforce.cpp
@@ -200,7 +200,7 @@ MACHINE_CONFIG_START(stlforce_state::stlforce)
MCFG_DEVICE_PROGRAM_MAP(stlforce_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", stlforce_state, irq4_line_hold)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/stv.cpp b/src/mame/drivers/stv.cpp
index 7f213eaf4b6..91740c5d8b1 100644
--- a/src/mame/drivers/stv.cpp
+++ b/src/mame/drivers/stv.cpp
@@ -1100,7 +1100,7 @@ MACHINE_CONFIG_START(stv_state::stv)
MCFG_MACHINE_START_OVERRIDE(stv_state,stv)
MCFG_MACHINE_RESET_OVERRIDE(stv_state,stv)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom") /* Actually AK93C45F */
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT) /* Actually AK93C45F */
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/superchs.cpp b/src/mame/drivers/superchs.cpp
index bd8ec2b8fac..3afd6b60ed1 100644
--- a/src/mame/drivers/superchs.cpp
+++ b/src/mame/drivers/superchs.cpp
@@ -236,7 +236,7 @@ MACHINE_CONFIG_START(superchs_state::superchs)
MCFG_QUANTUM_TIME(attotime::from_hz(480)) /* Need to interleave CPU 1 & 3 */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("adc", ADC0809, 500000) // unknown clock
MCFG_ADC0808_EOC_FF_CB(INPUTLINE("maincpu", 3))
diff --git a/src/mame/drivers/taito_b.cpp b/src/mame/drivers/taito_b.cpp
index e86abc31fc1..39d9c7ce3c4 100644
--- a/src/mame/drivers/taito_b.cpp
+++ b/src/mame/drivers/taito_b.cpp
@@ -2280,7 +2280,7 @@ MACHINE_CONFIG_START(taitob_state::pbobble)
MCFG_QUANTUM_TIME(attotime::from_hz(600))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("tc0640fio", TC0640FIO, 0)
MCFG_TC0640FIO_READ_0_CB(IOPORT("SERVICE"))
@@ -2344,7 +2344,7 @@ MACHINE_CONFIG_START(taitob_state::spacedx)
MCFG_QUANTUM_TIME(attotime::from_hz(600))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("tc0640fio", TC0640FIO, 0)
MCFG_TC0640FIO_READ_0_CB(IOPORT("SERVICE"))
@@ -2466,7 +2466,7 @@ MACHINE_CONFIG_START(taitob_state::qzshowby)
MCFG_QUANTUM_TIME(attotime::from_hz(600))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("tc0640fio", TC0640FIO, 0)
MCFG_TC0640FIO_READ_0_CB(IOPORT("SERVICE"))
diff --git a/src/mame/drivers/taito_f3.cpp b/src/mame/drivers/taito_f3.cpp
index 29d369e053b..2c75e650928 100644
--- a/src/mame/drivers/taito_f3.cpp
+++ b/src/mame/drivers/taito_f3.cpp
@@ -465,7 +465,7 @@ MACHINE_CONFIG_START(taito_f3_state::f3)
MCFG_DEVICE_PROGRAM_MAP(f3_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", taito_f3_state, f3_interrupt2)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_WATCHDOG_ADD("watchdog")
@@ -513,16 +513,16 @@ MACHINE_CONFIG_START(taito_f3_state::f3_eeprom)
f3(config);
MCFG_DEVICE_REMOVE("eeprom")
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DATA(recalh_eeprom, 128) //TODO: convert this into ROM
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DATA(recalh_eeprom, 128) //TODO: convert this into ROM
MACHINE_CONFIG_END
MACHINE_CONFIG_START(taito_f3_state::f3_224b_eeprom)
f3_224b(config);
MCFG_DEVICE_REMOVE("eeprom")
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DATA(recalh_eeprom, 128) //TODO: convert this into ROM
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DATA(recalh_eeprom, 128) //TODO: convert this into ROM
MACHINE_CONFIG_END
static const gfx_layout bubsympb_sprite_layout =
@@ -561,7 +561,7 @@ MACHINE_CONFIG_START(taito_f3_state::bubsympb)
MCFG_DEVICE_PROGRAM_MAP(bubsympb_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", taito_f3_state, f3_interrupt2)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/taito_z.cpp b/src/mame/drivers/taito_z.cpp
index 91eac2260ab..4a8a38be9bc 100644
--- a/src/mame/drivers/taito_z.cpp
+++ b/src/mame/drivers/taito_z.cpp
@@ -3735,8 +3735,8 @@ MACHINE_CONFIG_START(taitoz_state::spacegun)
MCFG_MACHINE_START_OVERRIDE(taitoz_state,bshark)
MCFG_MACHINE_RESET_OVERRIDE(taitoz_state,taitoz)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_DATA(spacegun_default_eeprom, 128)
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
+ MCFG_EEPROM_DATA(spacegun_default_eeprom, 128)
MCFG_DEVICE_ADD("adc", ADC0809, 500000) // clock unknown
MCFG_ADC0808_EOC_FF_CB(INPUTLINE("sub", 5))
diff --git a/src/mame/drivers/taitojc.cpp b/src/mame/drivers/taitojc.cpp
index 727d547f7f4..1a3efcd6376 100644
--- a/src/mame/drivers/taitojc.cpp
+++ b/src/mame/drivers/taitojc.cpp
@@ -1095,7 +1095,7 @@ MACHINE_CONFIG_START(taitojc_state::taitojc)
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("tc0640fio", TC0640FIO, 0)
MCFG_TC0640FIO_READ_0_CB(IOPORT("SERVICE"))
diff --git a/src/mame/drivers/tasman.cpp b/src/mame/drivers/tasman.cpp
index e0c29806cde..4773679d044 100644
--- a/src/mame/drivers/tasman.cpp
+++ b/src/mame/drivers/tasman.cpp
@@ -654,7 +654,7 @@ MACHINE_CONFIG_START(kongambl_state::kongambl)
MCFG_K053252_INT2_ACK_CB(WRITELINE(*this, kongambl_state, hblank_irq_ack_w))
MCFG_VIDEO_SET_SCREEN("screen")
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(25000000, 288+16+32+48, 0, 287, 224+16+8+16, 0, 223) // fake, they'll be changed by CCU anyway, TBD
diff --git a/src/mame/drivers/tecmosys.cpp b/src/mame/drivers/tecmosys.cpp
index 3b3909261d0..8fe8e321be9 100644
--- a/src/mame/drivers/tecmosys.cpp
+++ b/src/mame/drivers/tecmosys.cpp
@@ -468,8 +468,7 @@ MACHINE_CONFIG_START(tecmosys_state::tecmosys)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_tecmosys)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_ENABLE_STREAMING()
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT, EEPROM_SERIAL_ENABLE_STREAMING)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
diff --git a/src/mame/drivers/tmmjprd.cpp b/src/mame/drivers/tmmjprd.cpp
index 43aee19bcfd..c2dd01dce9e 100644
--- a/src/mame/drivers/tmmjprd.cpp
+++ b/src/mame/drivers/tmmjprd.cpp
@@ -773,8 +773,7 @@ MACHINE_CONFIG_START(tmmjprd_state::tmmjprd)
MCFG_DEVICE_PROGRAM_MAP(tmmjprd_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", tmmjprd_state, scanline, "lscreen", 0, 1)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
- MCFG_EEPROM_SERIAL_ENABLE_STREAMING()
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT, EEPROM_SERIAL_ENABLE_STREAMING)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_tmmjprd)
diff --git a/src/mame/drivers/tmnt.cpp b/src/mame/drivers/tmnt.cpp
index 81def07bb35..06efd649ee6 100644
--- a/src/mame/drivers/tmnt.cpp
+++ b/src/mame/drivers/tmnt.cpp
@@ -2219,7 +2219,7 @@ MACHINE_CONFIG_START(tmnt_state::blswhstl)
MCFG_MACHINE_START_OVERRIDE(tmnt_state,common)
MCFG_MACHINE_RESET_OVERRIDE(tmnt_state,common)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
MCFG_WATCHDOG_ADD("watchdog")
@@ -2365,7 +2365,7 @@ MACHINE_CONFIG_START(tmnt_state::prmrsocr)
MCFG_MACHINE_START_OVERRIDE(tmnt_state,prmrsocr)
MCFG_MACHINE_RESET_OVERRIDE(tmnt_state,common)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
MCFG_WATCHDOG_ADD("watchdog")
@@ -2435,7 +2435,7 @@ MACHINE_CONFIG_START(tmnt_state::tmnt2)
MCFG_MACHINE_START_OVERRIDE(tmnt_state,common)
MCFG_MACHINE_RESET_OVERRIDE(tmnt_state,common)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
MCFG_WATCHDOG_ADD("watchdog")
@@ -2495,7 +2495,7 @@ MACHINE_CONFIG_START(tmnt_state::ssriders)
MCFG_MACHINE_START_OVERRIDE(tmnt_state,common)
MCFG_MACHINE_RESET_OVERRIDE(tmnt_state,common)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
MCFG_WATCHDOG_ADD("watchdog")
@@ -2551,7 +2551,7 @@ MACHINE_CONFIG_START(tmnt_state::sunsetbl)
MCFG_MACHINE_START_OVERRIDE(tmnt_state,common)
MCFG_MACHINE_RESET_OVERRIDE(tmnt_state,common)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -2602,7 +2602,7 @@ MACHINE_CONFIG_START(tmnt_state::thndrx2)
MCFG_MACHINE_START_OVERRIDE(tmnt_state,common)
MCFG_MACHINE_RESET_OVERRIDE(tmnt_state,common)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/toaplan2.cpp b/src/mame/drivers/toaplan2.cpp
index dcd658edd85..14f532740b8 100644
--- a/src/mame/drivers/toaplan2.cpp
+++ b/src/mame/drivers/toaplan2.cpp
@@ -3642,7 +3642,7 @@ MACHINE_CONFIG_START(toaplan2_state::fixeight)
MCFG_V25_PORT_P0_READ_CB(IOPORT("EEPROM"))
MCFG_V25_PORT_P0_WRITE_CB(IOPORT("EEPROM"))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -4165,7 +4165,7 @@ MACHINE_CONFIG_START(toaplan2_state::bbakraid)
MCFG_MACHINE_RESET_OVERRIDE(toaplan2_state,toaplan2)
- MCFG_EEPROM_SERIAL_93C66_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C66_8BIT)
MCFG_DEVICE_ADD("dma_space", ADDRESS_MAP_BANK, 0)
MCFG_DEVICE_PROGRAM_MAP(batrider_dma_mem)
diff --git a/src/mame/drivers/tti.cpp b/src/mame/drivers/tti.cpp
index 6395ad428e9..8d4d673b795 100644
--- a/src/mame/drivers/tti.cpp
+++ b/src/mame/drivers/tti.cpp
@@ -71,7 +71,7 @@ MACHINE_CONFIG_START(tti_state::tti)
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("mfp", mc68901_device, write_rx))
- MCFG_EEPROM_SERIAL_X24C44_ADD("novram")
+ MCFG_DEVICE_ADD("novram", EEPROM_SERIAL_X24C44_16BIT)
MCFG_EEPROM_SERIAL_DO_CALLBACK(WRITELINE("mfp", mc68901_device, i0_w))
MCFG_DEVICE_ADD("bitlatch", LS259, 0) // U17
diff --git a/src/mame/drivers/ultrsprt.cpp b/src/mame/drivers/ultrsprt.cpp
index ca9e148ba43..bbd31cee025 100644
--- a/src/mame/drivers/ultrsprt.cpp
+++ b/src/mame/drivers/ultrsprt.cpp
@@ -243,7 +243,7 @@ MACHINE_CONFIG_START(ultrsprt_state::ultrsprt)
MCFG_DEVICE_ADD("audiocpu", M68000, 8000000) // Unconfirmed
MCFG_DEVICE_PROGRAM_MAP(sound_map)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("upd1", UPD4701A, 0)
MCFG_UPD4701_PORTX("P1X")
diff --git a/src/mame/drivers/undrfire.cpp b/src/mame/drivers/undrfire.cpp
index fea6f46fe19..20a78331f82 100644
--- a/src/mame/drivers/undrfire.cpp
+++ b/src/mame/drivers/undrfire.cpp
@@ -571,7 +571,7 @@ MACHINE_CONFIG_START(undrfire_state::undrfire)
MCFG_DEVICE_PROGRAM_MAP(undrfire_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", undrfire_state, undrfire_interrupt)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("tc0510nio", TC0510NIO, 0)
MCFG_TC0510NIO_READ_0_CB(IOPORT("INPUTS0"))
@@ -630,7 +630,7 @@ MACHINE_CONFIG_START(undrfire_state::cbombers)
MCFG_QUANTUM_TIME(attotime::from_hz(480)) /* CPU slices - Need to interleave Cpu's 1 & 3 */
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("adc", ADC0809, 500000) // unknown clock
MCFG_ADC0808_EOC_FF_CB(INPUTLINE("maincpu", 5))
diff --git a/src/mame/drivers/unico.cpp b/src/mame/drivers/unico.cpp
index e6b4e3a1dd2..c5c1daf8e5b 100644
--- a/src/mame/drivers/unico.cpp
+++ b/src/mame/drivers/unico.cpp
@@ -658,7 +658,7 @@ MACHINE_CONFIG_START(zeropnt2_state::zeropnt2)
MCFG_DEVICE_PROGRAM_MAP(zeropnt2_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", unico_state, irq2_line_hold)
- MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/vamphalf.cpp b/src/mame/drivers/vamphalf.cpp
index 97aedf0ed38..b949d8f93d3 100644
--- a/src/mame/drivers/vamphalf.cpp
+++ b/src/mame/drivers/vamphalf.cpp
@@ -1109,7 +1109,7 @@ MACHINE_CONFIG_START(vamphalf_state::common)
MCFG_DEVICE_PROGRAM_MAP(common_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", vamphalf_state, irq1_line_hold)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
// various games require fast timing to save settings, probably because our Hyperstone core timings are incorrect
MCFG_EEPROM_ERASE_TIME(attotime::from_usec(1))
MCFG_EEPROM_WRITE_TIME(attotime::from_usec(1))
@@ -1299,7 +1299,7 @@ MACHINE_CONFIG_START(vamphalf_state::aoh)
MCFG_DEVICE_IO_MAP(aoh_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", vamphalf_state, irq1_line_hold)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/vendetta.cpp b/src/mame/drivers/vendetta.cpp
index 53c57a76007..38814886d42 100644
--- a/src/mame/drivers/vendetta.cpp
+++ b/src/mame/drivers/vendetta.cpp
@@ -453,7 +453,7 @@ MACHINE_CONFIG_START(vendetta_state::vendetta)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
/* interrupts are triggered by the main CPU */
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/wheelfir.cpp b/src/mame/drivers/wheelfir.cpp
index 92c61d54a82..4bed09309a5 100644
--- a/src/mame/drivers/wheelfir.cpp
+++ b/src/mame/drivers/wheelfir.cpp
@@ -760,7 +760,7 @@ MACHINE_CONFIG_START(wheelfir_state::wheelfir)
MCFG_PALETTE_ADD("palette", NUM_COLORS)
MCFG_RAMDAC_ADD("ramdac", ramdac_map, "palette")
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_GENERIC_LATCH_16_ADD("soundlatch")
diff --git a/src/mame/drivers/xexex.cpp b/src/mame/drivers/xexex.cpp
index 6b5f2fcee3e..0c9d63533ff 100644
--- a/src/mame/drivers/xexex.cpp
+++ b/src/mame/drivers/xexex.cpp
@@ -482,7 +482,7 @@ MACHINE_CONFIG_START(xexex_state::xexex)
MCFG_QUANTUM_TIME(attotime::from_hz(1920))
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/xmen.cpp b/src/mame/drivers/xmen.cpp
index 2cf9fd4dd83..9b5e47fa83a 100644
--- a/src/mame/drivers/xmen.cpp
+++ b/src/mame/drivers/xmen.cpp
@@ -307,7 +307,7 @@ MACHINE_CONFIG_START(xmen_state::xmen)
MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(16'000'000)/2) /* verified on pcb */
MCFG_DEVICE_PROGRAM_MAP(sound_map)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
MCFG_WATCHDOG_ADD("watchdog")
@@ -360,7 +360,7 @@ MACHINE_CONFIG_START(xmen_state::xmen6p)
MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(16'000'000)/2)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
- MCFG_EEPROM_SERIAL_ER5911_8BIT_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_ER5911_8BIT)
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/xorworld.cpp b/src/mame/drivers/xorworld.cpp
index 921f8b6c4a7..97be602e24c 100644
--- a/src/mame/drivers/xorworld.cpp
+++ b/src/mame/drivers/xorworld.cpp
@@ -164,7 +164,7 @@ MACHINE_CONFIG_START(xorworld_state::xorworld)
MCFG_QUANTUM_TIME(attotime::from_hz(60))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("mainlatch", LS259, 0)
MCFG_ADDRESSABLE_LATCH_Q4_OUT_CB(WRITELINE("eeprom", eeprom_serial_93cxx_device, cs_write)) // CS (active low)
diff --git a/src/mame/drivers/zr107.cpp b/src/mame/drivers/zr107.cpp
index 804c4dcecdc..f87a0dffa9f 100644
--- a/src/mame/drivers/zr107.cpp
+++ b/src/mame/drivers/zr107.cpp
@@ -786,7 +786,7 @@ MACHINE_CONFIG_START(zr107_state::zr107)
MCFG_QUANTUM_TIME(attotime::from_hz(750000))// Very high sync needed to prevent lockups - why?
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("k056230", K056230, 0)
MCFG_K056230_CPU("maincpu")
@@ -857,7 +857,7 @@ MACHINE_CONFIG_START(zr107_state::jetwave)
MCFG_QUANTUM_TIME(attotime::from_hz(2000000)) // Very high sync needed to prevent lockups - why?
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MCFG_DEVICE_ADD("k056230", K056230, 0)
MCFG_K056230_CPU("maincpu")
diff --git a/src/mame/includes/policetr.h b/src/mame/includes/policetr.h
index 83483acbadb..b6dd27c3ae3 100644
--- a/src/mame/includes/policetr.h
+++ b/src/mame/includes/policetr.h
@@ -5,25 +5,77 @@
P&P Marketing Police Trainer hardware
**************************************************************************/
+
+#include "cpu/mips/r3000.h"
#include "machine/eepromser.h"
+#include "sound/bsmt2000.h"
#include "screen.h"
+#include "speaker.h"
class policetr_state : public driver_device
{
public:
- enum
- {
- TIMER_IRQ5_GEN
- };
-
policetr_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag),
m_rambase(*this, "rambase"),
m_maincpu(*this, "maincpu"),
+ m_bsmt(*this, "bsmt"),
+ m_bsmt_region(*this, "bsmt"),
+ m_lspeaker(*this, "lspeaker"),
+ m_rspeaker(*this, "rspeaker"),
m_eeprom(*this, "eeprom"),
m_screen(*this, "screen"),
m_palette(*this, "palette") { }
+ DECLARE_CUSTOM_INPUT_MEMBER(bsmt_status_r);
+
+ void init_sshoot12();
+ void init_policetr();
+ void init_sshooter();
+ void init_plctr13b();
+
+ void sshooter(machine_config &config);
+ void policetr(machine_config &config);
+
+protected:
+ enum
+ {
+ TIMER_IRQ5_GEN
+ };
+
+ virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+ virtual void machine_start() override;
+ virtual void video_start() override;
+
+ void policetr_map(address_map &map);
+ void sshooter_map(address_map &map);
+
+ INTERRUPT_GEN_MEMBER(irq4_gen);
+
+ DECLARE_WRITE32_MEMBER(control_w);
+ DECLARE_WRITE32_MEMBER(speedup_w);
+
+ DECLARE_WRITE32_MEMBER(policetr_bsmt2000_reg_w);
+ DECLARE_WRITE32_MEMBER(policetr_bsmt2000_data_w);
+ DECLARE_READ32_MEMBER(bsmt2000_data_r);
+
+ DECLARE_WRITE32_MEMBER(policetr_video_w);
+ DECLARE_READ32_MEMBER(policetr_video_r);
+ DECLARE_WRITE32_MEMBER(policetr_palette_offset_w);
+ DECLARE_WRITE32_MEMBER(policetr_palette_data_w);
+ void render_display_list(offs_t offset);
+ uint32_t screen_update_policetr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+
+ required_shared_ptr<uint32_t> m_rambase;
+ required_device<r3041_device> m_maincpu;
+ required_device<bsmt2000_device> m_bsmt;
+ required_memory_region m_bsmt_region;
+ required_device<speaker_device> m_lspeaker;
+ required_device<speaker_device> m_rspeaker;
+ required_device<eeprom_serial_93cxx_device> m_eeprom;
+ required_device<screen_device> m_screen;
+ required_device<palette_device> m_palette;
+
uint32_t m_control_data;
uint32_t m_bsmt_data_bank;
uint32_t m_bsmt_data_offset;
@@ -31,7 +83,6 @@ public:
uint64_t m_last_cycles;
uint32_t m_loop_count;
offs_t m_speedup_pc;
- required_shared_ptr<uint32_t> m_rambase;
uint32_t m_palette_offset;
uint8_t m_palette_index;
uint8_t m_palette_data[3];
@@ -45,33 +96,4 @@ public:
uint8_t m_video_latch;
uint32_t m_srcbitmap_height_mask;
emu_timer *m_irq5_gen_timer;
- DECLARE_WRITE32_MEMBER(control_w);
- DECLARE_WRITE32_MEMBER(policetr_bsmt2000_reg_w);
- DECLARE_WRITE32_MEMBER(policetr_bsmt2000_data_w);
- DECLARE_READ32_MEMBER(bsmt2000_data_r);
- DECLARE_WRITE32_MEMBER(speedup_w);
- DECLARE_WRITE32_MEMBER(policetr_video_w);
- DECLARE_READ32_MEMBER(policetr_video_r);
- DECLARE_WRITE32_MEMBER(policetr_palette_offset_w);
- DECLARE_WRITE32_MEMBER(policetr_palette_data_w);
- DECLARE_CUSTOM_INPUT_MEMBER(bsmt_status_r);
- void init_sshoot12();
- void init_policetr();
- void init_sshooter();
- void init_plctr13b();
- virtual void machine_start() override;
- virtual void video_start() override;
- uint32_t screen_update_policetr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- INTERRUPT_GEN_MEMBER(irq4_gen);
- void render_display_list(offs_t offset);
- required_device<cpu_device> m_maincpu;
- required_device<eeprom_serial_93cxx_device> m_eeprom;
- required_device<screen_device> m_screen;
- required_device<palette_device> m_palette;
- void sshooter(machine_config &config);
- void policetr(machine_config &config);
- void policetr_map(address_map &map);
- void sshooter_map(address_map &map);
-protected:
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/machine/iteagle_fpga.cpp b/src/mame/machine/iteagle_fpga.cpp
index 209ffa75d7e..b86d1e44dc8 100644
--- a/src/mame/machine/iteagle_fpga.cpp
+++ b/src/mame/machine/iteagle_fpga.cpp
@@ -651,7 +651,7 @@ void iteagle_eeprom_device::eeprom_map(address_map &map)
}
MACHINE_CONFIG_START(iteagle_eeprom_device::device_add_mconfig)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT)
MACHINE_CONFIG_END
iteagle_eeprom_device::iteagle_eeprom_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
diff --git a/src/mame/machine/model1io.cpp b/src/mame/machine/model1io.cpp
index d90a5ff7ab2..dadc2e026dd 100644
--- a/src/mame/machine/model1io.cpp
+++ b/src/mame/machine/model1io.cpp
@@ -132,7 +132,7 @@ MACHINE_CONFIG_START( model1io_device::device_add_mconfig )
MCFG_DEVICE_ADD("iocpu", Z80, 32_MHz_XTAL/8)
MCFG_DEVICE_PROGRAM_MAP(mem_map)
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom") // 93C45
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT) // 93C45
MCFG_DEVICE_ADD("io", SEGA_315_5338A, 32_MHz_XTAL)
MCFG_315_5338A_READ_CB(READ8(*this, model1io_device, io_r))
diff --git a/src/mame/machine/model1io2.cpp b/src/mame/machine/model1io2.cpp
index d715c3ad86e..4a793bf63bb 100644
--- a/src/mame/machine/model1io2.cpp
+++ b/src/mame/machine/model1io2.cpp
@@ -177,7 +177,7 @@ MACHINE_CONFIG_START( model1io2_device::device_add_mconfig )
MCFG_315_5338A_OUT_PF_CB(WRITE8(*this, model1io2_device, io_pf_w))
MCFG_315_5338A_OUT_PG_CB(WRITE8(*this, model1io2_device, io_pg_w))
- MCFG_EEPROM_SERIAL_93C46_ADD("eeprom") // 93C45
+ MCFG_DEVICE_ADD("eeprom", EEPROM_SERIAL_93C46_16BIT) // 93C45
MCFG_DEVICE_ADD("watchdog", MB3773, 0)