summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/neogeocd.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/neogeocd.cpp')
-rw-r--r--src/mame/drivers/neogeocd.cpp26
1 files changed, 9 insertions, 17 deletions
diff --git a/src/mame/drivers/neogeocd.cpp b/src/mame/drivers/neogeocd.cpp
index d27770be1ab..ddfaa2c62a5 100644
--- a/src/mame/drivers/neogeocd.cpp
+++ b/src/mame/drivers/neogeocd.cpp
@@ -51,11 +51,11 @@ uint8_t* NeoZ80ROMActive;
uint8_t NeoSystem = NEOCD_REGION_JAPAN;
-class ngcd_state : public aes_state
+class ngcd_state : public aes_base_state
{
public:
ngcd_state(const machine_config &mconfig, device_type type, const char *tag)
- : aes_state(mconfig, type, tag)
+ : aes_base_state(mconfig, type, tag)
, m_tempcdc(*this,"tempcdc")
{
NeoCDDMAAddress1 = 0;
@@ -88,9 +88,6 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(aes_jp1);
- DECLARE_MACHINE_START(neocd);
- DECLARE_MACHINE_RESET(neocd);
-
// neoCD
int32_t nActiveTransferArea;
@@ -137,7 +134,10 @@ public:
void neocd_audio_io_map(address_map &map);
void neocd_audio_map(address_map &map);
void neocd_main_map(address_map &map);
+
protected:
+ virtual void machine_start() override;
+ virtual void machine_reset() override;
int32_t SekIdle(int32_t nCycles);
};
@@ -828,17 +828,14 @@ if (NeoCDDMAAddress2 == 0x0800) {
*
*************************************/
-MACHINE_START_MEMBER(ngcd_state,neocd)
+void ngcd_state::machine_start()
{
- m_type = NEOGEO_CD;
- common_machine_start();
+ aes_base_state::machine_start();
// set curr_slot to 0, so to allow checking m_slots[m_curr_slot] != nullptr
m_curr_slot = 0;
// initialize sprite to point to memory regions
- m_sprgen->m_fixed_layer_bank_type = 0;
- m_sprgen->set_screen(m_screen);
m_sprgen->set_sprite_region(m_region_sprites->base(), m_region_sprites->bytes());
m_sprgen->set_fixed_regions(m_region_fixed->base(), m_region_fixed->bytes(), m_region_fixedbios);
m_sprgen->neogeo_set_fixed_layer_source(1);
@@ -853,8 +850,6 @@ MACHINE_START_MEMBER(ngcd_state,neocd)
machine().device<nvram_device>("saveram")->set_base(m_meminternal_data.get(), 0x2000);
save_pointer(NAME(m_meminternal_data.get()), 0x2000);
- m_use_cart_vectors = 0;
-
m_tempcdc->reset_cd();
}
@@ -865,9 +860,9 @@ MACHINE_START_MEMBER(ngcd_state,neocd)
*
*************************************/
-MACHINE_RESET_MEMBER(ngcd_state,neocd)
+void ngcd_state::machine_reset()
{
- neogeo_state::machine_reset();
+ aes_base_state::machine_reset();
NeoSpriteRAM = memregion("sprites")->base();
YM2610ADPCMAROM = memregion("ymsnd")->base();
@@ -1072,9 +1067,6 @@ MACHINE_CONFIG_START(ngcd_state::neocd)
MCFG_NVRAM_ADD_0FILL("saveram")
- MCFG_MACHINE_START_OVERRIDE(ngcd_state,neocd)
- MCFG_MACHINE_RESET_OVERRIDE(ngcd_state,neocd)
-
MCFG_NEOGEO_CONTROL_PORT_ADD("ctrl1", neogeo_controls, "joy", false)
MCFG_NEOGEO_CONTROL_PORT_ADD("ctrl2", neogeo_controls, "joy", false)