From f7180a9504fa1ac39cb6c5f2af45f56c70a5bd77 Mon Sep 17 00:00:00 2001 From: Vas Crabb Date: Mon, 22 May 2017 18:29:16 +1000 Subject: and ioports, too (nw) --- src/emu/driver.cpp | 11 ----------- src/emu/driver.h | 1 - src/emu/gamedrv.h | 19 +++++++------------ 3 files changed, 7 insertions(+), 24 deletions(-) diff --git a/src/emu/driver.cpp b/src/emu/driver.cpp index 79bef6a1c14..846f48c26ef 100644 --- a/src/emu/driver.cpp +++ b/src/emu/driver.cpp @@ -160,17 +160,6 @@ const tiny_rom_entry *driver_device::device_rom_region() const } -//------------------------------------------------- -// device_input_ports - return a pointer to the -// game's input ports -//------------------------------------------------- - -ioport_constructor driver_device::device_input_ports() const -{ - return m_system->ipt; -} - - //------------------------------------------------- // device_start - device override which calls // the various helpers diff --git a/src/emu/driver.h b/src/emu/driver.h index 3f64fb3a38d..fb5000751a1 100644 --- a/src/emu/driver.h +++ b/src/emu/driver.h @@ -197,7 +197,6 @@ protected: // device-level overrides virtual const tiny_rom_entry *device_rom_region() const override; - virtual ioport_constructor device_input_ports() const override; virtual void device_start() override; virtual void device_reset_after_children() override; diff --git a/src/emu/gamedrv.h b/src/emu/gamedrv.h index 9d341ee523d..41009260801 100644 --- a/src/emu/gamedrv.h +++ b/src/emu/gamedrv.h @@ -95,7 +95,6 @@ public: const char * parent; // if this is a clone, the name of the parent const char * year; // year the game was released const char * manufacturer; // manufacturer of the game - ioport_constructor ipt; // pointer to constructor for input ports driver_init_helper const & driver_init; // DRIVER_INIT callback const tiny_rom_entry * rom; // pointer to list of ROMs for the game const char * compatible_with; @@ -121,7 +120,7 @@ public: #define GAME_EXTERN(name) extern game_driver const GAME_NAME(name) // static game traits -#define GAME_DRIVER_TRAITS(NAME, FULLNAME, MACHINE, CLASS) \ +#define GAME_DRIVER_TRAITS(NAME, FULLNAME, MACHINE, INPUT, CLASS) \ namespace { \ class GAME_TRAITS_NAME(NAME) : public CLASS \ { \ @@ -130,6 +129,7 @@ namespace { \ GAME_TRAITS_NAME(NAME)(const machine_config &mconfig, device_type type, const char *tag) : CLASS(mconfig, type, tag) { } \ protected: \ virtual void device_add_mconfig(machine_config &config) override { MACHINE_CONFIG_NAME(MACHINE)(config, this, nullptr); } \ + virtual ioport_constructor device_input_ports() const override { return INPUT_PORTS_NAME(INPUT); } \ }; \ constexpr char const GAME_TRAITS_NAME(NAME)::shortname[], GAME_TRAITS_NAME(NAME)::fullname[], GAME_TRAITS_NAME(NAME)::source[]; \ } @@ -137,14 +137,13 @@ namespace { \ // standard GAME() macro #define GAME(YEAR,NAME,PARENT,MACHINE,INPUT,CLASS,INIT,MONITOR,COMPANY,FULLNAME,FLAGS) \ -GAME_DRIVER_TRAITS(NAME, FULLNAME, MACHINE, CLASS) \ +GAME_DRIVER_TRAITS(NAME, FULLNAME, MACHINE, INPUT, CLASS) \ extern game_driver const GAME_NAME(NAME) \ { \ GAME_DRIVER_TYPE(NAME), \ #PARENT, \ #YEAR, \ COMPANY, \ - INPUT_PORTS_NAME(INPUT), \ game_driver::make_driver_init(&CLASS::init_##INIT), \ ROM_NAME(NAME), \ nullptr, \ @@ -155,14 +154,13 @@ extern game_driver const GAME_NAME(NAME) \ // standard macro with additional layout #define GAMEL(YEAR,NAME,PARENT,MACHINE,INPUT,CLASS,INIT,MONITOR,COMPANY,FULLNAME,FLAGS,LAYOUT) \ -GAME_DRIVER_TRAITS(NAME, FULLNAME, MACHINE, CLASS) \ +GAME_DRIVER_TRAITS(NAME, FULLNAME, MACHINE, INPUT, CLASS) \ extern game_driver const GAME_NAME(NAME) \ { \ GAME_DRIVER_TYPE(NAME), \ #PARENT, \ #YEAR, \ COMPANY, \ - INPUT_PORTS_NAME(INPUT), \ game_driver::make_driver_init(&CLASS::init_##INIT), \ ROM_NAME(NAME), \ nullptr, \ @@ -174,14 +172,13 @@ extern game_driver const GAME_NAME(NAME) \ // standard console definition macro #define CONS(YEAR,NAME,PARENT,COMPAT,MACHINE,INPUT,CLASS,INIT,COMPANY,FULLNAME,FLAGS) \ -GAME_DRIVER_TRAITS(NAME, FULLNAME, MACHINE, CLASS) \ +GAME_DRIVER_TRAITS(NAME, FULLNAME, MACHINE, INPUT, CLASS) \ extern game_driver const GAME_NAME(NAME) \ { \ GAME_DRIVER_TYPE(NAME), \ #PARENT, \ #YEAR, \ COMPANY, \ - INPUT_PORTS_NAME(INPUT), \ game_driver::make_driver_init(&CLASS::init_##INIT), \ ROM_NAME(NAME), \ #COMPAT, \ @@ -192,14 +189,13 @@ extern game_driver const GAME_NAME(NAME) \ // standard computer definition macro #define COMP(YEAR,NAME,PARENT,COMPAT,MACHINE,INPUT,CLASS,INIT,COMPANY,FULLNAME,FLAGS) \ -GAME_DRIVER_TRAITS(NAME, FULLNAME, MACHINE, CLASS) \ +GAME_DRIVER_TRAITS(NAME, FULLNAME, MACHINE, INPUT, CLASS) \ extern game_driver const GAME_NAME(NAME) \ { \ GAME_DRIVER_TYPE(NAME), \ #PARENT, \ #YEAR, \ COMPANY, \ - INPUT_PORTS_NAME(INPUT), \ game_driver::make_driver_init(&CLASS::init_##INIT), \ ROM_NAME(NAME), \ #COMPAT, \ @@ -210,14 +206,13 @@ extern game_driver const GAME_NAME(NAME) \ // standard system definition macro #define SYST(YEAR,NAME,PARENT,COMPAT,MACHINE,INPUT,CLASS,INIT,COMPANY,FULLNAME,FLAGS) \ -GAME_DRIVER_TRAITS(NAME, FULLNAME, MACHINE, CLASS) \ +GAME_DRIVER_TRAITS(NAME, FULLNAME, MACHINE, INPUT, CLASS) \ extern game_driver const GAME_NAME(NAME) \ { \ GAME_DRIVER_TYPE(NAME), \ #PARENT, \ #YEAR, \ COMPANY, \ - INPUT_PORTS_NAME(INPUT), \ game_driver::make_driver_init(&CLASS::init_##INIT), \ ROM_NAME(NAME), \ #COMPAT, \ -- cgit v1.2.3