summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Ivan Vangelista <mesgnet@yahoo.it>2020-11-24 13:58:48 +0100
committer Ivan Vangelista <mesgnet@yahoo.it>2020-11-24 13:58:48 +0100
commit37b00ebe8c7152feafb3c6e04df72e702d5dacca (patch)
treeffbbe7e33b96447973cc8a0553711944a1423460
parent18f6a5be511ce3410f0ad3c01b47a470f56ad4ac (diff)
various drivers: removed MACHINE_*_MEMBER and VIDEO_START_MEMBER macros
-rw-r--r--src/mame/drivers/airraid.cpp13
-rw-r--r--src/mame/drivers/badlands.cpp9
-rw-r--r--src/mame/drivers/badlandsbl.cpp10
-rw-r--r--src/mame/drivers/gridcomp.cpp26
-rw-r--r--src/mame/drivers/hornet.cpp14
-rw-r--r--src/mame/drivers/ksys573.cpp21
-rw-r--r--src/mame/drivers/mc1502.cpp7
-rw-r--r--src/mame/drivers/namcofl.cpp8
-rw-r--r--src/mame/drivers/nascom1.cpp18
-rw-r--r--src/mame/drivers/phoenix.cpp13
-rw-r--r--src/mame/drivers/psx.cpp11
-rw-r--r--src/mame/drivers/s11.cpp3
-rw-r--r--src/mame/drivers/s11a.cpp7
-rw-r--r--src/mame/drivers/s11b.cpp3
-rw-r--r--src/mame/drivers/s11c.cpp8
-rw-r--r--src/mame/drivers/s6a.cpp16
-rw-r--r--src/mame/drivers/s7.cpp21
-rw-r--r--src/mame/drivers/s8.cpp18
-rw-r--r--src/mame/drivers/s8a.cpp16
-rw-r--r--src/mame/drivers/s9.cpp16
-rw-r--r--src/mame/drivers/stargame.cpp12
-rw-r--r--src/mame/drivers/vlc.cpp12
-rw-r--r--src/mame/includes/badlands.h37
-rw-r--r--src/mame/includes/mc1502.h7
-rw-r--r--src/mame/includes/namcofl.h7
-rw-r--r--src/mame/includes/phoenix.h46
-rw-r--r--src/mame/includes/s11.h7
-rw-r--r--src/mame/includes/s11a.h3
-rw-r--r--src/mame/includes/s11b.h9
-rw-r--r--src/mame/video/badlands.cpp2
-rw-r--r--src/mame/video/namcofl.cpp5
-rw-r--r--src/mame/video/phoenix.cpp2
32 files changed, 191 insertions, 216 deletions
diff --git a/src/mame/drivers/airraid.cpp b/src/mame/drivers/airraid.cpp
index e36b7ff2322..65e5de55745 100644
--- a/src/mame/drivers/airraid.cpp
+++ b/src/mame/drivers/airraid.cpp
@@ -59,7 +59,7 @@ Stephh's notes (based on the game Z80 code and some tests) :
- Inputs notes :
- * COINx don't work correcly : see "cshooter_coin_r" read handler.
+ * COINx don't work correctly : see "cshooter_coin_r" read handler.
* In game, bits 3 and 4 of 0xc202 ("START") are tested,
while bits 4 and 5 are tested in the "test mode".
* Pressing STARTx while in game adds lives (depending on the
@@ -159,6 +159,8 @@ Stephh's notes (based on the game Z80 code and some tests) :
#include "speaker.h"
+namespace {
+
class airraid_state : public driver_device
{
public:
@@ -190,7 +192,6 @@ private:
void cshooter_c500_w(uint8_t data);
void cshooter_c700_w(uint8_t data);
void bank_w(uint8_t data);
- DECLARE_MACHINE_RESET(cshooter);
TIMER_DEVICE_CALLBACK_MEMBER(cshooter_scanline);
void airraid_map(address_map &map);
@@ -214,11 +215,6 @@ TIMER_DEVICE_CALLBACK_MEMBER(airraid_state::cshooter_scanline)
m_maincpu->set_input_line_and_vector(0, HOLD_LINE,0xcf); /* Z80 - RST 08h */
}
-
-MACHINE_RESET_MEMBER(airraid_state,cshooter)
-{
-}
-
void airraid_state::cshooter_c500_w(uint8_t data)
{
}
@@ -628,6 +624,9 @@ void airraid_state::init_cshootere()
}
+} // Anonymous namespace
+
+
// There's also an undumped International Games version
GAME( 1987, cshooter, airraid, airraid_crypt, airraid, airraid_state, init_cshootere, ROT270, "Seibu Kaihatsu (J.K.H. license)", "Cross Shooter (Single PCB)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE )
GAME( 1987, airraid, 0, airraid_crypt, airraid, airraid_state, init_cshootere, ROT270, "Seibu Kaihatsu", "Air Raid (Single PCB)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_NOT_WORKING )
diff --git a/src/mame/drivers/badlands.cpp b/src/mame/drivers/badlands.cpp
index a8968cae49b..4bccd3259f1 100644
--- a/src/mame/drivers/badlands.cpp
+++ b/src/mame/drivers/badlands.cpp
@@ -186,13 +186,13 @@ TIMER_DEVICE_CALLBACK_MEMBER(badlands_state::sound_scanline)
}
-MACHINE_START_MEMBER(badlands_state,badlands)
+void badlands_state::machine_start()
{
save_item(NAME(m_pedal_value));
}
-MACHINE_RESET_MEMBER(badlands_state,badlands)
+void badlands_state::machine_reset()
{
m_pedal_value[0] = m_pedal_value[1] = 0x80;
@@ -432,9 +432,6 @@ void badlands_state::badlands(machine_config &config)
m_audiocpu->set_addrmap(AS_PROGRAM, &badlands_state::audio_map);
TIMER(config, "scantimer").configure_scanline(FUNC(badlands_state::sound_scanline), "screen", 0, 1);
- MCFG_MACHINE_START_OVERRIDE(badlands_state,badlands)
- MCFG_MACHINE_RESET_OVERRIDE(badlands_state,badlands)
-
EEPROM_2816(config, "eeprom").lock_after_write(true);
WATCHDOG_TIMER(config, "watchdog");
@@ -458,8 +455,6 @@ void badlands_state::badlands(machine_config &config)
m_screen->set_screen_update(FUNC(badlands_state::screen_update_badlands));
m_screen->set_palette("palette");
- MCFG_VIDEO_START_OVERRIDE(badlands_state,badlands)
-
/* sound hardware */
GENERIC_LATCH_8(config, m_soundlatch);
m_soundlatch->data_pending_callback().set_inputline(m_audiocpu, m6502_device::NMI_LINE);
diff --git a/src/mame/drivers/badlandsbl.cpp b/src/mame/drivers/badlandsbl.cpp
index e828b3abf54..f2676871903 100644
--- a/src/mame/drivers/badlandsbl.cpp
+++ b/src/mame/drivers/badlandsbl.cpp
@@ -21,7 +21,7 @@
sound cpu: Z80
sound ics: YM2151 + 3012
- other ics: 28c16 2kx8 eeprom.Used to store bookeeping,settings etc. like original pcb.
+ other ics: 28c16 2kx8 eeprom. Used to store book-keeping, settings etc. like original pcb.
Osc: 20 Mhz, 28 Mhz
@@ -35,7 +35,7 @@
Note
- This romset comes from a bootleg pcb produced by Playmark.This pcb was been modified to use as control standard joysticks instead of steering wheels.Game differences are: Copyright string removed.
+ This romset comes from a bootleg pcb produced by Playmark. This pcb was been modified to use as control standard joysticks instead of steering wheels. Game differences are: Copyright string removed.
***************************************************************************************/
@@ -231,8 +231,6 @@ void badlandsbl_state::badlandsb(machine_config &config)
// config.m_perfect_cpu_quantum = subtag("maincpu");
- MCFG_MACHINE_START_OVERRIDE(badlands_state,badlands)
-
EEPROM_2816(config, "eeprom").lock_after_write(true);
/* video hardware */
@@ -241,7 +239,7 @@ void badlandsbl_state::badlandsb(machine_config &config)
palette.set_format(palette_device::IRGB_1555, 256);
palette.set_membits(8);
- TILEMAP(config, m_playfield_tilemap, m_gfxdecode, 2, 8,8, TILEMAP_SCAN_ROWS, 64,32).set_info_callback(FUNC(badlands_state::get_playfield_tile_info));
+ TILEMAP(config, m_playfield_tilemap, m_gfxdecode, 2, 8,8, TILEMAP_SCAN_ROWS, 64,32).set_info_callback(FUNC(badlandsbl_state::get_playfield_tile_info));
// ATARI_MOTION_OBJECTS(config, m_mob, 0, m_screen, badlands_state::s_mob_config);
// m_mob->set_gfxdecode(m_gfxdecode);
@@ -254,8 +252,6 @@ void badlandsbl_state::badlandsb(machine_config &config)
m_screen->set_screen_update(FUNC(badlandsbl_state::screen_update_badlandsbl));
m_screen->set_palette("palette");
- MCFG_VIDEO_START_OVERRIDE(badlands_state,badlands)
-
/* sound hardware */
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/gridcomp.cpp b/src/mame/drivers/gridcomp.cpp
index b74fb04018c..e09cfc3f85d 100644
--- a/src/mame/drivers/gridcomp.cpp
+++ b/src/mame/drivers/gridcomp.cpp
@@ -83,7 +83,6 @@
#include "softlist.h"
#include "speaker.h"
-
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
#define LOG_KEYBOARD (1U << 1)
#define LOG_DEBUG (1U << 2)
@@ -96,6 +95,8 @@
#define LOGDBG(...) LOGMASKED(LOG_DEBUG, __VA_ARGS__)
+namespace {
+
#define I80130_TAG "osp"
class gridcomp_state : public driver_device
@@ -122,7 +123,9 @@ public:
void grid1109(machine_config &config);
void grid1101(machine_config &config);
- void init_gridcomp();
+protected:
+ virtual void machine_start() override;
+ virtual void machine_reset() override;
private:
required_device<cpu_device> m_maincpu;
@@ -134,9 +137,6 @@ private:
required_device<ram_device> m_ram;
required_device<tms9914_device> m_tms9914;
- DECLARE_MACHINE_START(gridcomp);
- DECLARE_MACHINE_RESET(gridcomp);
-
IRQ_CALLBACK_MEMBER(irq_callback);
uint16_t grid_9ff0_r(offs_t offset);
@@ -165,7 +165,7 @@ private:
};
-uint16_t gridcomp_state::grid_9ff0_r(offs_t offset)
+[[maybe_unused]] uint16_t gridcomp_state::grid_9ff0_r(offs_t offset)
{
uint16_t data = 0;
@@ -276,12 +276,7 @@ uint32_t gridcomp_state::screen_update_113x(screen_device &screen, bitmap_ind16
return screen_update_generic(screen, bitmap, cliprect, 512);
}
-
-void gridcomp_state::init_gridcomp()
-{
-}
-
-MACHINE_START_MEMBER(gridcomp_state, gridcomp)
+void gridcomp_state::machine_start()
{
address_space &program = m_maincpu->space(AS_PROGRAM);
@@ -290,7 +285,7 @@ MACHINE_START_MEMBER(gridcomp_state, gridcomp)
m_videoram = (uint16_t *)m_maincpu->space(AS_PROGRAM).get_write_ptr(0x400);
}
-MACHINE_RESET_MEMBER(gridcomp_state, gridcomp)
+void gridcomp_state::machine_reset()
{
m_kbd_ready = false;
}
@@ -358,9 +353,6 @@ void gridcomp_state::grid1101(machine_config &config)
m_maincpu->set_addrmap(AS_IO, &gridcomp_state::grid1101_io);
m_maincpu->set_irq_acknowledge_callback(FUNC(gridcomp_state::irq_callback));
- MCFG_MACHINE_START_OVERRIDE(gridcomp_state, gridcomp)
- MCFG_MACHINE_RESET_OVERRIDE(gridcomp_state, gridcomp)
-
I80130(config, m_osp, XTAL(15'000'000)/3);
m_osp->irq().set_inputline("maincpu", 0);
@@ -610,6 +602,8 @@ ROM_START( grid1139 )
ROMX_LOAD("1139odd.bin", 0x0001, 0x2000, CRC(13ed4bf0) SHA1(f7087f86dbbc911bee985125bccd2417e0374e8e), ROM_SKIP(1) | ROM_BIOS(0))
ROM_END
+} // Anonymous namespace
+
/***************************************************************************
diff --git a/src/mame/drivers/hornet.cpp b/src/mame/drivers/hornet.cpp
index 7ebd29f7cca..c28fb906cfb 100644
--- a/src/mame/drivers/hornet.cpp
+++ b/src/mame/drivers/hornet.cpp
@@ -281,7 +281,7 @@
GFX PCB: GQ871 PWB(B)A (C) 1999 Konami
------------------------------------------
- There are no ROMs on the two GFX PCBs, all sockets are empty. They are loacted on the LAN PCB.
+ There are no ROMs on the two GFX PCBs, all sockets are empty. They are located on the LAN PCB.
Prior to the game starting there is a message saying downloading data.
@@ -365,6 +365,8 @@
#include "speaker.h"
+namespace {
+
class hornet_state : public driver_device
{
public:
@@ -411,6 +413,10 @@ public:
void init_sscope();
void init_sscope2();
+protected:
+ virtual void machine_start() override;
+ virtual void machine_reset() override;
+
private:
// TODO: Needs verification on real hardware
static const int m_sound_timer_usec = 2800;
@@ -474,9 +480,6 @@ private:
uint8_t comm_eeprom_r();
void comm_eeprom_w(uint8_t data);
- virtual void machine_start() override;
- virtual void machine_reset() override;
- DECLARE_MACHINE_RESET(hornet_2board);
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
uint32_t screen_update_rscreen(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
TIMER_CALLBACK_MEMBER(sound_irq);
@@ -1716,6 +1719,9 @@ ROM_START(terabrsta)
ROM_LOAD( "m48t58y-70pc1", 0x000000, 0x002000, CRC(62fecb78) SHA1(09509be8a947cf2d38e12a6ea755ec0de4aa9bd4) )
ROM_END
+} // Anonymous namespace
+
+
/*************************************************************************/
GAME( 1998, gradius4, 0, hornet, gradius4, hornet_state, init_gradius4, ROT0, "Konami", "Gradius IV: Fukkatsu (ver JAC)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE )
diff --git a/src/mame/drivers/ksys573.cpp b/src/mame/drivers/ksys573.cpp
index 6f1716edb11..7e0cc30028f 100644
--- a/src/mame/drivers/ksys573.cpp
+++ b/src/mame/drivers/ksys573.cpp
@@ -218,7 +218,7 @@ G: gun mania only, drives air soft gun (this game uses real BB bullet)
056879 - Konami 056879 custom IC (QFP120, @ 13E)
MC44200FT - Motorola MC44200FT Triple 8-bit Video DAC (QFP44)
058232 - Konami 058232 custom ceramic IC (SIP14, @ 6C)
- SM5877 - Nippon Precision Circuits SM5877 2-channel D/A convertor (SSOP24, @32D)
+ SM5877 - Nippon Precision Circuits SM5877 2-channel D/A converter (SSOP24, @32D)
ADM485 - Analog Devices ADM485 low power EIA RS-485 transceiver (SOIC8, @ 20C)
ADC0834 - National Semiconductor ADC0834 8-Bit Serial I/O A/D Converter with Multiplexer
Option (SOIC14, @ 24D)
@@ -240,7 +240,7 @@ G: gun mania only, drives air soft gun (this game uses real BB bullet)
CR-587 drive dated March 1998. Note that the CR-587 will not read CDR discs ;-)
- Auxillary Controls PCB
+ Auxiliary Controls PCB
----------------------
GE765-PWB(B)A (C)1998 KONAMI CO. LTD.
@@ -370,6 +370,7 @@ G: gun mania only, drives air soft gun (this game uses real BB bullet)
#include "screen.h"
#include "speaker.h"
+
#define VERBOSE_LEVEL ( 0 )
#define ATAPI_CYCLES_PER_SECTOR ( 5000 ) // plenty of time to allow DMA setup etc. BIOS requires this be at least 2000, individual games may vary.
@@ -504,11 +505,16 @@ public:
DECLARE_WRITE_LINE_MEMBER( hyperbbc_lamp_strobe2 );
DECLARE_WRITE_LINE_MEMBER( hyperbbc_lamp_strobe3 );
- WRITE_LINE_MEMBER( h8_clk_w );
+ DECLARE_WRITE_LINE_MEMBER( h8_clk_w );
double m_pad_position[ 6 ];
optional_ioport m_pads;
+protected:
+ virtual void machine_start() override { m_lamps.resolve(); }
+ virtual void machine_reset() override;
+ virtual void driver_start() override;
+
private:
uint16_t control_r(offs_t offset, uint16_t mem_mask = ~0);
@@ -522,7 +528,6 @@ private:
void gx700pwbf_io_w(offs_t offset, uint16_t data, uint16_t mem_mask = ~0);
void gunmania_w(offs_t offset, uint16_t data, uint16_t mem_mask = ~0);
uint16_t gunmania_r(offs_t offset, uint16_t mem_mask = ~0);
- DECLARE_MACHINE_RESET( konami573 );
DECLARE_WRITE_LINE_MEMBER( ata_interrupt );
TIMER_CALLBACK_MEMBER( atapi_xfer_end );
@@ -554,9 +559,6 @@ private:
void konami573a_map(address_map &map);
void konami573d_map(address_map &map);
- virtual void machine_start() override { m_lamps.resolve(); }
- virtual void driver_start() override;
-
required_ioport m_analog0;
required_ioport m_analog1;
required_ioport m_analog2;
@@ -840,7 +842,7 @@ void ksys573_state::driver_start()
save_item( NAME( m_control ) );
}
-MACHINE_RESET_MEMBER( ksys573_state,konami573 )
+void ksys573_state::machine_reset()
{
update_disc();
@@ -2207,8 +2209,6 @@ void ksys573_state::konami573(machine_config &config)
subdevice<ram_device>("maincpu:ram")->set_default_size("4M");
- MCFG_MACHINE_RESET_OVERRIDE(ksys573_state, konami573)
-
ATA_INTERFACE(config, m_ata, 0);
m_ata->irq_handler().set(FUNC(ksys573_state::ata_interrupt));
m_ata->slot(0).option_add("cr589", CR589);
@@ -5275,6 +5275,7 @@ ROM_START( strgchmp )
ROM_LOAD( "710uaa.22h", 0x000000, 0x002000, CRC(a3e93d49) SHA1(630daa1a02320433a068eb5214f6b30acc06df76) )
ROM_END
+
GAME( 1997, sys573, 0, konami573, konami573, ksys573_state, empty_init, ROT0, "Konami", "System 573 BIOS", MACHINE_IS_BIOS_ROOT )
GAME( 1997, strgchmp, sys573, konami573, hndlchmp, ksys573_state, empty_init, ROT0, "Konami", "Steering Champ (GQ710 VER. UAA)", MACHINE_IMPERFECT_SOUND )
diff --git a/src/mame/drivers/mc1502.cpp b/src/mame/drivers/mc1502.cpp
index 5d1864cc337..3c91623c04c 100644
--- a/src/mame/drivers/mc1502.cpp
+++ b/src/mame/drivers/mc1502.cpp
@@ -180,7 +180,7 @@ void mc1502_state::init_mc1502()
program.install_ram(0, m_ram->size() - 1, m_ram->pointer());
}
-MACHINE_START_MEMBER(mc1502_state, mc1502)
+void mc1502_state::machine_start()
{
/*
Keyboard polling circuit holds IRQ1 high until a key is
@@ -195,7 +195,7 @@ MACHINE_START_MEMBER(mc1502_state, mc1502)
m_kbd.keyb_signal_timer->adjust(attotime::from_msec(20), 0, attotime::from_msec(20));
}
-MACHINE_RESET_MEMBER(mc1502_state, mc1502)
+void mc1502_state::machine_reset()
{
m_spkrdata = 0;
m_pit_out2 = 1;
@@ -240,9 +240,6 @@ void mc1502_state::mc1502(machine_config &config)
m_maincpu->set_addrmap(AS_IO, &mc1502_state::mc1502_io);
m_maincpu->set_irq_acknowledge_callback("pic8259", FUNC(pic8259_device::inta_cb));
- MCFG_MACHINE_START_OVERRIDE( mc1502_state, mc1502 )
- MCFG_MACHINE_RESET_OVERRIDE( mc1502_state, mc1502 )
-
PIT8253(config, m_pit8253);
m_pit8253->set_clk<0>(XTAL(16'000'000)/12); /* heartbeat IRQ */
m_pit8253->out_handler<0>().set(m_pic8259, FUNC(pic8259_device::ir0_w));
diff --git a/src/mame/drivers/namcofl.cpp b/src/mame/drivers/namcofl.cpp
index bb9372accc8..cb9cbc1b551 100644
--- a/src/mame/drivers/namcofl.cpp
+++ b/src/mame/drivers/namcofl.cpp
@@ -496,7 +496,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(namcofl_state::mcu_irq2_cb)
}
-MACHINE_START_MEMBER(namcofl_state,namcofl)
+void namcofl_state::machine_start()
{
m_raster_interrupt_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(namcofl_state::raster_interrupt_callback),this));
m_network_interrupt_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(namcofl_state::network_interrupt_callback),this));
@@ -504,7 +504,7 @@ MACHINE_START_MEMBER(namcofl_state,namcofl)
}
-MACHINE_RESET_MEMBER(namcofl_state,namcofl)
+void namcofl_state::machine_reset()
{
m_network_interrupt_timer->adjust(m_screen->time_until_pos(m_screen->visible_area().max_y + 3));
m_vblank_interrupt_timer->adjust(m_screen->time_until_pos(m_screen->visible_area().max_y + 1));
@@ -544,8 +544,6 @@ void namcofl_state::namcofl(machine_config &config)
TIMER(config, "mcu_irq0").configure_periodic(FUNC(namcofl_state::mcu_irq0_cb), attotime::from_hz(60));
TIMER(config, "mcu_irq2").configure_periodic(FUNC(namcofl_state::mcu_irq2_cb), attotime::from_hz(60));
- MCFG_MACHINE_START_OVERRIDE(namcofl_state,namcofl)
- MCFG_MACHINE_RESET_OVERRIDE(namcofl_state,namcofl)
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
@@ -578,8 +576,6 @@ void namcofl_state::namcofl(machine_config &config)
NAMCO_C116(config, m_c116, 0);
m_c116->enable_shadows();
- MCFG_VIDEO_START_OVERRIDE(namcofl_state,namcofl)
-
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
c352_device &c352(C352(config, "c352", 48.384_MHz_XTAL/2, 288));
diff --git a/src/mame/drivers/nascom1.cpp b/src/mame/drivers/nascom1.cpp
index c1c6282f77b..6f14e852191 100644
--- a/src/mame/drivers/nascom1.cpp
+++ b/src/mame/drivers/nascom1.cpp
@@ -45,6 +45,8 @@ Cassette (nascom2):
#include "screen.h"
+namespace {
+
//**************************************************************************
// TYPE DEFINITIONS
//**************************************************************************
@@ -145,9 +147,11 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(cass_speed);
+protected:
+ virtual void machine_reset() override;
+
private:
TIMER_DEVICE_CALLBACK_MEMBER(nascom2_kansas_r);
- DECLARE_MACHINE_RESET(nascom2);
DECLARE_WRITE_LINE_MEMBER(nascom2_kansas_w);
DECLARE_WRITE_LINE_MEMBER(ram_disable_w);
DECLARE_WRITE_LINE_MEMBER(ram_disable_cpm_w);
@@ -313,7 +317,7 @@ TIMER_DEVICE_CALLBACK_MEMBER( nascom2_state::nascom2_kansas_r )
}
// This stuff has never been connected up - what's it for?
-DEVICE_IMAGE_LOAD_MEMBER( nascom_state::load_nascom1_cassette )
+[[maybe_unused]] DEVICE_IMAGE_LOAD_MEMBER( nascom_state::load_nascom1_cassette )
{
m_tape_size = image.length();
m_tape_image = (uint8_t*)image.ptr();
@@ -325,7 +329,7 @@ DEVICE_IMAGE_LOAD_MEMBER( nascom_state::load_nascom1_cassette )
return image_init_result::PASS;
}
-DEVICE_IMAGE_UNLOAD_MEMBER( nascom_state::unload_nascom1_cassette )
+[[maybe_unused]] DEVICE_IMAGE_UNLOAD_MEMBER( nascom_state::unload_nascom1_cassette )
{
m_tape_image = nullptr;
m_tape_size = m_tape_index = 0;
@@ -459,10 +463,8 @@ void nascom_state::machine_reset()
m_hd6402->write_cs(1);
}
-MACHINE_RESET_MEMBER(nascom2_state, nascom2)
+void nascom2_state::machine_reset()
{
- machine_reset();
-
// nascom2: restore speed at machine start
m_cass_speed = ioport("DSW0")->read();
@@ -839,8 +841,6 @@ void nascom2_state::nascom2(machine_config &config)
m_maincpu->set_addrmap(AS_PROGRAM, &nascom2_state::nascom2_mem);
m_maincpu->set_addrmap(AS_IO, &nascom2_state::nascom2_io);
- MCFG_MACHINE_RESET_OVERRIDE(nascom2_state, nascom2 )
-
// video hardware
m_screen->set_size(48 * 8, 16 * 14);
m_screen->set_visarea(0, 48 * 8 - 1, 0, 16 * 14 - 1);
@@ -940,6 +940,8 @@ ROM_START( nascom2c )
ROM_LOAD("nasgra.ic54", 0x0800, 0x0800, CRC(2bc09d32) SHA1(d384297e9b02cbcb283c020da51b3032ff62b1ae))
ROM_END
+} // Anonymous namespace
+
//**************************************************************************
// GAME DRIVERS
diff --git a/src/mame/drivers/phoenix.cpp b/src/mame/drivers/phoenix.cpp
index 703e90a1fc0..58e8c6390b0 100644
--- a/src/mame/drivers/phoenix.cpp
+++ b/src/mame/drivers/phoenix.cpp
@@ -435,19 +435,12 @@ static GFXDECODE_START( gfx_pleiads )
GFXDECODE_END
-MACHINE_RESET_MEMBER(phoenix_state,phoenix)
-{
-}
-
-
void phoenix_state::phoenix(machine_config &config)
{
/* basic machine hardware */
I8085A(config, m_maincpu, CPU_CLOCK); /* 2.75 MHz */
m_maincpu->set_addrmap(AS_PROGRAM, &phoenix_state::phoenix_memory_map);
- MCFG_MACHINE_RESET_OVERRIDE(phoenix_state,phoenix)
-
/* video hardware */
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART);
@@ -457,8 +450,6 @@ void phoenix_state::phoenix(machine_config &config)
GFXDECODE(config, m_gfxdecode, m_palette, gfx_phoenix);
PALETTE(config, m_palette, FUNC(phoenix_state::phoenix_palette), 256);
- MCFG_VIDEO_START_OVERRIDE(phoenix_state,phoenix)
-
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -510,8 +501,6 @@ void phoenix_state::survival(machine_config &config)
maincpu.in_sid_func().set(FUNC(phoenix_state::survival_sid_callback));
maincpu.set_addrmap(AS_PROGRAM, &phoenix_state::survival_memory_map);
- MCFG_MACHINE_RESET_OVERRIDE(phoenix_state,phoenix)
-
/* video hardware */
/* schematics fairly identical to phoenix, however the interesting
@@ -525,8 +514,6 @@ void phoenix_state::survival(machine_config &config)
GFXDECODE(config, m_gfxdecode, m_palette, gfx_phoenix);
PALETTE(config, m_palette, FUNC(phoenix_state::survival_palette), 256);
- MCFG_VIDEO_START_OVERRIDE(phoenix_state,phoenix)
-
/* sound hardware */
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/psx.cpp b/src/mame/drivers/psx.cpp
index ba2e9ac0ac5..dd0aef1ad39 100644
--- a/src/mame/drivers/psx.cpp
+++ b/src/mame/drivers/psx.cpp
@@ -29,6 +29,9 @@
#include <zlib.h>
+
+namespace {
+
class psx1_state : public driver_device
{
public:
@@ -46,7 +49,7 @@ public:
void psu(machine_config &config);
void psj(machine_config &config);
-protected:
+private:
std::vector<uint8_t> m_exe_buffer;
int m_cd_param_p;
int m_cd_result_p;
@@ -57,7 +60,6 @@ protected:
uint8_t m_cd_io_status;
uint8_t m_cd_param[8];
uint8_t m_cd_result[8];
- DECLARE_MACHINE_RESET(psx);
inline void ATTR_PRINTF(3,4) verboselog( int n_level, const char *s_fmt, ... );
void psxexe_conv32(uint32_t *uint32);
int load_psxexe(std::vector<uint8_t> buffer);
@@ -74,7 +76,7 @@ protected:
void psx_map(address_map &map);
void subcpu_map(address_map &map);
-private:
+
required_device<psx_parallel_slot_device> m_parallel;
required_device<psxcd_device> m_psxcd;
};
@@ -708,6 +710,9 @@ Version 4.3 E
*/
+} // Anonymous namespace
+
+
// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS
CONS( 1994, psj, 0, 0, psj, 0, psx1_state, empty_init, "Sony Computer Entertainment Inc", "Sony PlayStation (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND )
CONS( 1995, pse, psj, 0, pse, 0, psx1_state, empty_init, "Sony Computer Entertainment Inc", "Sony PlayStation (Europe)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND )
diff --git a/src/mame/drivers/s11.cpp b/src/mame/drivers/s11.cpp
index cce8cc20b8f..14c61f5c2b8 100644
--- a/src/mame/drivers/s11.cpp
+++ b/src/mame/drivers/s11.cpp
@@ -188,7 +188,7 @@ void s11_state::device_timer(emu_timer &timer, device_timer_id id, int param, vo
}
}
-MACHINE_RESET_MEMBER( s11_state, s11 )
+void s11_state::machine_reset()
{
membank("bank0")->set_entry(0);
membank("bank1")->set_entry(0);
@@ -399,7 +399,6 @@ void s11_state::s11(machine_config &config)
/* basic machine hardware */
M6802(config, m_maincpu, XTAL(4'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &s11_state::s11_main_map);
- MCFG_MACHINE_RESET_OVERRIDE(s11_state, s11)
INPUT_MERGER_ANY_HIGH(config, m_mainirq).output_handler().set(FUNC(s11_state::main_irq));
INPUT_MERGER_ANY_HIGH(config, m_piairq).output_handler().set(FUNC(s11_state::pia_irq));
diff --git a/src/mame/drivers/s11a.cpp b/src/mame/drivers/s11a.cpp
index 022f36bfab8..d76670df158 100644
--- a/src/mame/drivers/s11a.cpp
+++ b/src/mame/drivers/s11a.cpp
@@ -122,12 +122,6 @@ static INPUT_PORTS_START( s11a )
PORT_CONFSETTING( 0x10, "English" )
INPUT_PORTS_END
-
-MACHINE_RESET_MEMBER( s11a_state, s11a )
-{
- MACHINE_RESET_CALL_MEMBER(s11);
-}
-
void s11a_state::dig0_w(uint8_t data)
{
data &= 0x7f;
@@ -150,7 +144,6 @@ void s11a_state::s11a_base(machine_config &config)
/* basic machine hardware */
M6808(config, m_maincpu, XTAL(4'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &s11_state::s11_main_map);
- MCFG_MACHINE_RESET_OVERRIDE(s11a_state, s11a)
INPUT_MERGER_ANY_HIGH(config, m_mainirq).output_handler().set(FUNC(s11_state::main_irq));
INPUT_MERGER_ANY_HIGH(config, m_piairq).output_handler().set(FUNC(s11_state::pia_irq));
diff --git a/src/mame/drivers/s11b.cpp b/src/mame/drivers/s11b.cpp
index 31c169ffa3b..80d4379367c 100644
--- a/src/mame/drivers/s11b.cpp
+++ b/src/mame/drivers/s11b.cpp
@@ -141,7 +141,7 @@ static INPUT_PORTS_START( s11b )
PORT_CONFSETTING( 0x10, "English" )
INPUT_PORTS_END
-MACHINE_RESET_MEMBER( s11b_state, s11b )
+void s11b_state::machine_reset()
{
membank("bank0")->set_entry(0);
membank("bank1")->set_entry(0);
@@ -232,7 +232,6 @@ void s11b_state::s11b_base(machine_config &config)
/* basic machine hardware */
M6808(config, m_maincpu, XTAL(4'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &s11_state::s11_main_map);
- MCFG_MACHINE_RESET_OVERRIDE(s11b_state, s11b)
INPUT_MERGER_ANY_HIGH(config, m_mainirq).output_handler().set(FUNC(s11_state::main_irq));
INPUT_MERGER_ANY_HIGH(config, m_piairq).output_handler().set(FUNC(s11_state::pia_irq));
diff --git a/src/mame/drivers/s11c.cpp b/src/mame/drivers/s11c.cpp
index bbe95db10c6..b669a882231 100644
--- a/src/mame/drivers/s11c.cpp
+++ b/src/mame/drivers/s11c.cpp
@@ -153,15 +153,15 @@ void s11c_state::s11c(machine_config &config)
m_pia28->readpa_handler().set(FUNC(s11_state::pia28_w7_r));
m_pia28->set_port_a_input_overrides_output_mask(0xff);
m_pia28->writepa_handler().set(FUNC(s11a_state::dig0_w));
- m_pia28->writepb_handler().set(FUNC(s11b_state::dig1_w));
+ m_pia28->writepb_handler().set(FUNC(s11c_state::dig1_w));
m_pia28->ca2_handler().set(FUNC(s11_state::pia28_ca2_w));
m_pia28->cb2_handler().set(FUNC(s11_state::pia28_cb2_w));
m_pia28->irqa_handler().set(m_piairq, FUNC(input_merger_device::in_w<5>));
m_pia28->irqb_handler().set(m_piairq, FUNC(input_merger_device::in_w<6>));
PIA6821(config, m_pia2c, 0);
- m_pia2c->writepa_handler().set(FUNC(s11b_state::pia2c_pa_w));
- m_pia2c->writepb_handler().set(FUNC(s11b_state::pia2c_pb_w));
+ m_pia2c->writepa_handler().set(FUNC(s11c_state::pia2c_pa_w));
+ m_pia2c->writepb_handler().set(FUNC(s11c_state::pia2c_pb_w));
m_pia2c->irqa_handler().set(m_piairq, FUNC(input_merger_device::in_w<7>));
m_pia2c->irqb_handler().set(m_piairq, FUNC(input_merger_device::in_w<8>));
@@ -174,7 +174,7 @@ void s11c_state::s11c(machine_config &config)
m_pia30->irqb_handler().set(m_piairq, FUNC(input_merger_device::in_w<10>));
PIA6821(config, m_pia34, 0);
- m_pia34->writepa_handler().set(FUNC(s11b_state::pia34_pa_w));
+ m_pia34->writepa_handler().set(FUNC(s11c_state::pia34_pa_w));
m_pia34->writepb_handler().set(FUNC(s11b_state::pia34_pb_w));
m_pia34->cb2_handler().set(FUNC(s11b_state::pia34_cb2_w));
m_pia34->irqa_handler().set(m_piairq, FUNC(input_merger_device::in_w<11>));
diff --git a/src/mame/drivers/s6a.cpp b/src/mame/drivers/s6a.cpp
index 3ed8b6a7868..74dc6c70d29 100644
--- a/src/mame/drivers/s6a.cpp
+++ b/src/mame/drivers/s6a.cpp
@@ -51,6 +51,8 @@ ToDo:
#include "s6a.lh"
+namespace {
+
class s6a_state : public genpin_class
{
public:
@@ -75,6 +77,10 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(main_nmi);
DECLARE_INPUT_CHANGED_MEMBER(audio_nmi);
+protected:
+ virtual void machine_start() override { m_digits.resolve(); }
+ virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+
private:
uint8_t sound_r();
void dig0_w(uint8_t data);
@@ -95,7 +101,6 @@ private:
DECLARE_WRITE_LINE_MEMBER(pia30_ca2_w) { }; //ST4
DECLARE_WRITE_LINE_MEMBER(pia30_cb2_w) { }; //ST3
DECLARE_WRITE_LINE_MEMBER(pia_irq);
- DECLARE_MACHINE_RESET(s6a);
void s6a_audio_map(address_map &map);
void s6a_main_map(address_map &map);
@@ -105,9 +110,7 @@ private:
uint8_t m_switch_col;
bool m_data_ok;
emu_timer* m_irq_timer;
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
static const device_timer_id TIMER_IRQ = 0;
- virtual void machine_start() override { m_digits.resolve(); }
required_device<cpu_device> m_maincpu;
required_device<cpu_device> m_audiocpu;
required_device<hc55516_device> m_hc55516;
@@ -387,10 +390,6 @@ void s6a_state::device_timer(emu_timer &timer, device_timer_id id, int param, vo
}
}
-MACHINE_RESET_MEMBER( s6a_state, s6a )
-{
-}
-
void s6a_state::init_s6a()
{
m_irq_timer = timer_alloc(TIMER_IRQ);
@@ -402,7 +401,6 @@ void s6a_state::s6a(machine_config &config)
/* basic machine hardware */
M6808(config, m_maincpu, 3580000);
m_maincpu->set_addrmap(AS_PROGRAM, &s6a_state::s6a_main_map);
- MCFG_MACHINE_RESET_OVERRIDE(s6a_state, s6a)
/* Video */
config.set_default_layout(layout_s6a);
@@ -524,6 +522,8 @@ ROM_START(alpok_f6)
ROM_LOAD("sound3.716", 0x4800, 0x0800, CRC(55a10d13) SHA1(521d4cdfb0ed8178b3594cedceae93b772a951a4))
ROM_END
+} // Anonymous namespace
+
GAME( 1980, algar_l1, 0, s6a, s6a, s6a_state, init_s6a, ROT0, "Williams", "Algar (L-1)", MACHINE_MECHANICAL | MACHINE_NOT_WORKING )
GAME( 1980, alpok_l6, 0, s6a, s6a, s6a_state, init_s6a, ROT0, "Williams", "Alien Poker (L-6)", MACHINE_MECHANICAL | MACHINE_NOT_WORKING )
diff --git a/src/mame/drivers/s7.cpp b/src/mame/drivers/s7.cpp
index c3f36070c4f..2a3fc8fa340 100644
--- a/src/mame/drivers/s7.cpp
+++ b/src/mame/drivers/s7.cpp
@@ -34,7 +34,7 @@ Game Outhole Tilt Notes
Black Knight L Z C U To start, hold down LZC and press 1.
Firepower II S D [D F] To start, hold down SD or DF and press 1.
Defender rs I O To start, hold down IO and Right-Shift, then press 1.
-Pharoah Right Up To start, hold down Right and Down, and press 1
+Pharaoh Right Up To start, hold down Right and Down, and press 1
Starlight S D To start, hold down SD and press 1.
Cosmic Gunfight ; ' To start, press 1 then hold down quote and colon
Thunderball Speech is mixed up
@@ -46,7 +46,7 @@ Time Fantasy Up Q Works
Varkon S \ X is 2-player start
Jungle Lord X S Q May need to also press W to get outhole to work
Joust Does something? Not a normal pinball
-Hyperball Does something? Not a normal pinball
+HyperBall Does something? Not a normal pinball
ToDo:
@@ -67,6 +67,8 @@ ToDo:
#include "s7.lh"
+namespace {
+
class s7_state : public genpin_class
{
public:
@@ -93,6 +95,10 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(audio_nmi);
DECLARE_INPUT_CHANGED_MEMBER(diag_coin);
+protected:
+ virtual void machine_start() override;
+ virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+
private:
uint8_t sound_r();
void dig0_w(uint8_t data);
@@ -120,7 +126,6 @@ private:
DECLARE_WRITE_LINE_MEMBER(pia30_ca2_w) { }; //ST4
DECLARE_WRITE_LINE_MEMBER(pia30_cb2_w) { }; //ST3
DECLARE_WRITE_LINE_MEMBER(pia_irq);
- DECLARE_MACHINE_RESET(s7);
void s7_audio_map(address_map &map);
void s7_main_map(address_map &map);
@@ -131,9 +136,7 @@ private:
bool m_data_ok;
bool m_memprotect;
emu_timer* m_irq_timer;
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
static const device_timer_id TIMER_IRQ = 0;
- virtual void machine_start() override;
required_device<cpu_device> m_maincpu;
required_device<cpu_device> m_audiocpu;
required_device<hc55516_device> m_hc55516;
@@ -285,7 +288,7 @@ void s7_state::sol2_w(uint8_t data)
m_pia21->ca1_w(BIT(data, 5));
}
-void s7_state::sol3_w(uint8_t data)
+[[maybe_unused]] void s7_state::sol3_w(uint8_t data)
{
if (BIT(data, 1))
m_samples->start(0, 6); // knocker
@@ -429,10 +432,6 @@ void s7_state::machine_start()
subdevice<nvram_device>("nvram")->set_base(m_nvram, sizeof(m_nvram));
}
-MACHINE_RESET_MEMBER( s7_state, s7 )
-{
-}
-
void s7_state::init_s7()
{
m_irq_timer = timer_alloc(TIMER_IRQ);
@@ -444,7 +443,6 @@ void s7_state::s7(machine_config &config)
/* basic machine hardware */
M6808(config, m_maincpu, 3580000);
m_maincpu->set_addrmap(AS_PROGRAM, &s7_state::s7_main_map);
- MCFG_MACHINE_RESET_OVERRIDE(s7_state, s7)
/* Video */
config.set_default_layout(layout_s7);
@@ -880,6 +878,7 @@ ROM_START(strlt_l1)
ROM_LOAD("sound3.716", 0x4800, 0x0800, CRC(55a10d13) SHA1(521d4cdfb0ed8178b3594cedceae93b772a951a4))
ROM_END
+} // Anonymous namespace
GAME( 1980, bk_l4, 0, s7, s7, s7_state, init_s7, ROT0, "Williams", "Black Knight (L-4)", MACHINE_MECHANICAL | MACHINE_NOT_WORKING )
diff --git a/src/mame/drivers/s8.cpp b/src/mame/drivers/s8.cpp
index 24e46a53a8b..efbd1cd0fa2 100644
--- a/src/mame/drivers/s8.cpp
+++ b/src/mame/drivers/s8.cpp
@@ -34,7 +34,7 @@ Pennant Fever is a baseball game where you aim for targets at the top of the
Gridiron, a conversion kit for Pennant Fever. Didn't get past the prototype stage.
-Still Crazy, also only a prototype. See s8a.c for more.
+Still Crazy, also only a prototype. See s8a.cpp for more.
Break Street, another failed novelty, not much is known about it. Seems it
features a break-dancing toy and a spinning disk.
@@ -55,6 +55,8 @@ ToDo:
#include "s8.lh"
+namespace {
+
class s8_state : public genpin_class
{
public:
@@ -78,6 +80,10 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(main_nmi);
DECLARE_INPUT_CHANGED_MEMBER(audio_nmi);
+protected:
+ virtual void machine_start() override { m_digits.resolve(); }
+ virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+
private:
uint8_t sound_r();
void dig0_w(uint8_t data);
@@ -96,7 +102,6 @@ private:
DECLARE_WRITE_LINE_MEMBER(pia28_ca2_w) { }; // comma3&4
DECLARE_WRITE_LINE_MEMBER(pia28_cb2_w) { }; // comma1&2
DECLARE_WRITE_LINE_MEMBER(pia_irq);
- DECLARE_MACHINE_RESET(s8);
void s8_audio_map(address_map &map);
void s8_main_map(address_map &map);
@@ -106,9 +111,7 @@ private:
uint8_t m_switch_col;
bool m_data_ok;
emu_timer* m_irq_timer;
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
static const device_timer_id TIMER_IRQ = 0;
- virtual void machine_start() override { m_digits.resolve(); }
required_device<m6802_cpu_device> m_maincpu;
required_device<cpu_device> m_audiocpu;
required_device<pia6821_device> m_pias;
@@ -313,10 +316,6 @@ void s8_state::device_timer(emu_timer &timer, device_timer_id id, int param, voi
}
}
-MACHINE_RESET_MEMBER( s8_state, s8 )
-{
-}
-
void s8_state::init_s8()
{
m_irq_timer = timer_alloc(TIMER_IRQ);
@@ -329,7 +328,6 @@ void s8_state::s8(machine_config &config)
M6802(config, m_maincpu, XTAL(4'000'000));
m_maincpu->set_ram_enable(false);
m_maincpu->set_addrmap(AS_PROGRAM, &s8_state::s8_main_map);
- MCFG_MACHINE_RESET_OVERRIDE(s8_state, s8)
/* Video */
config.set_default_layout(layout_s8);
@@ -409,6 +407,8 @@ ROM_START(pfevr_p3)
ROM_LOAD("cpu_u49.128", 0x0000, 0x4000, CRC(b0161712) SHA1(5850f1f1f11e3ac9b9629cff2b26c4ad32436b55))
ROM_END
+} // Anonymous namespace
+
GAME(1984, pfevr_l2, 0, s8, s8, s8_state, init_s8, ROT0, "Williams", "Pennant Fever (L-2)", MACHINE_MECHANICAL | MACHINE_NOT_WORKING )
GAME(1984, pfevr_p3, pfevr_l2, s8, s8, s8_state, init_s8, ROT0, "Williams", "Pennant Fever (P-3)", MACHINE_MECHANICAL | MACHINE_NOT_WORKING )
diff --git a/src/mame/drivers/s8a.cpp b/src/mame/drivers/s8a.cpp
index abf684b3204..d34aa1e0f8f 100644
--- a/src/mame/drivers/s8a.cpp
+++ b/src/mame/drivers/s8a.cpp
@@ -31,6 +31,8 @@ ToDo:
#include "s8a.lh"
+namespace {
+
class s8a_state : public genpin_class
{
public:
@@ -54,6 +56,10 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(main_nmi);
DECLARE_INPUT_CHANGED_MEMBER(audio_nmi);
+protected:
+ virtual void machine_start() override { m_digits.resolve(); }
+ virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+
private:
uint8_t sound_r();
void dig0_w(uint8_t data);
@@ -72,7 +78,6 @@ private:
DECLARE_WRITE_LINE_MEMBER(pia28_ca2_w) { }; // comma3&4
DECLARE_WRITE_LINE_MEMBER(pia28_cb2_w) { }; // comma1&2
DECLARE_WRITE_LINE_MEMBER(pia_irq);
- DECLARE_MACHINE_RESET(s8a);
void s8a_audio_map(address_map &map);
void s8a_main_map(address_map &map);
@@ -82,9 +87,7 @@ private:
uint8_t m_switch_col;
bool m_data_ok;
emu_timer* m_irq_timer;
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
static const device_timer_id TIMER_IRQ = 0;
- virtual void machine_start() override { m_digits.resolve(); }
required_device<m6802_cpu_device> m_maincpu;
required_device<cpu_device> m_audiocpu;
required_device<pia6821_device> m_pias;
@@ -285,10 +288,6 @@ void s8a_state::device_timer(emu_timer &timer, device_timer_id id, int param, vo
}
}
-MACHINE_RESET_MEMBER( s8a_state, s8a )
-{
-}
-
void s8a_state::init_s8a()
{
m_irq_timer = timer_alloc(TIMER_IRQ);
@@ -301,7 +300,6 @@ void s8a_state::s8a(machine_config &config)
M6802(config, m_maincpu, XTAL(4'000'000));
m_maincpu->set_ram_enable(false);
m_maincpu->set_addrmap(AS_PROGRAM, &s8a_state::s8a_main_map);
- MCFG_MACHINE_RESET_OVERRIDE(s8a_state, s8a)
/* Video */
config.set_default_layout(layout_s8a);
@@ -373,4 +371,6 @@ ROM_START(scrzy_l1)
ROM_LOAD("ic49.bin", 0x0000, 0x4000, CRC(bcc8ccc4) SHA1(2312f9cc4f5a2dadfbfa61d13c31bb5838adf152) )
ROM_END
+} // Anonymous namespace
+
GAME( 1984, scrzy_l1, 0, s8a, s8a, s8a_state, init_s8a, ROT0, "Williams", "Still Crazy", MACHINE_MECHANICAL | MACHINE_NOT_WORKING )
diff --git a/src/mame/drivers/s9.cpp b/src/mame/drivers/s9.cpp
index 1aee5d79c89..1b0d8644b8a 100644
--- a/src/mame/drivers/s9.cpp
+++ b/src/mame/drivers/s9.cpp
@@ -41,6 +41,8 @@ ToDo:
#include "s9.lh"
+namespace {
+
class s9_state : public genpin_class
{
public:
@@ -65,6 +67,10 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(main_nmi);
DECLARE_INPUT_CHANGED_MEMBER(audio_nmi);
+protected:
+ virtual void machine_start() override { m_digits.resolve(); }
+ virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+
private:
uint8_t sound_r();
void dig0_w(uint8_t data);
@@ -83,7 +89,6 @@ private:
DECLARE_WRITE_LINE_MEMBER(pia28_ca2_w) { }; // comma3&4
DECLARE_WRITE_LINE_MEMBER(pia28_cb2_w) { }; // comma1&2
DECLARE_WRITE_LINE_MEMBER(pia_irq);
- DECLARE_MACHINE_RESET(s9);
void s9_audio_map(address_map &map);
void s9_main_map(address_map &map);
@@ -93,9 +98,7 @@ private:
uint8_t m_switch_col;
bool m_data_ok;
emu_timer* m_irq_timer;
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
static const device_timer_id TIMER_IRQ = 0;
- virtual void machine_start() override { m_digits.resolve(); }
required_device<cpu_device> m_maincpu;
required_device<cpu_device> m_audiocpu;
required_device<hc55516_device> m_hc55516;
@@ -319,10 +322,6 @@ void s9_state::device_timer(emu_timer &timer, device_timer_id id, int param, voi
}
}
-MACHINE_RESET_MEMBER( s9_state, s9 )
-{
-}
-
void s9_state::init_s9()
{
m_irq_timer = timer_alloc(TIMER_IRQ);
@@ -334,7 +333,6 @@ void s9_state::s9(machine_config &config)
/* basic machine hardware */
M6808(config, m_maincpu, XTAL(4'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &s9_state::s9_main_map);
- MCFG_MACHINE_RESET_OVERRIDE(s9_state, s9)
/* Video */
config.set_default_layout(layout_s9);
@@ -529,6 +527,8 @@ ROM_START(alcat_l7)
ROM_REGION(0x8000, "audioroms", ROMREGION_ERASEFF)
ROM_END
+} // Anonymous namespace
+
GAME( 1983, ratrc_l1, 0, s9, s9, s9_state, init_s9, ROT0, "Williams", "Rat Race (L-1)", MACHINE_MECHANICAL | MACHINE_NOT_WORKING)
GAME( 1985, sorcr_l1, sorcr_l2, s9, s9, s9_state, init_s9, ROT0, "Williams", "Sorcerer (L-1)", MACHINE_MECHANICAL | MACHINE_NOT_WORKING )
diff --git a/src/mame/drivers/stargame.cpp b/src/mame/drivers/stargame.cpp
index e1fc78eb29e..30f1c4628ad 100644
--- a/src/mame/drivers/stargame.cpp
+++ b/src/mame/drivers/stargame.cpp
@@ -19,6 +19,8 @@
#include "machine/watchdog.h"
+namespace {
+
class stargame_state : public genpin_class
{
public:
@@ -31,9 +33,11 @@ public:
void stargame(machine_config &config);
+protected:
+ virtual void machine_reset() override;
+
private:
void rint_w(uint8_t data);
- DECLARE_MACHINE_RESET(stargame);
void audiocpu_io(address_map &map);
void audiocpu_map(address_map &map);
@@ -91,7 +95,7 @@ void stargame_state::rint_w(uint8_t data)
m_audiocpu->set_input_line(INPUT_LINE_IRQ0, CLEAR_LINE);
}
-MACHINE_RESET_MEMBER( stargame_state, stargame )
+void stargame_state::machine_reset()
{
m_audiocpu->set_input_line(INPUT_LINE_RESET, ASSERT_LINE); // doesn't do anything? cpu should be stuck in reset until allowed to start by SRESET line
}
@@ -115,8 +119,6 @@ void stargame_state::stargame(machine_config &config)
m_audiocpu->set_addrmap(AS_PROGRAM, &stargame_state::audiocpu_map);
m_audiocpu->set_addrmap(AS_IO, &stargame_state::audiocpu_io);
- MCFG_MACHINE_RESET_OVERRIDE(stargame_state, stargame)
-
/* video hardware */
//config.set_default_layout();
@@ -161,6 +163,8 @@ ROM_START(whtforce)
ROM_LOAD("sound.bin", 0x0000, 0x4000, CRC(4b2a1580) SHA1(62133fd186b1aab4f5aecfbff8151ba416328021))
ROM_END
+} // Anonymous namespace
+
GAME( 1986, spcship, 0, stargame, stargame, stargame_state, empty_init, ROT0, "Stargame", "Space Ship (Pinball)", MACHINE_IS_SKELETON_MECHANICAL )
GAME( 1987, whtforce, 0, stargame, stargame, stargame_state, empty_init, ROT0, "Stargame", "White Force", MACHINE_IS_SKELETON_MECHANICAL )
diff --git a/src/mame/drivers/vlc.cpp b/src/mame/drivers/vlc.cpp
index 67b58ccfe2f..1e1bd860668 100644
--- a/src/mame/drivers/vlc.cpp
+++ b/src/mame/drivers/vlc.cpp
@@ -138,6 +138,8 @@ nevada TYPE2 : 64 45 51 06 32 02 31 31
#include "tilemap.h"
+namespace {
+
#define MASTER_CLOCK XTAL(16'000'000)
#define MASTER_CPU ((MASTER_CLOCK)/2) // 8mhz
#define SOUND_CLOCK ((MASTER_CLOCK) /8) // 2mhz
@@ -174,6 +176,7 @@ public:
void init_nevada();
protected:
+ virtual void machine_start() override;
virtual void video_start() override;
private:
@@ -211,8 +214,6 @@ private:
void nevada_sec_w(uint16_t data);
void vram_w(offs_t offset, uint16_t data);
- DECLARE_MACHINE_START(nevada);
-
TILE_GET_INFO_MEMBER(get_bg_tile_info);
void nevada_map(address_map &map);
@@ -560,7 +561,7 @@ INPUT_PORTS_END
* Machine start *
*************************/
-MACHINE_START_MEMBER(nevada_state, nevada)
+void nevada_state::machine_start()
{
m_nvram->set_base(m_ram62256, 0x1000);
}
@@ -579,8 +580,6 @@ void nevada_state::nevada(machine_config &config)
WATCHDOG_TIMER(config, "watchdog").set_time(attotime::from_msec(150)); /* 150ms Ds1232 TD to Ground */
- MCFG_MACHINE_START_OVERRIDE(nevada_state, nevada)
-
NVRAM(config, "nvram").set_custom_handler(FUNC(nevada_state::nvram_init));
// video hardware
@@ -673,6 +672,9 @@ void nevada_state::init_nevada()
}
/***************************************************************************/
+} // Anonymous namespace
+
+
/*************************
* Game Drivers *
*************************/
diff --git a/src/mame/includes/badlands.h b/src/mame/includes/badlands.h
index bcf7d47311f..48e36f05434 100644
--- a/src/mame/includes/badlands.h
+++ b/src/mame/includes/badlands.h
@@ -37,24 +37,37 @@ public:
: driver_device(mconfig, type, tag)
, m_maincpu(*this, "maincpu")
, m_audiocpu(*this, "audiocpu")
+ , m_gfxdecode(*this, "gfxdecode")
+ , m_playfield_tilemap(*this, "playfield")
+ , m_screen(*this, "screen")
, m_soundlatch(*this, "soundlatch")
, m_mainlatch(*this, "mainlatch")
, m_ymsnd(*this, "ymsnd")
- , m_screen(*this, "screen")
- , m_gfxdecode(*this, "gfxdecode")
- , m_playfield_tilemap(*this, "playfield")
, m_mob(*this, "mob")
{ }
+ void badlands(machine_config &config);
+ void init_badlands();
+
+protected:
+ virtual void machine_start() override;
+ virtual void machine_reset() override;
+ virtual void video_start() override;
+
required_device<cpu_device> m_maincpu;
- optional_device<cpu_device> m_audiocpu;
+ required_device<cpu_device> m_audiocpu;
+ required_device<gfxdecode_device> m_gfxdecode;
+ required_device<tilemap_device> m_playfield_tilemap;
+ required_device<screen_device> m_screen;
+
+ TILE_GET_INFO_MEMBER(get_playfield_tile_info);
+ void video_int_ack_w(uint16_t data);
+ void badlands_pf_bank_w(offs_t offset, uint16_t data, uint16_t mem_mask = ~0);
+
+private:
optional_device<generic_latch_8_device> m_soundlatch;
optional_device<generic_latch_8_device> m_mainlatch;
optional_device<ym2151_device> m_ymsnd;
-
- required_device<screen_device> m_screen;
- required_device<gfxdecode_device> m_gfxdecode;
- required_device<tilemap_device> m_playfield_tilemap;
optional_device<atari_motion_objects_device> m_mob;
uint16_t sound_busy_r();
@@ -67,19 +80,11 @@ public:
uint8_t audio_irqack_r();
void audio_irqack_w(uint8_t data);
- void init_badlands();
- TILE_GET_INFO_MEMBER(get_playfield_tile_info);
- DECLARE_MACHINE_START(badlands);
- DECLARE_MACHINE_RESET(badlands);
- DECLARE_VIDEO_START(badlands);
uint32_t screen_update_badlands(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(vblank_int);
- void video_int_ack_w(uint16_t data);
TIMER_DEVICE_CALLBACK_MEMBER(sound_scanline);
- void badlands_pf_bank_w(offs_t offset, uint16_t data, uint16_t mem_mask = ~0);
static const atari_motion_objects_config s_mob_config;
- void badlands(machine_config &config);
void audio_map(address_map &map);
void main_map(address_map &map);
diff --git a/src/mame/includes/mc1502.h b/src/mame/includes/mc1502.h
index 3e942f71bb1..14c263ea967 100644
--- a/src/mame/includes/mc1502.h
+++ b/src/mame/includes/mc1502.h
@@ -50,6 +50,10 @@ public:
void fdc_config(device_t *device);
+protected:
+ virtual void machine_start() override;
+ virtual void machine_reset() override;
+
private:
required_device<cpu_device> m_maincpu;
required_device<i8251_device> m_upd8251;
@@ -64,9 +68,6 @@ private:
required_device<ram_device> m_ram;
required_ioport_array<12> m_kbdio;
- DECLARE_MACHINE_START(mc1502);
- DECLARE_MACHINE_RESET(mc1502);
-
TIMER_CALLBACK_MEMBER(keyb_signal_callback);
struct {
diff --git a/src/mame/includes/namcofl.h b/src/mame/includes/namcofl.h
index 9f19ff35213..7b46f302754 100644
--- a/src/mame/includes/namcofl.h
+++ b/src/mame/includes/namcofl.h
@@ -38,6 +38,10 @@ public:
void driver_init() override;
+protected:
+ virtual void machine_start() override;
+ virtual void machine_reset() override;
+
private:
required_device<cpu_device> m_maincpu;
required_device_array<address_map_bank_device, 2> m_mainbank;
@@ -88,9 +92,6 @@ private:
uint8_t dac1_r();
uint8_t dac0_r();
void spritebank_w(offs_t offset, uint32_t data, uint32_t mem_mask = ~0);
- DECLARE_MACHINE_START(namcofl);
- DECLARE_MACHINE_RESET(namcofl);
- DECLARE_VIDEO_START(namcofl);
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
TIMER_CALLBACK_MEMBER(network_interrupt_callback);
TIMER_CALLBACK_MEMBER(vblank_interrupt_callback);
diff --git a/src/mame/includes/phoenix.h b/src/mame/includes/phoenix.h
index 51c8c7e78a8..d0d7d9902ed 100644
--- a/src/mame/includes/phoenix.h
+++ b/src/mame/includes/phoenix.h
@@ -23,35 +23,22 @@ public:
{
}
- void phoenix_videoram_w(offs_t offset, uint8_t data);
- void phoenix_videoreg_w(uint8_t data);
- void pleiads_videoreg_w(uint8_t data);
- void phoenix_scroll_w(uint8_t data);
- uint8_t survival_input_port_0_r();
DECLARE_CUSTOM_INPUT_MEMBER(player_input_r);
DECLARE_READ_LINE_MEMBER(pleiads_protection_r);
- void init_oneprom();
- void init_coindsw();
- void init_oneprom_coindsw();
- TILE_GET_INFO_MEMBER(get_fg_tile_info);
- TILE_GET_INFO_MEMBER(get_bg_tile_info);
- DECLARE_MACHINE_RESET(phoenix);
- DECLARE_VIDEO_START(phoenix);
- void phoenix_palette(palette_device &palette) const;
- void survival_palette(palette_device &palette) const;
- void pleiads_palette(palette_device &palette) const;
- uint32_t screen_update_phoenix(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- uint8_t survival_protection_r();
- DECLARE_READ_LINE_MEMBER(survival_sid_callback);
void condor(machine_config &config);
void phoenix(machine_config &config);
void survival(machine_config &config);
void pleiads(machine_config &config);
- void phoenix_memory_map(address_map &map);
- void pleiads_memory_map(address_map &map);
- void survival_memory_map(address_map &map);
+
+ void init_oneprom();
+ void init_coindsw();
+ void init_oneprom_coindsw();
+
protected:
+ virtual void video_start() override;
+
+private:
required_device<cpu_device> m_maincpu;
optional_device<pleiads_sound_device> m_pleiads_custom;
required_device<gfxdecode_device> m_gfxdecode;
@@ -69,6 +56,23 @@ protected:
int m_survival_sid_value;
uint8_t m_survival_input_latches[2];
uint8_t m_survival_input_readc;
+
+ void phoenix_videoram_w(offs_t offset, uint8_t data);
+ void phoenix_videoreg_w(uint8_t data);
+ void pleiads_videoreg_w(uint8_t data);
+ void phoenix_scroll_w(uint8_t data);
+ uint8_t survival_input_port_0_r();
+ TILE_GET_INFO_MEMBER(get_fg_tile_info);
+ TILE_GET_INFO_MEMBER(get_bg_tile_info);
+ void phoenix_palette(palette_device &palette) const;
+ void survival_palette(palette_device &palette) const;
+ void pleiads_palette(palette_device &palette) const;
+ uint32_t screen_update_phoenix(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+ uint8_t survival_protection_r();
+ DECLARE_READ_LINE_MEMBER(survival_sid_callback);
+ void phoenix_memory_map(address_map &map);
+ void pleiads_memory_map(address_map &map);
+ void survival_memory_map(address_map &map);
};
diff --git a/src/mame/includes/s11.h b/src/mame/includes/s11.h
index af42237c704..757c912153e 100644
--- a/src/mame/includes/s11.h
+++ b/src/mame/includes/s11.h
@@ -108,7 +108,9 @@ public:
void s11_audio_map(address_map &map);
protected:
- DECLARE_MACHINE_RESET(s11);
+ virtual void machine_start() override { m_digits.resolve(); }
+ virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+ virtual void machine_reset() override;
// devices
required_device<cpu_device> m_maincpu;
@@ -147,9 +149,6 @@ protected:
static const device_timer_id TIMER_IRQ = 0;
private:
- virtual void machine_start() override { m_digits.resolve(); }
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
-
uint8_t m_sound_data;
uint8_t m_strobe;
uint8_t m_switch_col;
diff --git a/src/mame/includes/s11a.h b/src/mame/includes/s11a.h
index 524513be037..61e9878dd75 100644
--- a/src/mame/includes/s11a.h
+++ b/src/mame/includes/s11a.h
@@ -25,9 +25,6 @@ public:
void init_s11a();
void dig0_w(uint8_t data);
-
-private:
- DECLARE_MACHINE_RESET(s11a);
};
#endif // MAME_INCLUDES_S11A_H
diff --git a/src/mame/includes/s11b.h b/src/mame/includes/s11b.h
index 213b530ef11..4436e812525 100644
--- a/src/mame/includes/s11b.h
+++ b/src/mame/includes/s11b.h
@@ -25,17 +25,16 @@ public:
void init_s11b();
void init_s11b_invert();
+protected:
+ virtual void machine_reset() override;
+ void set_invert(bool inv) { m_invert = inv; }
+
void dig1_w(uint8_t data);
void pia2c_pa_w(uint8_t data);
void pia2c_pb_w(uint8_t data);
void pia34_pa_w(uint8_t data);
-protected:
- void set_invert(bool inv) { m_invert = inv; }
-
private:
- DECLARE_MACHINE_RESET(s11b);
-
bool m_invert; // later System 11B games start expecting inverted data to the display LED segments.
};
diff --git a/src/mame/video/badlands.cpp b/src/mame/video/badlands.cpp
index 27fd00abf7e..e3f32549ecd 100644
--- a/src/mame/video/badlands.cpp
+++ b/src/mame/video/badlands.cpp
@@ -68,7 +68,7 @@ const atari_motion_objects_config badlands_state::s_mob_config =
0, /* resulting value to indicate "special" */
};
-VIDEO_START_MEMBER(badlands_state,badlands)
+void badlands_state::video_start()
{
/* save states */
save_item(NAME(m_playfield_tile_bank));
diff --git a/src/mame/video/namcofl.cpp b/src/mame/video/namcofl.cpp
index 823eda54b37..2a78ad23e61 100644
--- a/src/mame/video/namcofl.cpp
+++ b/src/mame/video/namcofl.cpp
@@ -104,8 +104,3 @@ int namcofl_state::FLobjcode2tile(int code)
return code;
}
-
-VIDEO_START_MEMBER(namcofl_state,namcofl)
-{
-}
-
diff --git a/src/mame/video/phoenix.cpp b/src/mame/video/phoenix.cpp
index 4bb58d0d7c4..84c9787cedf 100644
--- a/src/mame/video/phoenix.cpp
+++ b/src/mame/video/phoenix.cpp
@@ -163,7 +163,7 @@ TILE_GET_INFO_MEMBER(phoenix_state::get_bg_tile_info)
***************************************************************************/
-VIDEO_START_MEMBER(phoenix_state,phoenix)
+void phoenix_state::video_start()
{
m_videoram_pg[0] = std::make_unique<uint8_t[]>(0x1000);
memset(m_videoram_pg[0].get(), 0x00, 0x1000 * sizeof(uint8_t));