From 7bfe316fd41e7c2bb9ef1bb160f152ae1635e9f9 Mon Sep 17 00:00:00 2001 From: David Haywood Date: Sun, 1 Jul 2018 02:34:14 +0100 Subject: stronger private: use (N, O, P, Q, R) (#3717) * private N,O (nw) * P + Q (nw) * R (nt) --- src/mame/drivers/n64.cpp | 6 +- src/mame/drivers/nakajies.cpp | 13 +++-- src/mame/drivers/namcops2.cpp | 7 ++- src/mame/drivers/namcos10.cpp | 49 ++++++++-------- src/mame/drivers/namcos11.cpp | 31 +++++----- src/mame/drivers/namcos12.cpp | 61 ++++++++++--------- src/mame/drivers/namcos23.cpp | 22 ++++--- src/mame/drivers/nanos.cpp | 6 +- src/mame/drivers/nascom1.cpp | 53 +++++++++-------- src/mame/drivers/nc.cpp | 6 +- src/mame/drivers/neoprint.cpp | 19 +++--- src/mame/drivers/neptunp2.cpp | 5 +- src/mame/drivers/nes_vt.cpp | 34 +++++------ src/mame/drivers/nexus3d.cpp | 7 ++- src/mame/drivers/ngen.cpp | 45 ++++++++------ src/mame/drivers/ngp.cpp | 14 +++-- src/mame/drivers/nibble.cpp | 4 +- src/mame/drivers/nichild.cpp | 8 +-- src/mame/drivers/nightgal.cpp | 19 +++--- src/mame/drivers/nmg5.cpp | 21 ++++--- src/mame/drivers/nokia_3310.cpp | 7 +-- src/mame/drivers/notechan.cpp | 6 +- src/mame/drivers/notetaker.cpp | 20 ++++--- src/mame/drivers/novag6502.cpp | 18 +++--- src/mame/drivers/novag68k.cpp | 6 +- src/mame/drivers/novagf8.cpp | 8 ++- src/mame/drivers/novagmcs48.cpp | 9 ++- src/mame/drivers/nsg6809.cpp | 3 +- src/mame/drivers/nss.cpp | 11 ++-- src/mame/drivers/nwk-tr.cpp | 10 +++- src/mame/drivers/nyny.cpp | 4 +- src/mame/drivers/octopus.cpp | 7 ++- src/mame/drivers/odyssey.cpp | 4 +- src/mame/drivers/odyssey2.cpp | 49 ++++++++++------ src/mame/drivers/okean240.cpp | 23 ++++---- src/mame/drivers/olibochu.cpp | 4 +- src/mame/drivers/omegrace.cpp | 8 ++- src/mame/drivers/onetwo.cpp | 4 +- src/mame/drivers/onyx.cpp | 4 +- src/mame/drivers/osbexec.cpp | 7 ++- src/mame/drivers/otomedius.cpp | 4 +- src/mame/drivers/p112.cpp | 4 +- src/mame/drivers/p8k.cpp | 11 ++-- src/mame/drivers/palm.cpp | 21 ++++--- src/mame/drivers/pangofun.cpp | 5 +- src/mame/drivers/panicr.cpp | 7 ++- src/mame/drivers/paranoia.cpp | 4 +- src/mame/drivers/pasha2.cpp | 7 ++- src/mame/drivers/paso1600.cpp | 12 ++-- src/mame/drivers/pasogo.cpp | 7 ++- src/mame/drivers/pasopia.cpp | 9 ++- src/mame/drivers/pasopia7.cpp | 15 +++-- src/mame/drivers/patapata.cpp | 3 +- src/mame/drivers/pb1000.cpp | 6 +- src/mame/drivers/pc.cpp | 30 +++++----- src/mame/drivers/pc1500.cpp | 4 +- src/mame/drivers/pcat_dyn.cpp | 4 +- src/mame/drivers/pcat_nit.cpp | 9 ++- src/mame/drivers/pcd.cpp | 9 +-- src/mame/drivers/pce220.cpp | 22 ++++--- src/mame/drivers/pcfx.cpp | 16 ++--- src/mame/drivers/pcipc.cpp | 12 ++-- src/mame/drivers/pcm.cpp | 6 +- src/mame/drivers/pcxt.cpp | 6 +- src/mame/drivers/pda600.cpp | 4 +- src/mame/drivers/pdp11.cpp | 8 ++- src/mame/drivers/pegasus.cpp | 11 ++-- src/mame/drivers/pencil2.cpp | 11 ++-- src/mame/drivers/pengadvb.cpp | 6 +- src/mame/drivers/pengo.cpp | 17 ++++-- src/mame/drivers/pentagon.cpp | 21 ++++--- src/mame/drivers/peoplepc.cpp | 7 ++- src/mame/drivers/peplus.cpp | 30 +++++----- src/mame/drivers/perq.cpp | 6 +- src/mame/drivers/pet.cpp | 126 ++++++++++++++++++++++------------------ src/mame/drivers/peyper.cpp | 3 +- src/mame/drivers/pg685.cpp | 14 +++-- src/mame/drivers/pgm3.cpp | 5 +- src/mame/drivers/photon.cpp | 4 +- src/mame/drivers/photon2.cpp | 4 +- src/mame/drivers/photoply.cpp | 6 +- src/mame/drivers/phunsy.cpp | 7 ++- src/mame/drivers/picno.cpp | 4 +- src/mame/drivers/pinball2k.cpp | 10 +++- src/mame/drivers/pipbug.cpp | 4 +- src/mame/drivers/pipedrm.cpp | 11 ++-- src/mame/drivers/pipeline.cpp | 6 +- src/mame/drivers/piratesh.cpp | 9 ++- src/mame/drivers/pitagjr.cpp | 4 +- src/mame/drivers/pk8000.cpp | 6 +- src/mame/drivers/pkscram.cpp | 2 +- src/mame/drivers/plan80.cpp | 19 +++--- src/mame/drivers/play_1.cpp | 8 ++- src/mame/drivers/play_2.cpp | 11 ++-- src/mame/drivers/play_3.cpp | 10 ++-- src/mame/drivers/plus4.cpp | 11 +++- src/mame/drivers/pluto5.cpp | 10 ++-- src/mame/drivers/pmi80.cpp | 6 +- src/mame/drivers/pntnpuzl.cpp | 10 +++- src/mame/drivers/pockchal.cpp | 4 +- src/mame/drivers/pockstat.cpp | 7 ++- src/mame/drivers/pofo.cpp | 3 +- src/mame/drivers/poisk1.cpp | 7 ++- src/mame/drivers/pokemini.cpp | 6 +- src/mame/drivers/poker72.cpp | 7 ++- src/mame/drivers/popobear.cpp | 4 +- src/mame/drivers/potgoldu.cpp | 3 +- src/mame/drivers/powerstack.cpp | 6 +- src/mame/drivers/ppmast93.cpp | 4 +- src/mame/drivers/prestige.cpp | 21 ++++--- src/mame/drivers/pro80.cpp | 6 +- src/mame/drivers/proconn.cpp | 9 +-- src/mame/drivers/prodigy.cpp | 6 +- src/mame/drivers/progolf.cpp | 10 ++-- src/mame/drivers/prophet600.cpp | 6 +- src/mame/drivers/proteus.cpp | 5 +- src/mame/drivers/proteus3.cpp | 6 +- src/mame/drivers/psx.cpp | 8 ++- src/mame/drivers/pt68k4.cpp | 8 ++- src/mame/drivers/ptcsol.cpp | 21 ++++--- src/mame/drivers/pturn.cpp | 7 ++- src/mame/drivers/pulsar.cpp | 8 ++- src/mame/drivers/pv1000.cpp | 4 +- src/mame/drivers/pv2000.cpp | 4 +- src/mame/drivers/pv9234.cpp | 6 +- src/mame/drivers/pve500.cpp | 9 ++- src/mame/drivers/pwrview.cpp | 8 ++- src/mame/drivers/px4.cpp | 17 +++--- src/mame/drivers/pyson.cpp | 5 +- src/mame/drivers/pzletime.cpp | 7 ++- src/mame/drivers/ql.cpp | 9 ++- src/mame/drivers/quakeat.cpp | 4 +- src/mame/drivers/quantum.cpp | 3 +- src/mame/drivers/queen.cpp | 4 +- src/mame/drivers/quickpick5.cpp | 7 ++- src/mame/drivers/quizo.cpp | 7 ++- src/mame/drivers/quizpun2.cpp | 6 +- src/mame/drivers/quizshow.cpp | 3 +- src/mame/drivers/qvt103.cpp | 6 +- src/mame/drivers/qvt6800.cpp | 8 ++- src/mame/drivers/qvt70.cpp | 3 +- src/mame/drivers/r9751.cpp | 10 ++-- src/mame/drivers/rabbit.cpp | 12 ++-- src/mame/drivers/rad_eu3a05.cpp | 9 ++- src/mame/drivers/rad_eu3a14.cpp | 16 ++--- src/mame/drivers/rambo.cpp | 7 ++- src/mame/drivers/ramtek.cpp | 9 +-- src/mame/drivers/rastersp.cpp | 6 +- src/mame/drivers/ravens.cpp | 8 ++- src/mame/drivers/rc702.cpp | 7 ++- src/mame/drivers/rc759.cpp | 7 ++- src/mame/drivers/rcorsair.cpp | 5 +- src/mame/drivers/rd100.cpp | 7 ++- src/mame/drivers/rd110.cpp | 5 +- src/mame/drivers/re900.cpp | 10 ++-- src/mame/drivers/replicator.cpp | 7 ++- src/mame/drivers/rgum.cpp | 7 ++- src/mame/drivers/riscpc.cpp | 15 +++-- src/mame/drivers/rmt32.cpp | 10 ++-- src/mame/drivers/rollext.cpp | 7 ++- src/mame/drivers/ron.cpp | 8 ++- src/mame/drivers/rotaryf.cpp | 4 +- src/mame/drivers/roul.cpp | 6 +- src/mame/drivers/rowamet.cpp | 3 +- src/mame/drivers/royalmah.cpp | 70 +++++++++++----------- src/mame/drivers/rsc55.cpp | 7 ++- src/mame/drivers/rt1715.cpp | 9 +-- src/mame/drivers/rvoice.cpp | 7 ++- src/mame/drivers/rx78.cpp | 3 +- src/mame/drivers/rzone.cpp | 10 ++-- src/mame/includes/n8080.h | 17 +++--- src/mame/includes/namcofl.h | 9 ++- src/mame/includes/namcona1.h | 38 ++++++------ src/mame/includes/namconb1.h | 27 +++++---- src/mame/includes/namcond1.h | 6 +- src/mame/includes/namcos1.h | 53 +++++++++-------- src/mame/includes/namcos2.h | 53 ++++++++--------- src/mame/includes/namcos21.h | 34 ++++++----- src/mame/includes/namcos22.h | 104 +++++++++++++++++---------------- src/mame/includes/naomi.h | 67 ++++++++++++--------- src/mame/includes/nbmj8688.h | 106 ++++++++++++++++----------------- src/mame/includes/nbmj8891.h | 87 +++++++++++++-------------- src/mame/includes/nbmj8900.h | 23 +++++--- src/mame/includes/nbmj8991.h | 58 +++++++++--------- src/mame/includes/nbmj9195.h | 71 +++++++++++----------- src/mame/includes/nc.h | 13 +++-- src/mame/includes/nds.h | 6 +- src/mame/includes/nemesis.h | 23 ++++---- src/mame/includes/newbrain.h | 14 +++-- src/mame/includes/news.h | 4 +- src/mame/includes/next.h | 43 +++++++------- src/mame/includes/ninjakd2.h | 120 +++++++++++++++++++++----------------- src/mame/includes/ninjaw.h | 6 +- src/mame/includes/nitedrvr.h | 3 +- src/mame/includes/niyanpai.h | 29 ++++----- src/mame/includes/nmk16.h | 120 ++++++++++++++++++++------------------ src/mame/includes/norautp.h | 26 +++++---- src/mame/includes/nova2001.h | 19 +++--- src/mame/includes/novagbase.h | 9 +-- src/mame/includes/nycaptor.h | 17 +++--- src/mame/includes/ob68k1a.h | 4 +- src/mame/includes/offtwall.h | 7 +-- src/mame/includes/ohmygod.h | 6 +- src/mame/includes/ojankohs.h | 11 ++-- src/mame/includes/ondra.h | 6 +- src/mame/includes/oneshot.h | 6 +- src/mame/includes/opwolf.h | 15 ++--- src/mame/includes/orao.h | 11 ++-- src/mame/includes/orbit.h | 3 +- src/mame/includes/orion.h | 14 +++-- src/mame/includes/osborne1.h | 18 +++--- src/mame/includes/overdriv.h | 6 +- src/mame/includes/pirates.h | 14 +++-- src/mame/includes/pitnrun.h | 6 +- src/mame/includes/pk8000.h | 13 +++-- src/mame/includes/pk8020.h | 6 +- src/mame/includes/pktgaldx.h | 9 ++- src/mame/includes/playch10.h | 54 ++++++++--------- src/mame/includes/playmark.h | 20 ++++--- src/mame/includes/plygonet.h | 9 ++- src/mame/includes/pmd85.h | 45 +++++++------- src/mame/includes/pocketc.h | 11 +++- src/mame/includes/pokechmp.h | 7 ++- src/mame/includes/policetr.h | 8 +-- src/mame/includes/poly.h | 21 +++---- src/mame/includes/poly88.h | 11 ++-- src/mame/includes/poly880.h | 9 ++- src/mame/includes/polyplay.h | 10 ++-- src/mame/includes/poolshrk.h | 6 +- src/mame/includes/pooyan.h | 4 +- src/mame/includes/portrait.h | 9 +-- src/mame/includes/powerins.h | 7 ++- src/mame/includes/pp01.h | 4 +- src/mame/includes/prehisle.h | 3 +- src/mame/includes/primo.h | 3 +- src/mame/includes/prof180x.h | 4 +- src/mame/includes/prof80.h | 4 +- src/mame/includes/psikyo.h | 34 ++++++----- src/mame/includes/psikyo4.h | 9 ++- src/mame/includes/psikyosh.h | 23 ++++---- src/mame/includes/psion.h | 23 +++++--- src/mame/includes/psychic5.h | 6 +- src/mame/includes/punchout.h | 8 ++- src/mame/includes/px8.h | 4 +- src/mame/includes/qix.h | 35 ++++++----- src/mame/includes/quasar.h | 4 +- src/mame/includes/quizdna.h | 8 ++- src/mame/includes/rbisland.h | 13 +++-- src/mame/includes/realbrk.h | 10 ++-- src/mame/includes/redalert.h | 34 +++++------ src/mame/includes/redclash.h | 11 ++-- src/mame/includes/relief.h | 6 +- src/mame/includes/renegade.h | 10 +++- src/mame/includes/retofinv.h | 12 ++-- src/mame/includes/rltennis.h | 4 +- src/mame/includes/rm380z.h | 40 +++++++------ src/mame/includes/rmnimbus.h | 14 +++-- src/mame/includes/rockrage.h | 4 +- src/mame/includes/rocnrope.h | 7 ++- src/mame/includes/rohga.h | 24 ++++---- src/mame/includes/rollerg.h | 16 ++--- src/mame/includes/rollrace.h | 7 ++- src/mame/includes/route16.h | 19 +++--- src/mame/includes/rpunch.h | 17 +++--- src/mame/includes/runaway.h | 2 +- 265 files changed, 2254 insertions(+), 1648 deletions(-) diff --git a/src/mame/drivers/n64.cpp b/src/mame/drivers/n64.cpp index 9ba9e3eca78..454fb2971db 100644 --- a/src/mame/drivers/n64.cpp +++ b/src/mame/drivers/n64.cpp @@ -30,6 +30,10 @@ public: : n64_state(mconfig, type, tag) { } + void n64(machine_config &config); + void n64dd(machine_config &config); + +private: DECLARE_READ32_MEMBER(dd_null_r); DECLARE_MACHINE_START(n64dd); INTERRUPT_GEN_MEMBER(n64_reset_poll); @@ -39,8 +43,6 @@ public: void disk_unload(device_image_interface &image); DECLARE_DEVICE_IMAGE_LOAD_MEMBER( n64dd ); DECLARE_DEVICE_IMAGE_UNLOAD_MEMBER( n64dd ); - void n64(machine_config &config); - void n64dd(machine_config &config); void n64_map(address_map &map); void n64dd_map(address_map &map); void rsp_map(address_map &map); diff --git a/src/mame/drivers/nakajies.cpp b/src/mame/drivers/nakajies.cpp index 86bab6620a5..20403a415ae 100644 --- a/src/mame/drivers/nakajies.cpp +++ b/src/mame/drivers/nakajies.cpp @@ -293,6 +293,14 @@ public: m_maincpu(*this, "v20hl") {} + void nakajies210(machine_config &config); + void nakajies220(machine_config &config); + void nakajies250(machine_config &config); + void dator3k(machine_config &config); + + DECLARE_INPUT_CHANGED_MEMBER(trigger_irq); + +private: required_device m_maincpu; virtual void machine_start() override; @@ -340,12 +348,7 @@ public: uint8_t m_bank[8]; uint8_t *m_bank_base[8]; DECLARE_PALETTE_INIT(nakajies); - DECLARE_INPUT_CHANGED_MEMBER(trigger_irq); TIMER_DEVICE_CALLBACK_MEMBER(kb_timer); - void nakajies210(machine_config &config); - void nakajies220(machine_config &config); - void nakajies250(machine_config &config); - void dator3k(machine_config &config); void nakajies_io_map(address_map &map); void nakajies_map(address_map &map); }; diff --git a/src/mame/drivers/namcops2.cpp b/src/mame/drivers/namcops2.cpp index 85ff2dc4114..c8e1d4d8d06 100644 --- a/src/mame/drivers/namcops2.cpp +++ b/src/mame/drivers/namcops2.cpp @@ -885,12 +885,13 @@ public: m_maincpu(*this, "maincpu") { } - uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - void system246(machine_config &config); void system256(machine_config &config); + +private: + uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); + void ps2_map(address_map &map); -protected: // devices required_device m_maincpu; diff --git a/src/mame/drivers/namcos10.cpp b/src/mame/drivers/namcos10.cpp index 7ae7dbed730..30b7e47eb26 100644 --- a/src/mame/drivers/namcos10.cpp +++ b/src/mame/drivers/namcos10.cpp @@ -408,6 +408,30 @@ public: : driver_device(mconfig, type, tag), m_maincpu(*this, "maincpu") { } + void ns10_konotako(machine_config &config); + void ns10_mrdrilr2(machine_config &config); + void ns10_knpuzzle(machine_config &config); + void ns10_chocovdr(machine_config &config); + void ns10_startrgn(machine_config &config); + void namcos10_memm(machine_config &config); + void namcos10_memn(machine_config &config); + void ns10_gjspace(machine_config &config); + void ns10_nflclsfb(machine_config &config); + void ns10_gamshara(machine_config &config); + + void init_knpuzzle(); + void init_panikuru(); + void init_mrdrilr2(); + void init_startrgn(); + void init_gunbalna(); + void init_nflclsfb(); + void init_gjspace(); + void init_gamshara(); + void init_mrdrilrg(); + void init_chocovdr(); + void init_konotako(); + +private: // memm variant interface DECLARE_WRITE16_MEMBER(crypto_switch_w); DECLARE_READ16_MEMBER(range_r); @@ -437,20 +461,10 @@ public: uint8_t *nand_base; void nand_copy( uint32_t *dst, uint32_t address, int len ); - void ns10_konotako(machine_config &config); - void ns10_mrdrilr2(machine_config &config); - void ns10_knpuzzle(machine_config &config); - void ns10_chocovdr(machine_config &config); - void ns10_startrgn(machine_config &config); - void namcos10_memm(machine_config &config); - void namcos10_memn(machine_config &config); - void ns10_gjspace(machine_config &config); - void ns10_nflclsfb(machine_config &config); - void ns10_gamshara(machine_config &config); void namcos10_map(address_map &map); void namcos10_memm_map(address_map &map); void namcos10_memn_map(address_map &map); -private: + enum { I2CP_IDLE, I2CP_RECIEVE_BYTE, @@ -473,18 +487,7 @@ private: uint16_t nand_read2( uint32_t address ); void i2c_update(); -public: - void init_knpuzzle(); - void init_panikuru(); - void init_mrdrilr2(); - void init_startrgn(); - void init_gunbalna(); - void init_nflclsfb(); - void init_gjspace(); - void init_gamshara(); - void init_mrdrilrg(); - void init_chocovdr(); - void init_konotako(); + DECLARE_MACHINE_RESET(namcos10); void memn_driver_init( ); required_device m_maincpu; diff --git a/src/mame/drivers/namcos11.cpp b/src/mame/drivers/namcos11.cpp index 7b61ea751c6..6989a53cb6a 100644 --- a/src/mame/drivers/namcos11.cpp +++ b/src/mame/drivers/namcos11.cpp @@ -323,19 +323,6 @@ public: { } - DECLARE_WRITE16_MEMBER(rom8_w); - DECLARE_WRITE16_MEMBER(rom8_64_upper_w); - DECLARE_WRITE16_MEMBER(rom8_64_w); - DECLARE_WRITE16_MEMBER(lightgun_w); - DECLARE_READ16_MEMBER(lightgun_r); - DECLARE_READ16_MEMBER(c76_shared_r); - DECLARE_WRITE16_MEMBER(c76_shared_w); - DECLARE_READ16_MEMBER(c76_speedup_r); - DECLARE_WRITE16_MEMBER(c76_speedup_w); - TIMER_DEVICE_CALLBACK_MEMBER(mcu_irq0_cb); - TIMER_DEVICE_CALLBACK_MEMBER(mcu_irq2_cb); - TIMER_DEVICE_CALLBACK_MEMBER(mcu_adc_cb); - void coh110(machine_config &config); void coh100(machine_config &config); void myangel3(machine_config &config); @@ -350,16 +337,30 @@ public: void souledge(machine_config &config); void tekken(machine_config &config); void tekken2(machine_config &config); + +private: + DECLARE_WRITE16_MEMBER(rom8_w); + DECLARE_WRITE16_MEMBER(rom8_64_upper_w); + DECLARE_WRITE16_MEMBER(rom8_64_w); + DECLARE_WRITE16_MEMBER(lightgun_w); + DECLARE_READ16_MEMBER(lightgun_r); + DECLARE_READ16_MEMBER(c76_shared_r); + DECLARE_WRITE16_MEMBER(c76_shared_w); + DECLARE_READ16_MEMBER(c76_speedup_r); + DECLARE_WRITE16_MEMBER(c76_speedup_w); + TIMER_DEVICE_CALLBACK_MEMBER(mcu_irq0_cb); + TIMER_DEVICE_CALLBACK_MEMBER(mcu_irq2_cb); + TIMER_DEVICE_CALLBACK_MEMBER(mcu_adc_cb); + void c76_io_map(address_map &map); void c76_map(address_map &map); void namcos11_map(address_map &map); void ptblank2ua_map(address_map &map); void rom8_64_map(address_map &map); void rom8_map(address_map &map); -protected: + virtual void driver_start() override; -private: required_shared_ptr m_sharedram; required_device m_maincpu; required_device m_mcu; diff --git a/src/mame/drivers/namcos12.cpp b/src/mame/drivers/namcos12.cpp index abf1f2d7025..6105611f2c2 100644 --- a/src/mame/drivers/namcos12.cpp +++ b/src/mame/drivers/namcos12.cpp @@ -1106,8 +1106,8 @@ class namcos12_state : public driver_device public: namcos12_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag) - , m_maincpu(*this, "maincpu") , m_ram(*this, "maincpu:ram") + , m_maincpu(*this, "maincpu") , m_sub(*this, "sub") , m_adc(*this, "sub:adc") , m_rtc(*this, "rtc") @@ -1121,8 +1121,38 @@ public: { } - required_device m_maincpu; + void coh700(machine_config &config); + void coh716(machine_config &config); + void namcos12_mobo(machine_config &config); + + void init_namcos12(); + void init_ptblank2(); + void init_technodr(); + void init_golgo13(); + +protected: + virtual void machine_reset() override; + + void golgo13_h8iomap(address_map &map); + void jvsiomap(address_map &map); + void jvsmap(address_map &map); + void namcos12_map(address_map &map); + void plarailjvsiomap(address_map &map); + void plarailjvsmap(address_map &map); + void ptblank2_map(address_map &map); + void s12h8iomap(address_map &map); + void s12h8jvsiomap(address_map &map); + void s12h8railiomap(address_map &map); + void s12h8rwjvsmap(address_map &map); + void s12h8rwmap(address_map &map); + void tdjvsiomap(address_map &map); + void tdjvsmap(address_map &map); + void tektagt_map(address_map &map); + required_device m_ram; + +private: + required_device m_maincpu; required_device m_sub; required_device m_adc; required_device m_rtc; @@ -1175,34 +1205,9 @@ public: DECLARE_READ16_MEMBER(s12_mcu_gun_h_r); DECLARE_READ16_MEMBER(s12_mcu_gun_v_r); - void init_namcos12(); - void init_ptblank2(); - void init_technodr(); - void init_golgo13(); inline void ATTR_PRINTF(3,4) verboselog( int n_level, const char *s_fmt, ... ); void namcos12_rom_read( uint32_t *p_n_psxram, uint32_t n_address, int32_t n_size ); void namcos12_sub_irq( screen_device &screen, bool vblank_state ); - - void coh700(machine_config &config); - void coh716(machine_config &config); - void namcos12_mobo(machine_config &config); - void golgo13_h8iomap(address_map &map); - void jvsiomap(address_map &map); - void jvsmap(address_map &map); - void namcos12_map(address_map &map); - void plarailjvsiomap(address_map &map); - void plarailjvsmap(address_map &map); - void ptblank2_map(address_map &map); - void s12h8iomap(address_map &map); - void s12h8jvsiomap(address_map &map); - void s12h8railiomap(address_map &map); - void s12h8rwjvsmap(address_map &map); - void s12h8rwmap(address_map &map); - void tdjvsiomap(address_map &map); - void tdjvsmap(address_map &map); - void tektagt_map(address_map &map); -protected: - virtual void machine_reset() override; }; @@ -1217,7 +1222,7 @@ public: void truckk(machine_config &config); void tektagt(machine_config &config); void ptblank2(machine_config &config); -protected: +private: virtual void machine_reset() override; }; diff --git a/src/mame/drivers/namcos23.cpp b/src/mame/drivers/namcos23.cpp index 40254e108a4..56f63206b6f 100644 --- a/src/mame/drivers/namcos23.cpp +++ b/src/mame/drivers/namcos23.cpp @@ -1435,6 +1435,16 @@ public: m_lamps(*this, "lamp%u", 0U) { } + void timecrs2v4a(machine_config &config); + void ss23e2(machine_config &config); + void gorgon(machine_config &config); + void ss23(machine_config &config); + void s23(machine_config &config); + void gmen(machine_config &config); + void timecrs2(machine_config &config); + + void init_s23(); + render_t m_render; const uint16_t *m_tmlrom; const uint8_t *m_tmhrom; @@ -1442,6 +1452,7 @@ public: uint32_t m_tileid_mask; uint32_t m_tile_mask; +private: void update_main_interrupts(uint32_t cause); void update_mixer(); @@ -1491,7 +1502,7 @@ public: DECLARE_READ16_MEMBER(iob_analog_r); DECLARE_WRITE16_MEMBER(c435_state_pio_w); DECLARE_WRITE16_MEMBER(c435_state_reset_w); - void init_s23(); + TILE_GET_INFO_MEMBER(TextTilemapGetInfo); DECLARE_VIDEO_START(s23); DECLARE_MACHINE_RESET(gmen); @@ -1530,13 +1541,7 @@ public: void render_project(poly_vertex &pv); void render_one_model(const namcos23_render_entry *re); void render_run(bitmap_rgb32 &bitmap); - void timecrs2v4a(machine_config &config); - void ss23e2(machine_config &config); - void gorgon(machine_config &config); - void ss23(machine_config &config); - void s23(machine_config &config); - void gmen(machine_config &config); - void timecrs2(machine_config &config); + void gmen_mips_map(address_map &map); void gmen_sh2_map(address_map &map); void gorgon_map(address_map &map); @@ -1547,7 +1552,6 @@ public: void s23iobrdmap(address_map &map); void timecrs2iobrdmap(address_map &map); -protected: virtual void machine_start() override; virtual void machine_reset() override; diff --git a/src/mame/drivers/nanos.cpp b/src/mame/drivers/nanos.cpp index a65135cab0d..f9c2ccc6a2d 100644 --- a/src/mame/drivers/nanos.cpp +++ b/src/mame/drivers/nanos.cpp @@ -50,6 +50,9 @@ public: , m_linec(*this, "LINEC") { } + void nanos(machine_config &config); + +private: DECLARE_WRITE8_MEMBER( nanos_tc_w ); DECLARE_WRITE_LINE_MEMBER( ctc_z0_w ); DECLARE_WRITE_LINE_MEMBER( ctc_z1_w ); @@ -62,10 +65,9 @@ public: DECLARE_FLOPPY_FORMATS( floppy_formats ); uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void nanos(machine_config &config); void nanos_io(address_map &map); void nanos_mem(address_map &map); -private: + uint8_t m_key_command; uint8_t m_last_code; uint8_t m_key_pressed; diff --git a/src/mame/drivers/nascom1.cpp b/src/mame/drivers/nascom1.cpp index b08bc34b7a5..94c9914972c 100644 --- a/src/mame/drivers/nascom1.cpp +++ b/src/mame/drivers/nascom1.cpp @@ -50,19 +50,36 @@ public: nascom_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag), m_maincpu(*this, "maincpu"), + m_ram(*this, RAM_TAG), m_hd6402(*this, "hd6402"), m_cassette(*this, "cassette"), - m_ram(*this, RAM_TAG), m_gfxdecode(*this, "gfxdecode"), m_palette(*this, "palette"), m_videoram(*this, "videoram"), m_keyboard(*this, "KEY.%u", 0) { } + void nascom(machine_config &config); + + void init_nascom(); + +protected: required_device m_maincpu; + required_device m_ram; + + virtual void machine_reset() override; + + DECLARE_READ8_MEMBER(nascom1_port_00_r); + DECLARE_WRITE8_MEMBER(nascom1_port_00_w); + DECLARE_READ8_MEMBER(nascom1_port_01_r); + DECLARE_WRITE8_MEMBER(nascom1_port_01_w); + DECLARE_READ8_MEMBER(nascom1_port_02_r); + + void screen_update(bitmap_ind16 &bitmap, const rectangle &cliprect, int char_height); + +private: required_device m_hd6402; required_device m_cassette; - required_device m_ram; required_device m_gfxdecode; required_device m_palette; required_shared_ptr m_videoram; @@ -73,25 +90,12 @@ public: int m_tape_index; nascom1_portstat_t m_portstat; - DECLARE_READ8_MEMBER(nascom1_port_00_r); - DECLARE_WRITE8_MEMBER(nascom1_port_00_w); - DECLARE_READ8_MEMBER(nascom1_port_01_r); - DECLARE_WRITE8_MEMBER(nascom1_port_01_w); - DECLARE_READ8_MEMBER(nascom1_port_02_r); - void init_nascom(); - void screen_update(bitmap_ind16 &bitmap, const rectangle &cliprect, int char_height); DECLARE_READ_LINE_MEMBER(nascom1_hd6402_si); DECLARE_WRITE_LINE_MEMBER(nascom1_hd6402_so); DECLARE_DEVICE_IMAGE_LOAD_MEMBER( nascom1_cassette ); DECLARE_DEVICE_IMAGE_UNLOAD_MEMBER( nascom1_cassette ); DECLARE_SNAPSHOT_LOAD_MEMBER( nascom1 ); - void nascom(machine_config &config); -protected: - virtual void machine_reset() override; - -private: - }; class nascom1_state : public nascom_state @@ -101,12 +105,13 @@ public: nascom_state(mconfig, type, tag) { } + void nascom1(machine_config &config); + uint32_t screen_update_nascom(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void nascom1(machine_config &config); +private: void nascom1_io(address_map &map); void nascom1_mem(address_map &map); -private: }; class nascom2_state : public nascom_state @@ -120,25 +125,27 @@ public: m_lsw1(*this, "lsw1") { } - DECLARE_WRITE_LINE_MEMBER(ram_disable_w); - DECLARE_WRITE_LINE_MEMBER(ram_disable_cpm_w); + void nascom2(machine_config &config); + void nascom2c(machine_config &config); + void init_nascom2(); void init_nascom2c(); + +private: + DECLARE_WRITE_LINE_MEMBER(ram_disable_w); + DECLARE_WRITE_LINE_MEMBER(ram_disable_cpm_w); uint32_t screen_update_nascom(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); image_init_result load_cart(device_image_interface &image, generic_slot_device *slot, int slot_id); DECLARE_DEVICE_IMAGE_LOAD_MEMBER(socket1_load) { return load_cart(image, m_socket1, 1); } DECLARE_DEVICE_IMAGE_LOAD_MEMBER(socket2_load) { return load_cart(image, m_socket2, 2); } - void nascom2(machine_config &config); - void nascom2c(machine_config &config); void nascom2_io(address_map &map); void nascom2_mem(address_map &map); void nascom2c_mem(address_map &map); -protected: + virtual void machine_reset() override; -private: required_device m_nasbus; required_device m_socket1; required_device m_socket2; diff --git a/src/mame/drivers/nc.cpp b/src/mame/drivers/nc.cpp index e08d06574a8..562e5cca099 100644 --- a/src/mame/drivers/nc.cpp +++ b/src/mame/drivers/nc.cpp @@ -101,7 +101,6 @@ #include "cpu/z80/z80.h" #include "machine/mc146818.h" // for NC200 real time clock #include "machine/rp5c01.h" // for NC100 real time clock -#include "machine/upd765.h" // for NC200 disk drive interface #include "formats/pc_dsk.h" // for NC200 disk image #include "rendlay.h" #include "screen.h" @@ -677,7 +676,7 @@ WRITE8_MEMBER(nc_state::nc_uart_control_w) /* changed uart from off to on */ if ((data & (1<<3))==0) { - machine().device("uart")->reset(); + m_uart->reset(); } } @@ -1228,13 +1227,12 @@ WRITE8_MEMBER(nc200_state::nc200_uart_control_w) WRITE8_MEMBER(nc200_state::nc200_memory_card_wait_state_w) { - upd765a_device *fdc = machine().device("upd765"); LOGDEBUG("nc200 memory card wait state: PC: %04x %02x\n", m_maincpu->pc(), data); #if 0 floppy_drive_set_motor_state(0, 1); floppy_drive_set_ready_state(0, 1, 1); #endif - fdc->tc_w(data & 0x01); + m_fdc->tc_w(data & 0x01); } /* bit 2: backlight: 1=off, 0=on */ diff --git a/src/mame/drivers/neoprint.cpp b/src/mame/drivers/neoprint.cpp index 7e74bc0dff0..e75779b4971 100644 --- a/src/mame/drivers/neoprint.cpp +++ b/src/mame/drivers/neoprint.cpp @@ -49,8 +49,18 @@ public: m_generic_paletteram_16(*this, "paletteram") { } + void neoprint(machine_config &config); + void nprsp(machine_config &config); + + void init_98best44(); + void init_npcartv1(); + void init_nprsp(); + void init_unkneo(); + static constexpr feature_type unemulated_features() { return feature::CAMERA | feature::PRINTER; } +private: + DECLARE_READ8_MEMBER(neoprint_calendar_r); DECLARE_WRITE8_MEMBER(neoprint_calendar_w); DECLARE_READ8_MEMBER(neoprint_unk_r); @@ -62,25 +72,18 @@ public: DECLARE_WRITE16_MEMBER(nprsp_palette_w); DECLARE_WRITE8_MEMBER(nprsp_bank_w); DECLARE_READ16_MEMBER(rom_window_r); - void init_98best44(); - void init_npcartv1(); - void init_nprsp(); - void init_unkneo(); DECLARE_MACHINE_RESET(nprsp); uint32_t screen_update_neoprint(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_nprsp(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void neoprint(machine_config &config); - void nprsp(machine_config &config); void neoprint_audio_io_map(address_map &map); void neoprint_audio_map(address_map &map); void neoprint_map(address_map &map); void nprsp_map(address_map &map); -protected: + virtual void machine_start() override; virtual void video_start() override; -private: required_shared_ptr m_npvidram; required_shared_ptr m_npvidregs; required_device m_maincpu; diff --git a/src/mame/drivers/neptunp2.cpp b/src/mame/drivers/neptunp2.cpp index 861847c1e5b..6baed13488f 100644 --- a/src/mame/drivers/neptunp2.cpp +++ b/src/mame/drivers/neptunp2.cpp @@ -24,14 +24,15 @@ public: m_maincpu(*this, "maincpu") { } + void neptunp2(machine_config &config); + +private: DECLARE_READ8_MEMBER(test_r); uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void neptunp2(machine_config &config); void neptunp2_io(address_map &map); void neptunp2_map(address_map &map); -protected: // devices required_device m_maincpu; diff --git a/src/mame/drivers/nes_vt.cpp b/src/mame/drivers/nes_vt.cpp index 9d727f07b61..072b69c6fb1 100644 --- a/src/mame/drivers/nes_vt.cpp +++ b/src/mame/drivers/nes_vt.cpp @@ -101,9 +101,24 @@ public: , m_prgbank3(*this, "prg_bank3") , m_prgrom(*this, "mainrom") , m_csel(*this, "CARTSEL") - { } + void nes_vt(machine_config &config); + + void nes_vt_hum(machine_config &config); + void nes_vt_pjoy(machine_config &config); + void nes_vt_sp69(machine_config &config); + + void nes_vt_xx(machine_config &config); + void nes_vt_hh(machine_config &config); + void nes_vt_cy(machine_config &config); + void nes_vt_dg(machine_config &config); + void nes_vt_bt(machine_config &config); + void nes_vt_vg(machine_config &config); + void nes_vt_fp(machine_config &config); + void nes_vt_fa(machine_config &config); + +private: /* APU handling */ DECLARE_WRITE_LINE_MEMBER(apu_irq); DECLARE_READ8_MEMBER(apu_read_mem); @@ -164,22 +179,6 @@ public: DECLARE_WRITE8_MEMBER(chr_w); - void nes_vt(machine_config &config); - - void nes_vt_hum(machine_config &config); - void nes_vt_pjoy(machine_config &config); - void nes_vt_sp69(machine_config &config); - - - void nes_vt_xx(machine_config &config); - void nes_vt_hh(machine_config &config); - void nes_vt_cy(machine_config &config); - void nes_vt_dg(machine_config &config); - void nes_vt_bt(machine_config &config); - void nes_vt_vg(machine_config &config); - void nes_vt_fp(machine_config &config); - void nes_vt_fa(machine_config &config); - void nes_vt_hum_map(address_map &map); void nes_vt_pjoy_map(address_map &map); void nes_vt_sp69_map(address_map &map); @@ -192,7 +191,6 @@ public: void nes_vt_fa_map(address_map &map); void nes_vt_fp_map(address_map &map); void prg_map(address_map &map); -private: /* expansion nametable - todo, see if we can refactor NES code to be reusable without having to add full NES bus etc. */ std::unique_ptr m_ntram; diff --git a/src/mame/drivers/nexus3d.cpp b/src/mame/drivers/nexus3d.cpp index 9d165009ca0..e71b0b25951 100644 --- a/src/mame/drivers/nexus3d.cpp +++ b/src/mame/drivers/nexus3d.cpp @@ -34,6 +34,11 @@ public: m_serflash(*this, "flash") { } + void nexus3d(machine_config &config); + + void init_nexus3d(); + +private: required_shared_ptr m_mainram; required_device m_maincpu; required_device m_serflash; @@ -44,11 +49,9 @@ public: // DECLARE_WRITE32_MEMBER(nexus3d_unk2_w); // DECLARE_WRITE32_MEMBER(nexus3d_unk3_w); - void init_nexus3d(); virtual void machine_reset() override; virtual void video_start() override; uint32_t screen_update_nexus3d(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - void nexus3d(machine_config &config); void nexus3d_map(address_map &map); }; diff --git a/src/mame/drivers/ngen.cpp b/src/mame/drivers/ngen.cpp index 55ce6499043..02535aad214 100644 --- a/src/mame/drivers/ngen.cpp +++ b/src/mame/drivers/ngen.cpp @@ -101,16 +101,15 @@ public: m_hd_buffer(*this,"hd_buffer_ram") {} + void ngen(machine_config &config); + + DECLARE_READ8_MEMBER(hd_buffer_r); + DECLARE_WRITE8_MEMBER(hd_buffer_w); + DECLARE_WRITE_LINE_MEMBER(pit_out0_w); DECLARE_WRITE_LINE_MEMBER(pit_out1_w); DECLARE_WRITE_LINE_MEMBER(pit_out2_w); - DECLARE_WRITE_LINE_MEMBER(cpu_timer_w); - DECLARE_WRITE_LINE_MEMBER(timer_clk_out); - DECLARE_WRITE16_MEMBER(cpu_peripheral_cb); - DECLARE_WRITE16_MEMBER(peripheral_w); - DECLARE_READ16_MEMBER(peripheral_r); - DECLARE_WRITE16_MEMBER(xbus_w); - DECLARE_READ16_MEMBER(xbus_r); + DECLARE_WRITE_LINE_MEMBER(dma_hrq_changed); DECLARE_WRITE_LINE_MEMBER(dma_eop_changed); DECLARE_WRITE_LINE_MEMBER(dack0_w); @@ -119,7 +118,6 @@ public: DECLARE_WRITE_LINE_MEMBER(dack3_w); DECLARE_READ8_MEMBER(dma_read_word); DECLARE_WRITE8_MEMBER(dma_write_word); - MC6845_UPDATE_ROW(crtc_update_row); // TODO: sort out what devices use which channels DECLARE_READ8_MEMBER( dma_0_dack_r ) { uint16_t ret = 0xffff; m_dma_high_byte = ret & 0xff00; return ret; } DECLARE_READ8_MEMBER( dma_1_dack_r ) { uint16_t ret = 0xffff; m_dma_high_byte = ret & 0xff00; return ret; } @@ -129,33 +127,46 @@ public: DECLARE_WRITE8_MEMBER( dma_1_dack_w ){ } DECLARE_WRITE8_MEMBER( dma_2_dack_w ){ } DECLARE_WRITE8_MEMBER( dma_3_dack_w ){ popmessage("IOW3: data %02x",data); } + + MC6845_UPDATE_ROW(crtc_update_row); + + DECLARE_WRITE_LINE_MEMBER(timer_clk_out); + + DECLARE_WRITE_LINE_MEMBER(fdc_irq_w); + +protected: + void ngen386_io(address_map &map); + void ngen386_mem(address_map &map); + void ngen386i_mem(address_map &map); + + +private: + DECLARE_WRITE16_MEMBER(cpu_peripheral_cb); + DECLARE_WRITE16_MEMBER(peripheral_w); + DECLARE_READ16_MEMBER(peripheral_r); + DECLARE_WRITE16_MEMBER(xbus_w); + DECLARE_READ16_MEMBER(xbus_r); + + DECLARE_WRITE_LINE_MEMBER(cpu_timer_w); DECLARE_WRITE16_MEMBER(hfd_w); DECLARE_READ16_MEMBER(hfd_r); - DECLARE_WRITE_LINE_MEMBER(fdc_irq_w); DECLARE_WRITE_LINE_MEMBER(fdc_drq_w); DECLARE_WRITE8_MEMBER(fdc_control_w); DECLARE_READ8_MEMBER(irq_cb); DECLARE_WRITE8_MEMBER(hdc_control_w); DECLARE_WRITE8_MEMBER(disk_addr_ext); - DECLARE_READ8_MEMBER(hd_buffer_r); - DECLARE_WRITE8_MEMBER(hd_buffer_w); DECLARE_READ16_MEMBER(b38_keyboard_r); DECLARE_WRITE16_MEMBER(b38_keyboard_w); DECLARE_READ16_MEMBER(b38_crtc_r); DECLARE_WRITE16_MEMBER(b38_crtc_w); - void ngen(machine_config &config); - void ngen386_io(address_map &map); - void ngen386_mem(address_map &map); - void ngen386i_mem(address_map &map); void ngen_io(address_map &map); void ngen_mem(address_map &map); -protected: + virtual void machine_reset() override; virtual void machine_start() override; -private: optional_device m_maincpu; optional_device m_i386cpu; required_device m_crtc; diff --git a/src/mame/drivers/ngp.cpp b/src/mame/drivers/ngp.cpp index 38b73203f7c..58e44dc1df7 100644 --- a/src/mame/drivers/ngp.cpp +++ b/src/mame/drivers/ngp.cpp @@ -153,6 +153,14 @@ public: m_nvram_loaded = false; } + void ngp_common(machine_config &config); + void ngp(machine_config &config); + void ngpc(machine_config &config); + + DECLARE_INPUT_CHANGED_MEMBER(power_callback); + +private: + virtual void machine_start() override; virtual void machine_reset() override; @@ -196,19 +204,15 @@ public: DECLARE_WRITE_LINE_MEMBER( ngp_hblank_pin_w ); DECLARE_WRITE8_MEMBER( ngp_tlcs900_porta ); uint32_t screen_update_ngp(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - DECLARE_INPUT_CHANGED_MEMBER(power_callback); TIMER_CALLBACK_MEMBER(ngp_seconds_callback); DECLARE_DEVICE_IMAGE_LOAD_MEMBER( ngp_cart); DECLARE_DEVICE_IMAGE_UNLOAD_MEMBER( ngp_cart ); - void ngp_common(machine_config &config); - void ngp(machine_config &config); - void ngpc(machine_config &config); void ngp_mem(address_map &map); void z80_io(address_map &map); void z80_mem(address_map &map); -protected: + bool m_nvram_loaded; required_ioport m_io_controls; required_ioport m_io_power; diff --git a/src/mame/drivers/nibble.cpp b/src/mame/drivers/nibble.cpp index 8d22015c7d1..9a550e86125 100644 --- a/src/mame/drivers/nibble.cpp +++ b/src/mame/drivers/nibble.cpp @@ -67,6 +67,9 @@ public: m_maincpu(*this, "maincpu"), m_gfxdecode(*this, "gfxdecode") { } + void nibble(machine_config &config); + +private: required_shared_ptr m_videoram; tilemap_t *m_bg_tilemap; DECLARE_WRITE16_MEMBER(nibble_videoram_w); @@ -80,7 +83,6 @@ public: INTERRUPT_GEN_MEMBER(nibble_interrupt); required_device m_maincpu; required_device m_gfxdecode; - void nibble(machine_config &config); void nibble_cru_map(address_map &map); void nibble_map(address_map &map); }; diff --git a/src/mame/drivers/nichild.cpp b/src/mame/drivers/nichild.cpp index a8b8cc62180..6f190f115f1 100644 --- a/src/mame/drivers/nichild.cpp +++ b/src/mame/drivers/nichild.cpp @@ -49,6 +49,9 @@ public: { } + void nichild(machine_config &config); + +private: DECLARE_READ8_MEMBER(gfx_r); DECLARE_READ8_MEMBER(mux_r); DECLARE_WRITE8_MEMBER(mux_w); @@ -59,16 +62,13 @@ public: DECLARE_WRITE8_MEMBER(gfxbank_w); INTERRUPT_GEN_MEMBER(vdp_irq); - void nichild(machine_config &config); - void nichild_io(address_map &map); void nichild_map(address_map &map); -protected: + // driver_device overrides virtual void machine_start() override; virtual void machine_reset() override; -private: required_device m_maincpu; required_device m_v9938; required_region_ptr m_gfxrom; diff --git a/src/mame/drivers/nightgal.cpp b/src/mame/drivers/nightgal.cpp index 2d8a15260e9..cb997043c9a 100644 --- a/src/mame/drivers/nightgal.cpp +++ b/src/mame/drivers/nightgal.cpp @@ -72,7 +72,16 @@ public: m_palette(*this, "palette"), m_blitter(*this, "blitter") { } + void ngalsumr(machine_config &config); + void sexygal(machine_config &config); + void sweetgal(machine_config &config); + void sgaltrop(machine_config &config); + void royalqn(machine_config &config); + void init_ngalsumr(); + void init_royalqn(); + +private: emu_timer *m_z80_wait_ack_timer; required_shared_ptr m_comms_ram; @@ -100,8 +109,6 @@ public: DECLARE_WRITE8_MEMBER(sexygal_audioff_w); DECLARE_WRITE8_MEMBER(sexygal_audionmi_w); - void init_ngalsumr(); - void init_royalqn(); DECLARE_WRITE8_MEMBER(ngalsumr_prot_latch_w); DECLARE_READ8_MEMBER(ngalsumr_prot_value_r); virtual void machine_start() override; @@ -110,11 +117,6 @@ public: DECLARE_PALETTE_INIT(nightgal); uint32_t screen_update_nightgal(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void ngalsumr(machine_config &config); - void sexygal(machine_config &config); - void sweetgal(machine_config &config); - void sgaltrop(machine_config &config); - void royalqn(machine_config &config); void common_nsc_map(address_map &map); void common_sexygal_io(address_map &map); void royalqn_io(address_map &map); @@ -127,7 +129,7 @@ public: void sgaltrop_io(address_map &map); void sgaltrop_nsc_map(address_map &map); void sweetgal_map(address_map &map); -protected: + required_ioport m_io_cr_clear; required_ioport m_io_coins; required_ioport m_io_pl1_1; @@ -153,7 +155,6 @@ protected: std::unique_ptr m_tmp_bitmap; -private: /* video-related */ uint8_t m_blit_raw_data[3]; diff --git a/src/mame/drivers/nmg5.cpp b/src/mame/drivers/nmg5.cpp index 272c0feedfb..3443df7c89c 100644 --- a/src/mame/drivers/nmg5.cpp +++ b/src/mame/drivers/nmg5.cpp @@ -251,6 +251,18 @@ public: m_soundlatch(*this, "soundlatch") { } + void nmg5(machine_config &config); + void pclubys(machine_config &config); + void garogun(machine_config &config); + void searchp2(machine_config &config); + void _7ordi(machine_config &config); + + void init_prot_val_00(); + void init_prot_val_10(); + void init_prot_val_20(); + void init_prot_val_40(); + +private: /* memory pointers */ required_shared_ptr m_spriteram; required_shared_ptr m_scroll_ram; @@ -284,10 +296,6 @@ public: DECLARE_WRITE16_MEMBER(gfx_bank_w); DECLARE_WRITE16_MEMBER(priority_reg_w); DECLARE_WRITE8_MEMBER(oki_banking_w); - void init_prot_val_00(); - void init_prot_val_10(); - void init_prot_val_20(); - void init_prot_val_40(); TILE_GET_INFO_MEMBER(fg_get_tile_info); TILE_GET_INFO_MEMBER(bg_get_tile_info); virtual void machine_start() override; @@ -295,11 +303,6 @@ public: virtual void video_start() override; uint32_t screen_update_nmg5(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void draw_bitmap( bitmap_ind16 &bitmap ); - void nmg5(machine_config &config); - void pclubys(machine_config &config); - void garogun(machine_config &config); - void searchp2(machine_config &config); - void _7ordi(machine_config &config); void nmg5_map(address_map &map); void nmg5_sound_map(address_map &map); void pclubys_map(address_map &map); diff --git a/src/mame/drivers/nokia_3310.cpp b/src/mame/drivers/nokia_3310.cpp index 97e3ac4d356..a464f769249 100644 --- a/src/mame/drivers/nokia_3310.cpp +++ b/src/mame/drivers/nokia_3310.cpp @@ -38,15 +38,15 @@ public: m_pwr(*this, "PWR") { } - DECLARE_INPUT_CHANGED_MEMBER(key_irq); - void noki3330(machine_config &config); void noki3410(machine_config &config); void noki7110(machine_config &config); void noki6210(machine_config &config); void noki3310(machine_config &config); -protected: + DECLARE_INPUT_CHANGED_MEMBER(key_irq); + +private: virtual void machine_start() override; virtual void machine_reset() override; @@ -71,7 +71,6 @@ protected: void noki3310_map(address_map &map); -private: void assert_fiq(int num); void assert_irq(int num); void ack_fiq(uint16_t mask); diff --git a/src/mame/drivers/notechan.cpp b/src/mame/drivers/notechan.cpp index 11a3515d95b..cc6f1cd901d 100644 --- a/src/mame/drivers/notechan.cpp +++ b/src/mame/drivers/notechan.cpp @@ -309,18 +309,18 @@ public: m_lamps(*this, "lamp%u", 0U) { } + void notechan(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(out_f8_w); DECLARE_WRITE8_MEMBER(out_f9_w); DECLARE_WRITE8_MEMBER(out_fa_w); DECLARE_WRITE8_MEMBER(out_ff_w); - void notechan(machine_config &config); void notechan_map(address_map &map); void notechan_port_map(address_map &map); -protected: virtual void machine_start() override { m_lamps.resolve(); } -private: required_device m_maincpu; required_device m_oki; output_finder<32> m_lamps; diff --git a/src/mame/drivers/notetaker.cpp b/src/mame/drivers/notetaker.cpp index c2ec1962eb6..fea32461bd9 100644 --- a/src/mame/drivers/notetaker.cpp +++ b/src/mame/drivers/notetaker.cpp @@ -116,11 +116,6 @@ DONE: class notetaker_state : public driver_device { public: - enum - { - TIMER_FIFOCLK, - }; - notetaker_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag) , m_iop_cpu(*this, "iop_cpu"), @@ -136,6 +131,17 @@ public: m_floppy(nullptr) { } + + void notetakr(machine_config &config); + + void init_notetakr(); + +private: + enum + { + TIMER_FIFOCLK, + }; + // devices required_device m_iop_cpu; required_device m_iop_pic; @@ -172,7 +178,6 @@ public: // mem map stuff DECLARE_READ16_MEMBER(iop_r); DECLARE_WRITE16_MEMBER(iop_w); - void init_notetakr(); //variables // IPConReg uint8_t m_BootSeqDone; @@ -228,12 +233,11 @@ public: virtual void machine_start() override; virtual void machine_reset() override; - void notetakr(machine_config &config); void iop_io(address_map &map); void iop_mem(address_map &map); void ep_io(address_map &map); void ep_mem(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/drivers/novag6502.cpp b/src/mame/drivers/novag6502.cpp index d515d4320e7..b82ef47b4e3 100644 --- a/src/mame/drivers/novag6502.cpp +++ b/src/mame/drivers/novag6502.cpp @@ -83,6 +83,17 @@ public: m_rombank(*this, "rombank") { } + void supercon(machine_config &config); + void cforte(machine_config &config); + void sforte_map(address_map &map); + void sexpert(machine_config &config); + void sforte(machine_config &config); + + void init_sexpert(); + + DECLARE_INPUT_CHANGED_MEMBER(sexpert_cpu_freq); + +private: optional_device m_hlcd0538; optional_memory_bank m_rombank; @@ -95,7 +106,6 @@ public: DECLARE_READ8_MEMBER(supercon_input1_r); DECLARE_READ8_MEMBER(supercon_input2_r); void supercon_map(address_map &map); - void supercon(machine_config &config); // Constellation Forte void cforte_prepare_display(); @@ -103,7 +113,6 @@ public: DECLARE_WRITE8_MEMBER(cforte_mux_w); DECLARE_WRITE8_MEMBER(cforte_control_w); void cforte_map(address_map &map); - void cforte(machine_config &config); // Super Expert DECLARE_WRITE8_MEMBER(sexpert_leds_w); @@ -113,17 +122,12 @@ public: DECLARE_READ8_MEMBER(sexpert_input1_r); DECLARE_READ8_MEMBER(sexpert_input2_r); DECLARE_MACHINE_RESET(sexpert); - void init_sexpert(); - DECLARE_INPUT_CHANGED_MEMBER(sexpert_cpu_freq); void sexpert_map(address_map &map); void sexpert_set_cpu_freq(); - void sexpert(machine_config &config); // Super Forte DECLARE_WRITE8_MEMBER(sforte_lcd_control_w); DECLARE_WRITE8_MEMBER(sforte_lcd_data_w); - void sforte_map(address_map &map); - void sforte(machine_config &config); }; diff --git a/src/mame/drivers/novag68k.cpp b/src/mame/drivers/novag68k.cpp index 1510cb69f5c..89b76e5742c 100644 --- a/src/mame/drivers/novag68k.cpp +++ b/src/mame/drivers/novag68k.cpp @@ -47,6 +47,10 @@ public: : novagbase_state(mconfig, type, tag) { } + void diablo68k(machine_config &config); + void scorpio68k(machine_config &config); + +private: TIMER_DEVICE_CALLBACK_MEMBER(irq_on) { m_maincpu->set_input_line(M68K_IRQ_2, ASSERT_LINE); } TIMER_DEVICE_CALLBACK_MEMBER(irq_off) { m_maincpu->set_input_line(M68K_IRQ_2, CLEAR_LINE); } @@ -57,12 +61,10 @@ public: DECLARE_READ8_MEMBER(diablo68k_input1_r); DECLARE_READ8_MEMBER(diablo68k_input2_r); void diablo68k_map(address_map &map); - void diablo68k(machine_config &config); // Scorpio 68000 DECLARE_WRITE8_MEMBER(scorpio68k_control_w); void scorpio68k_map(address_map &map); - void scorpio68k(machine_config &config); }; diff --git a/src/mame/drivers/novagf8.cpp b/src/mame/drivers/novagf8.cpp index 58c0581bd40..97154e903f4 100644 --- a/src/mame/drivers/novagf8.cpp +++ b/src/mame/drivers/novagf8.cpp @@ -36,20 +36,22 @@ public: : novagbase_state(mconfig, type, tag) { } + void delta1(machine_config &config); + + DECLARE_INPUT_CHANGED_MEMBER(reset_button); + +private: u8 m_io[2]; // F8 CPU I/O ports F3853_INTERRUPT_REQ_CB(f3853_interrupt); // Delta-1 - DECLARE_INPUT_CHANGED_MEMBER(reset_button); DECLARE_WRITE8_MEMBER(delta1_io0_w); DECLARE_WRITE8_MEMBER(delta1_io1_w); DECLARE_READ8_MEMBER(delta1_io0_r); DECLARE_READ8_MEMBER(delta1_io1_r); void delta1_io(address_map &map); void delta1_map(address_map &map); - void delta1(machine_config &config); -protected: virtual void machine_start() override; }; diff --git a/src/mame/drivers/novagmcs48.cpp b/src/mame/drivers/novagmcs48.cpp index e9a0d19c22c..5b4fdbf909e 100644 --- a/src/mame/drivers/novagmcs48.cpp +++ b/src/mame/drivers/novagmcs48.cpp @@ -45,15 +45,18 @@ public: : novagbase_state(mconfig, type, tag) { } + void presto(machine_config &config); + void octo(machine_config &config); + + DECLARE_INPUT_CHANGED_MEMBER(octo_cpu_freq); + +private: // Presto/Octo DECLARE_WRITE8_MEMBER(presto_mux_w); DECLARE_WRITE8_MEMBER(presto_control_w); DECLARE_READ8_MEMBER(presto_input_r); DECLARE_MACHINE_RESET(octo); - DECLARE_INPUT_CHANGED_MEMBER(octo_cpu_freq); void octo_set_cpu_freq(); - void presto(machine_config &config); - void octo(machine_config &config); }; diff --git a/src/mame/drivers/nsg6809.cpp b/src/mame/drivers/nsg6809.cpp index 44348d77d78..1029a53f018 100644 --- a/src/mame/drivers/nsg6809.cpp +++ b/src/mame/drivers/nsg6809.cpp @@ -52,10 +52,9 @@ public: void pitchhit(machine_config &config); -protected: +private: void main_map(address_map &map); -private: required_device m_maincpu; }; diff --git a/src/mame/drivers/nss.cpp b/src/mame/drivers/nss.cpp index 3a6ee9b8cef..a8c6834e0f9 100644 --- a/src/mame/drivers/nss.cpp +++ b/src/mame/drivers/nss.cpp @@ -318,6 +318,13 @@ public: , m_palette(*this, "palette") { } + void nss(machine_config &config); + + void init_nss(); + + DECLARE_CUSTOM_INPUT_MEMBER(game_over_flag_r); + +private: required_device m_bioscpu; required_device m_m50458; required_device m_s3520cf; @@ -343,15 +350,11 @@ public: DECLARE_WRITE8_MEMBER(port_04_w); DECLARE_WRITE8_MEMBER(port_07_w); - void init_nss(); - - DECLARE_CUSTOM_INPUT_MEMBER(game_over_flag_r); virtual void machine_start() override; virtual void machine_reset() override; DECLARE_WRITE_LINE_MEMBER(nss_vblank_irq); DECLARE_READ8_MEMBER(spc_ram_100_r); DECLARE_WRITE8_MEMBER(spc_ram_100_w); - void nss(machine_config &config); void bios_io_map(address_map &map); void bios_map(address_map &map); void snes_map(address_map &map); diff --git a/src/mame/drivers/nwk-tr.cpp b/src/mame/drivers/nwk-tr.cpp index 5aafdcdcfae..7e9fa2deae7 100644 --- a/src/mame/drivers/nwk-tr.cpp +++ b/src/mame/drivers/nwk-tr.cpp @@ -291,6 +291,12 @@ public: m_palette(*this, "palette"), m_generic_paletteram_32(*this, "paletteram") { } + void thrilld(machine_config &config); + void nwktr(machine_config &config); + + void init_nwktr(); + +private: // TODO: Needs verification on real hardware static const int m_sound_timer_usec = 2400; @@ -335,15 +341,13 @@ public: ADC12138_IPT_CONVERT_CB(adc12138_input_callback); TIMER_CALLBACK_MEMBER(sound_irq); - void init_nwktr(); virtual void machine_start() override; virtual void machine_reset() override; uint32_t screen_update_lscreen(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); uint32_t screen_update_rscreen(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); void lanc2_init(); - void thrilld(machine_config &config); - void nwktr(machine_config &config); + void nwktr_map(address_map &map); void sharc0_map(address_map &map); void sharc1_map(address_map &map); diff --git a/src/mame/drivers/nyny.cpp b/src/mame/drivers/nyny.cpp index 5859f90ed36..dd20621c83c 100644 --- a/src/mame/drivers/nyny.cpp +++ b/src/mame/drivers/nyny.cpp @@ -114,6 +114,9 @@ public: m_soundlatch2(*this, "soundlatch2"), m_soundlatch3(*this, "soundlatch3") { } + void nyny(machine_config &config); + +private: /* memory pointers */ required_shared_ptr m_videoram1; required_shared_ptr m_colorram1; @@ -158,7 +161,6 @@ public: MC6845_UPDATE_ROW(crtc_update_row); MC6845_END_UPDATE(crtc_end_update); - void nyny(machine_config &config); void nyny_audio_1_map(address_map &map); void nyny_audio_2_map(address_map &map); void nyny_main_map(address_map &map); diff --git a/src/mame/drivers/octopus.cpp b/src/mame/drivers/octopus.cpp index 25c1b448a10..eac653cb280 100644 --- a/src/mame/drivers/octopus.cpp +++ b/src/mame/drivers/octopus.cpp @@ -170,6 +170,9 @@ public: m_z80_active(false) { } + void octopus(machine_config &config); + +private: virtual void machine_reset() override; virtual void machine_start() override; virtual void video_start() override; @@ -224,16 +227,14 @@ public: BEEP_TIMER = 100 }; - void octopus(machine_config &config); void octopus_io(address_map &map); void octopus_mem(address_map &map); void octopus_sub_io(address_map &map); void octopus_sub_mem(address_map &map); void octopus_vram(address_map &map); -protected: + virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; -private: required_device m_maincpu; required_device m_subcpu; required_device m_crtc; diff --git a/src/mame/drivers/odyssey.cpp b/src/mame/drivers/odyssey.cpp index 34ede8f555b..7e88e16b326 100644 --- a/src/mame/drivers/odyssey.cpp +++ b/src/mame/drivers/odyssey.cpp @@ -77,13 +77,15 @@ public: m_maincpu(*this, "maincpu") { } + void odyssey(machine_config &config); + +private: required_device m_maincpu; virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - void odyssey(machine_config &config); void odyssey_map(address_map &map); }; diff --git a/src/mame/drivers/odyssey2.cpp b/src/mame/drivers/odyssey2.cpp index b49ec035d2b..cb3e2f4df00 100644 --- a/src/mame/drivers/odyssey2.cpp +++ b/src/mame/drivers/odyssey2.cpp @@ -37,6 +37,16 @@ public: m_keyboard(*this, "KEY.%u", 0), m_joysticks(*this, "JOY.%u", 0) { } + void odyssey2_cartslot(machine_config &config); + void videopac(machine_config &config); + void odyssey2(machine_config &config); + + void init_odyssey2(); + + uint32_t screen_update_odyssey2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); + +protected: + required_device m_maincpu; required_device m_i8244; required_device m_cart; @@ -45,29 +55,19 @@ public: uint8_t m_p1; uint8_t m_p2; uint8_t m_lum; - DECLARE_READ8_MEMBER(io_read); - DECLARE_WRITE8_MEMBER(io_write); - DECLARE_READ8_MEMBER(bus_read); - DECLARE_WRITE8_MEMBER(bus_write); - DECLARE_READ8_MEMBER(p1_read); - DECLARE_WRITE8_MEMBER(p1_write); - DECLARE_READ8_MEMBER(p2_read); - DECLARE_WRITE8_MEMBER(p2_write); + + DECLARE_READ_LINE_MEMBER(t1_read); - void init_odyssey2(); - virtual void machine_start() override; - virtual void machine_reset() override; DECLARE_PALETTE_INIT(odyssey2); - uint32_t screen_update_odyssey2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); DECLARE_WRITE16_MEMBER(scanline_postprocess); - void odyssey2_cartslot(machine_config &config); - void videopac(machine_config &config); - void odyssey2(machine_config &config); void odyssey2_io(address_map &map); void odyssey2_mem(address_map &map); -protected: + + virtual void machine_start() override; + virtual void machine_reset() override; + /* constants */ static const uint8_t P1_BANK_LO_BIT = 0x01; static const uint8_t P1_BANK_HI_BIT = 0x02; @@ -80,6 +80,15 @@ protected: required_ioport_array<6> m_keyboard; required_ioport_array<2> m_joysticks; + + DECLARE_READ8_MEMBER(io_read); + DECLARE_WRITE8_MEMBER(io_write); + DECLARE_READ8_MEMBER(bus_read); + DECLARE_WRITE8_MEMBER(bus_write); + DECLARE_READ8_MEMBER(p1_read); + DECLARE_WRITE8_MEMBER(p1_write); + DECLARE_READ8_MEMBER(p2_read); + DECLARE_WRITE8_MEMBER(p2_write); }; class g7400_state : public odyssey2_state @@ -91,6 +100,10 @@ public: , m_ef9340_1(*this, "ef9340_1") { } + void g7400(machine_config &config); + void odyssey3(machine_config &config); + +private: required_device m_i8243; required_device m_ef9340_1; @@ -103,10 +116,8 @@ public: DECLARE_WRITE8_MEMBER(i8243_port_w); DECLARE_WRITE16_MEMBER(scanline_postprocess); - void g7400(machine_config &config); - void odyssey3(machine_config &config); void g7400_io(address_map &map); -protected: + uint8_t m_ic674_decode[8]; uint8_t m_ic678_decode[8]; }; diff --git a/src/mame/drivers/okean240.cpp b/src/mame/drivers/okean240.cpp index e2548b89950..c97618dc5b8 100644 --- a/src/mame/drivers/okean240.cpp +++ b/src/mame/drivers/okean240.cpp @@ -64,11 +64,6 @@ Usage of terminal: class okean240_state : public driver_device { public: - enum - { - TIMER_OKEAN_BOOT - }; - okean240_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag) , m_term_data(0) @@ -80,6 +75,18 @@ public: , m_maincpu(*this, "maincpu") { } + void okean240a(machine_config &config); + void okean240t(machine_config &config); + void okean240(machine_config &config); + + void init_okean240(); + +private: + enum + { + TIMER_OKEAN_BOOT + }; + DECLARE_READ8_MEMBER(okean240_kbd_status_r); DECLARE_READ8_MEMBER(okean240a_kbd_status_r); DECLARE_READ8_MEMBER(term_status_r); @@ -92,17 +99,13 @@ public: DECLARE_READ8_MEMBER(okean240a_port42_r); void kbd_put(u8 data); DECLARE_WRITE8_MEMBER(scroll_w); - void init_okean240(); uint32_t screen_update_okean240(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void okean240a(machine_config &config); - void okean240t(machine_config &config); - void okean240(machine_config &config); void okean240_io(address_map &map); void okean240_mem(address_map &map); void okean240a_io(address_map &map); void okean240t_io(address_map &map); -private: + virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; diff --git a/src/mame/drivers/olibochu.cpp b/src/mame/drivers/olibochu.cpp index 697850e6e22..b87c1961bca 100644 --- a/src/mame/drivers/olibochu.cpp +++ b/src/mame/drivers/olibochu.cpp @@ -76,6 +76,9 @@ public: m_palette(*this, "palette"), m_soundlatch(*this, "soundlatch") { } + void olibochu(machine_config &config); + +private: /* memory pointers */ required_shared_ptr m_videoram; required_shared_ptr m_colorram; @@ -105,7 +108,6 @@ public: uint32_t screen_update_olibochu(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); TIMER_DEVICE_CALLBACK_MEMBER(olibochu_scanline); void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect ); - void olibochu(machine_config &config); void olibochu_map(address_map &map); void olibochu_sound_map(address_map &map); }; diff --git a/src/mame/drivers/omegrace.cpp b/src/mame/drivers/omegrace.cpp index 45a69d3cbd9..960feab2b1b 100644 --- a/src/mame/drivers/omegrace.cpp +++ b/src/mame/drivers/omegrace.cpp @@ -241,18 +241,20 @@ public: , m_leds(*this, "led%u", 0U) { } + void omegrace(machine_config &config); + + void init_omegrace(); + +private: DECLARE_READ8_MEMBER(omegrace_vg_go_r); DECLARE_READ8_MEMBER(omegrace_spinner1_r); DECLARE_WRITE8_MEMBER(omegrace_leds_w); DECLARE_WRITE8_MEMBER(omegrace_soundlatch_w); - void init_omegrace(); - void omegrace(machine_config &config); void main_map(address_map &map); void port_map(address_map &map); void sound_map(address_map &map); void sound_port(address_map &map); -protected: virtual void machine_start() override { m_leds.resolve(); } virtual void machine_reset() override; diff --git a/src/mame/drivers/onetwo.cpp b/src/mame/drivers/onetwo.cpp index f37407b5b8f..b6042a73c5a 100644 --- a/src/mame/drivers/onetwo.cpp +++ b/src/mame/drivers/onetwo.cpp @@ -68,6 +68,9 @@ public: m_palette(*this, "palette"), m_soundlatch(*this, "soundlatch") { } + void onetwo(machine_config &config); + +private: /* memory pointers */ required_shared_ptr m_paletteram; required_shared_ptr m_paletteram2; @@ -94,7 +97,6 @@ public: virtual void video_start() override; uint32_t screen_update_onetwo(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void set_color(int offset); - void onetwo(machine_config &config); void main_cpu(address_map &map); void main_cpu_io(address_map &map); void sound_cpu(address_map &map); diff --git a/src/mame/drivers/onyx.cpp b/src/mame/drivers/onyx.cpp index 7cb100c5b6e..b5e77bbfe10 100644 --- a/src/mame/drivers/onyx.cpp +++ b/src/mame/drivers/onyx.cpp @@ -63,8 +63,6 @@ public: , m_pio2(*this, "pio2") { } - DECLARE_MACHINE_RESET(c8002); - void c8002(machine_config &config); void c5000(machine_config &config); void c5000_io(address_map &map); @@ -74,6 +72,8 @@ public: void subio(address_map &map); void submem(address_map &map); private: + DECLARE_MACHINE_RESET(c8002); + required_device m_maincpu; optional_device m_sio1, m_sio2, m_sio3, m_sio4, m_sio5; optional_device m_ctc1, m_ctc2, m_ctc3; diff --git a/src/mame/drivers/osbexec.cpp b/src/mame/drivers/osbexec.cpp index 2e3f5a1a718..c6ccbddf714 100644 --- a/src/mame/drivers/osbexec.cpp +++ b/src/mame/drivers/osbexec.cpp @@ -48,6 +48,11 @@ public: , m_floppy1(*this, "mb8877:1:525ssdd") { } + void osbexec(machine_config &config); + + void init_osbexec(); + +private: required_device m_maincpu; required_device m_screen; required_device m_mb8877; @@ -115,7 +120,6 @@ public: DECLARE_WRITE8_MEMBER(osbexec_c000_w); DECLARE_READ8_MEMBER(osbexec_kbd_r); DECLARE_READ8_MEMBER(osbexec_rtc_r); - void init_osbexec(); virtual void machine_reset() override; TIMER_CALLBACK_MEMBER(osbexec_video_callback); DECLARE_READ8_MEMBER(osbexec_pia0_a_r); @@ -129,7 +133,6 @@ public: DECLARE_WRITE_LINE_MEMBER(modem_dsr_w); DECLARE_WRITE_LINE_MEMBER(modem_ri_w); DECLARE_WRITE_LINE_MEMBER(comm_clk_a_w); - void osbexec(machine_config &config); void osbexec_io(address_map &map); void osbexec_mem(address_map &map); }; diff --git a/src/mame/drivers/otomedius.cpp b/src/mame/drivers/otomedius.cpp index 131c5e0e2fa..0e71a41f04c 100644 --- a/src/mame/drivers/otomedius.cpp +++ b/src/mame/drivers/otomedius.cpp @@ -27,13 +27,15 @@ public: m_maincpu(*this, "maincpu") { } + void konami_pc(machine_config &config); + +private: required_device m_maincpu; virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; uint32_t screen_update_konami_pc(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - void konami_pc(machine_config &config); void konami_pc_map(address_map &map); }; diff --git a/src/mame/drivers/p112.cpp b/src/mame/drivers/p112.cpp index 80dc2cd6a41..5ba2a118d72 100644 --- a/src/mame/drivers/p112.cpp +++ b/src/mame/drivers/p112.cpp @@ -46,11 +46,13 @@ public: : driver_device(mconfig, type, tag) , m_maincpu(*this, "maincpu") { } + void p112(machine_config &config); + +private: virtual void machine_reset() override; virtual void video_start() override; uint32_t screen_update_p112(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); required_device m_maincpu; - void p112(machine_config &config); void p112_io(address_map &map); void p112_mem(address_map &map); }; diff --git a/src/mame/drivers/p8k.cpp b/src/mame/drivers/p8k.cpp index 9c013c38a86..8429206dffd 100644 --- a/src/mame/drivers/p8k.cpp +++ b/src/mame/drivers/p8k.cpp @@ -91,9 +91,14 @@ public: , m_i8272(*this, "i8272") { } + void p8k(machine_config &config); + void p8k_16(machine_config &config); + + void init_p8k(); + +private: DECLARE_READ8_MEMBER(p8k_port0_r); DECLARE_WRITE8_MEMBER(p8k_port0_w); - void init_p8k(); DECLARE_MACHINE_RESET(p8k); DECLARE_WRITE_LINE_MEMBER(fdc_irq); @@ -105,14 +110,12 @@ public: DECLARE_READ8_MEMBER(io_read_byte); DECLARE_WRITE8_MEMBER(io_write_byte); - void p8k(machine_config &config); - void p8k_16(machine_config &config); void p8k_16_datamap(address_map &map); void p8k_16_iomap(address_map &map); void p8k_16_memmap(address_map &map); void p8k_iomap(address_map &map); void p8k_memmap(address_map &map); -private: + required_device m_maincpu; optional_device m_daisy; optional_device m_pio2; diff --git a/src/mame/drivers/palm.cpp b/src/mame/drivers/palm.cpp index 7a0655832f8..19c4f02b17f 100644 --- a/src/mame/drivers/palm.cpp +++ b/src/mame/drivers/palm.cpp @@ -37,6 +37,18 @@ public: m_io_penb(*this, "PENB"), m_io_portd(*this, "PORTD") { } + void palmiii(machine_config &config); + void pilot1k(machine_config &config); + void palmvx(machine_config &config); + void palmv(machine_config &config); + void palm(machine_config &config); + void palmpro(machine_config &config); + void pilot5k(machine_config &config); + + DECLARE_INPUT_CHANGED_MEMBER(pen_check); + DECLARE_INPUT_CHANGED_MEMBER(button_check); + +private: required_device m_maincpu; required_device m_lsi; required_device m_ram; @@ -44,8 +56,6 @@ public: uint16_t m_spim_data; virtual void machine_start() override; virtual void machine_reset() override; - DECLARE_INPUT_CHANGED_MEMBER(pen_check); - DECLARE_INPUT_CHANGED_MEMBER(button_check); DECLARE_WRITE8_MEMBER(palm_port_f_out); DECLARE_READ8_MEMBER(palm_port_c_in); DECLARE_READ8_MEMBER(palm_port_f_in); @@ -60,13 +70,6 @@ public: required_ioport m_io_portd; offs_t palm_dasm_override(std::ostream &stream, offs_t pc, const util::disasm_interface::data_buffer &opcodes, const util::disasm_interface::data_buffer ¶ms); - void palmiii(machine_config &config); - void pilot1k(machine_config &config); - void palmvx(machine_config &config); - void palmv(machine_config &config); - void palm(machine_config &config); - void palmpro(machine_config &config); - void pilot5k(machine_config &config); void palm_map(address_map &map); }; diff --git a/src/mame/drivers/pangofun.cpp b/src/mame/drivers/pangofun.cpp index 64e3ca41208..fb0478d8aa8 100644 --- a/src/mame/drivers/pangofun.cpp +++ b/src/mame/drivers/pangofun.cpp @@ -107,9 +107,12 @@ public: pangofun_state(const machine_config &mconfig, device_type type, const char *tag) : pcat_base_state(mconfig, type, tag) { } + void pangofun(machine_config &config); + void init_pangofun(); + +private: virtual void machine_start() override; - void pangofun(machine_config &config); void pcat_io(address_map &map); void pcat_map(address_map &map); }; diff --git a/src/mame/drivers/panicr.cpp b/src/mame/drivers/panicr.cpp index 46fb8761f4e..d3904332a8c 100644 --- a/src/mame/drivers/panicr.cpp +++ b/src/mame/drivers/panicr.cpp @@ -86,6 +86,11 @@ public: m_textram(*this, "textram"), m_spritebank(*this, "spritebank") { } + void panicr(machine_config &config); + + void init_panicr(); + +private: required_device m_maincpu; required_device m_t5182; required_device m_gfxdecode; @@ -117,7 +122,6 @@ public: TILE_GET_INFO_MEMBER(get_infotile_info_2); TILE_GET_INFO_MEMBER(get_txttile_info); - void init_panicr(); virtual void video_start() override; DECLARE_PALETTE_INIT(panicr); @@ -125,7 +129,6 @@ public: void draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect ); TIMER_DEVICE_CALLBACK_MEMBER(scanline); - void panicr(machine_config &config); void panicr_map(address_map &map); }; diff --git a/src/mame/drivers/paranoia.cpp b/src/mame/drivers/paranoia.cpp index 0161205d551..cf1bcd51027 100644 --- a/src/mame/drivers/paranoia.cpp +++ b/src/mame/drivers/paranoia.cpp @@ -55,6 +55,9 @@ public: paranoia_state(const machine_config &mconfig, device_type type, const char *tag) : pce_common_state(mconfig, type, tag) { } + void paranoia(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(i8085_d000_w); DECLARE_READ8_MEMBER(z80_io_01_r); DECLARE_READ8_MEMBER(z80_io_02_r); @@ -64,7 +67,6 @@ public: DECLARE_WRITE8_MEMBER(i8155_b_w); DECLARE_WRITE8_MEMBER(i8155_c_w); DECLARE_WRITE_LINE_MEMBER(i8155_timer_out); - void paranoia(machine_config &config); void paranoia_8085_io_map(address_map &map); void paranoia_8085_map(address_map &map); void paranoia_z80_io_map(address_map &map); diff --git a/src/mame/drivers/pasha2.cpp b/src/mame/drivers/pasha2.cpp index daad8a548ff..d258c446ea6 100644 --- a/src/mame/drivers/pasha2.cpp +++ b/src/mame/drivers/pasha2.cpp @@ -102,6 +102,11 @@ public: , m_palette(*this, "palette") { } + void pasha2(machine_config &config); + + void init_pasha2(); + +private: /* memory pointers */ required_shared_ptr m_wram; required_shared_ptr m_paletteram; @@ -127,7 +132,6 @@ public: DECLARE_WRITE16_MEMBER(pasha2_lamps_w); DECLARE_READ16_MEMBER(pasha2_speedup_r); template DECLARE_WRITE16_MEMBER(oki_bank_w); - void init_pasha2(); virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; @@ -136,7 +140,6 @@ public: required_device m_audiocpu; required_device_array m_oki; required_device m_palette; - void pasha2(machine_config &config); void pasha2_io(address_map &map); void pasha2_map(address_map &map); }; diff --git a/src/mame/drivers/paso1600.cpp b/src/mame/drivers/paso1600.cpp index c3e00e1b1c0..67014814078 100644 --- a/src/mame/drivers/paso1600.cpp +++ b/src/mame/drivers/paso1600.cpp @@ -37,6 +37,9 @@ public: { } + void paso1600(machine_config &config); + +private: DECLARE_READ8_MEMBER(paso1600_pcg_r); DECLARE_WRITE8_MEMBER(paso1600_pcg_w); DECLARE_WRITE8_MEMBER(paso1600_6845_address_w); @@ -50,14 +53,13 @@ public: DECLARE_WRITE8_MEMBER(pc_dma_write_byte); uint32_t screen_update_paso1600(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void paso1600(machine_config &config); void paso1600_io(address_map &map); void paso1600_map(address_map &map); -private: - uint8_t m_crtc_vreg[0x100],m_crtc_index; - struct{ + + uint8_t m_crtc_vreg[0x100], m_crtc_index; + struct { uint8_t portb; - }m_keyb; + } m_keyb; virtual void machine_start() override; virtual void machine_reset() override; required_device m_maincpu; diff --git a/src/mame/drivers/pasogo.cpp b/src/mame/drivers/pasogo.cpp index 344efe4f146..85f53a33cb8 100644 --- a/src/mame/drivers/pasogo.cpp +++ b/src/mame/drivers/pasogo.cpp @@ -130,6 +130,11 @@ public: , m_palette(*this, "palette") { } + void pasogo(machine_config &config); + + DECLARE_INPUT_CHANGED_MEMBER(contrast); + +private: required_device m_maincpu; required_device m_cart; required_device m_ems; @@ -170,12 +175,10 @@ public: uint32_t screen_update_pasogo(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); INTERRUPT_GEN_MEMBER(pasogo_interrupt); TIMER_DEVICE_CALLBACK_MEMBER(vg230_timer); - DECLARE_INPUT_CHANGED_MEMBER(contrast); memory_region *m_cart_rom; uint8_t m_ems_index; uint16_t m_ems_bank[28]; - void pasogo(machine_config &config); void emsbank_map(address_map &map); void pasogo_io(address_map &map); void pasogo_mem(address_map &map); diff --git a/src/mame/drivers/pasopia.cpp b/src/mame/drivers/pasopia.cpp index 9eee63870ee..4876283539c 100644 --- a/src/mame/drivers/pasopia.cpp +++ b/src/mame/drivers/pasopia.cpp @@ -40,6 +40,11 @@ public: , m_keyboard(*this, "KEY.%u", 0) { } + void pasopia(machine_config &config); + + void init_pasopia(); + +private: DECLARE_WRITE8_MEMBER(pasopia_ctrl_w); DECLARE_WRITE8_MEMBER(vram_addr_lo_w); DECLARE_WRITE8_MEMBER(vram_latch_w); @@ -51,13 +56,11 @@ public: DECLARE_READ8_MEMBER(keyb_r); DECLARE_WRITE8_MEMBER(mux_w); MC6845_UPDATE_ROW(crtc_update_row); - void init_pasopia(); TIMER_CALLBACK_MEMBER(pio_timer); - void pasopia(machine_config &config); void pasopia_io(address_map &map); void pasopia_map(address_map &map); -private: + uint8_t m_hblank; uint16_t m_vram_addr; uint8_t m_vram_latch; diff --git a/src/mame/drivers/pasopia7.cpp b/src/mame/drivers/pasopia7.cpp index c9f61791a1e..93be2a209ff 100644 --- a/src/mame/drivers/pasopia7.cpp +++ b/src/mame/drivers/pasopia7.cpp @@ -59,6 +59,14 @@ public: , m_keyboard(*this, "KEY.%u", 0) { } + void p7_base(machine_config &config); + void p7_lcd(machine_config &config); + void p7_raster(machine_config &config); + + void init_p7_lcd(); + void init_p7_raster(); + +private: DECLARE_READ8_MEMBER(vram_r); DECLARE_WRITE8_MEMBER(vram_w); DECLARE_WRITE8_MEMBER(pasopia7_memory_ctrl_w); @@ -84,18 +92,13 @@ public: DECLARE_READ8_MEMBER(nmi_porta_r); DECLARE_READ8_MEMBER(nmi_portb_r); TIMER_CALLBACK_MEMBER(pio_timer); - void init_p7_lcd(); - void init_p7_raster(); DECLARE_VIDEO_START(pasopia7); DECLARE_PALETTE_INIT(p7_lcd); uint32_t screen_update_pasopia7(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void p7_base(machine_config &config); - void p7_lcd(machine_config &config); - void p7_raster(machine_config &config); void pasopia7_io(address_map &map); void pasopia7_mem(address_map &map); -private: + uint8_t m_vram_sel; uint8_t m_mio_sel; std::unique_ptr m_p7_pal; diff --git a/src/mame/drivers/patapata.cpp b/src/mame/drivers/patapata.cpp index 8618f8d3a83..abd03e00832 100644 --- a/src/mame/drivers/patapata.cpp +++ b/src/mame/drivers/patapata.cpp @@ -43,7 +43,7 @@ public: void patapata(machine_config &config); -protected: +private: DECLARE_WRITE16_MEMBER(bg_videoram_w); DECLARE_WRITE16_MEMBER(fg_videoram_w); DECLARE_WRITE8_MEMBER(flipscreen_w); @@ -55,7 +55,6 @@ protected: void main_map(address_map &map); virtual void video_start() override; -private: /* memory pointers */ required_shared_ptr m_bg_videoram; required_shared_ptr m_fg_videoram; diff --git a/src/mame/drivers/pb1000.cpp b/src/mame/drivers/pb1000.cpp index 8dc7121a56f..3a4064ceb66 100644 --- a/src/mame/drivers/pb1000.cpp +++ b/src/mame/drivers/pb1000.cpp @@ -47,6 +47,10 @@ public: m_card2(*this, "cardslot2") { } + void pb2000c(machine_config &config); + void pb1000(machine_config &config); + +private: required_device m_maincpu; required_device m_beeper; required_device m_hd44352; @@ -75,8 +79,6 @@ public: uint16_t read_touchscreen(uint8_t line); DECLARE_PALETTE_INIT(pb1000); TIMER_CALLBACK_MEMBER(keyboard_timer); - void pb2000c(machine_config &config); - void pb1000(machine_config &config); void pb1000_mem(address_map &map); void pb2000c_mem(address_map &map); }; diff --git a/src/mame/drivers/pc.cpp b/src/mame/drivers/pc.cpp index 5e407d1e7cf..73deb1e90c3 100644 --- a/src/mame/drivers/pc.cpp +++ b/src/mame/drivers/pc.cpp @@ -362,20 +362,6 @@ public: m_maincpu(*this, "maincpu") { } - required_device m_maincpu; - - DECLARE_READ8_MEMBER(unk_r); - - void init_bondwell(); - - DECLARE_INPUT_CHANGED_MEMBER(pc_turbo_callback); - - double m_turbo_off_speed; - - static void cfg_dual_720K(device_t *device); - static void cfg_single_360K(device_t *device); - static void cfg_single_720K(device_t *device); - void ataripc1(machine_config &config); void ncrpc4i(machine_config &config); void kaypro16(machine_config &config); @@ -395,6 +381,22 @@ public: void eagle1600(machine_config &config); void laser_turbo_xt(machine_config &config); void ibm5550(machine_config &config); + + void init_bondwell(); + + DECLARE_INPUT_CHANGED_MEMBER(pc_turbo_callback); + +private: + required_device m_maincpu; + + DECLARE_READ8_MEMBER(unk_r); + + double m_turbo_off_speed; + + static void cfg_dual_720K(device_t *device); + static void cfg_single_360K(device_t *device); + static void cfg_single_720K(device_t *device); + void epc_io(address_map &map); void ibm5550_io(address_map &map); void pc16_io(address_map &map); diff --git a/src/mame/drivers/pc1500.cpp b/src/mame/drivers/pc1500.cpp index e3b4549d955..8b5da041bb6 100644 --- a/src/mame/drivers/pc1500.cpp +++ b/src/mame/drivers/pc1500.cpp @@ -35,6 +35,9 @@ public: { } + void pc1500(machine_config &config); + +private: required_device m_maincpu; required_device m_rtc; @@ -54,7 +57,6 @@ public: DECLARE_READ8_MEMBER( pc1500_kb_r ); DECLARE_PALETTE_INIT(pc1500); - void pc1500(machine_config &config); void pc1500_mem(address_map &map); void pc1500_mem_io(address_map &map); }; diff --git a/src/mame/drivers/pcat_dyn.cpp b/src/mame/drivers/pcat_dyn.cpp index 977ddbf93fc..5a097882539 100644 --- a/src/mame/drivers/pcat_dyn.cpp +++ b/src/mame/drivers/pcat_dyn.cpp @@ -49,6 +49,9 @@ public: , m_nvram_bank(*this, "nvram_bank") , m_nvram_mem(0x2000){ } + void pcat_dyn(machine_config &config); + +private: required_device m_isabus; required_memory_bank m_prgbank; required_memory_bank m_nvram_bank; @@ -60,7 +63,6 @@ public: virtual void machine_start() override; void nvram_init(nvram_device &nvram, void *base, size_t size); static void pcat_dyn_sb_conf(device_t *device); - void pcat_dyn(machine_config &config); void pcat_io(address_map &map); void pcat_map(address_map &map); }; diff --git a/src/mame/drivers/pcat_nit.cpp b/src/mame/drivers/pcat_nit.cpp index 446856f5d93..6b3731e8c6e 100644 --- a/src/mame/drivers/pcat_nit.cpp +++ b/src/mame/drivers/pcat_nit.cpp @@ -99,16 +99,19 @@ public: m_uart(*this, "ns16450_0"), m_microtouch(*this, "microtouch") { } + void bonanza(machine_config &config); + void pcat_nit(machine_config &config); + + void init_pcat_nit(); + +private: std::unique_ptr m_banked_nvram; required_device m_uart; required_device m_microtouch; DECLARE_WRITE8_MEMBER(pcat_nit_rombank_w); DECLARE_READ8_MEMBER(pcat_nit_io_r); - void init_pcat_nit(); virtual void machine_start() override; - void bonanza(machine_config &config); - void pcat_nit(machine_config &config); void bonanza_io_map(address_map &map); void bonanza_map(address_map &map); void pcat_map(address_map &map); diff --git a/src/mame/drivers/pcd.cpp b/src/mame/drivers/pcd.cpp index a39509c3107..f32bdfc5de2 100644 --- a/src/mame/drivers/pcd.cpp +++ b/src/mame/drivers/pcd.cpp @@ -51,6 +51,10 @@ public: , m_req_hack(nullptr) { } + void pcx(machine_config &config); + void pcd(machine_config &config); + +private: DECLARE_READ8_MEMBER( irq_callback ); TIMER_DEVICE_CALLBACK_MEMBER( timer0_tick ); DECLARE_WRITE_LINE_MEMBER( i186_timer1_w ); @@ -80,18 +84,15 @@ public: DECLARE_WRITE_LINE_MEMBER(write_scsi_msg); DECLARE_WRITE_LINE_MEMBER(write_scsi_req); - void pcx(machine_config &config); - void pcd(machine_config &config); void pcd_io(address_map &map); void pcd_map(address_map &map); void pcx_io(address_map &map); -protected: + // driver_device overrides virtual void machine_start() override; virtual void machine_reset() override; virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; -private: required_device m_maincpu; required_device m_pic1; required_device m_pic2; diff --git a/src/mame/drivers/pce220.cpp b/src/mame/drivers/pce220.cpp index de99259234d..f239405088d 100644 --- a/src/mame/drivers/pce220.cpp +++ b/src/mame/drivers/pce220.cpp @@ -55,6 +55,16 @@ public: m_serial(*this, PCE220SERIAL_TAG) { } + void pce220(machine_config &config); + + DECLARE_INPUT_CHANGED_MEMBER(kb_irq); + DECLARE_INPUT_CHANGED_MEMBER(on_irq); + + TIMER_DEVICE_CALLBACK_MEMBER(pce220_timer_callback); + + DECLARE_PALETTE_INIT(pce220); + +protected: required_device m_maincpu; required_device m_ram; required_device m_beep; @@ -100,11 +110,7 @@ public: DECLARE_READ8_MEMBER( irq_status_r ); DECLARE_WRITE8_MEMBER( irq_ack_w ); DECLARE_WRITE8_MEMBER( irq_mask_w ); - DECLARE_PALETTE_INIT(pce220); - DECLARE_INPUT_CHANGED_MEMBER(kb_irq); - DECLARE_INPUT_CHANGED_MEMBER(on_irq); - TIMER_DEVICE_CALLBACK_MEMBER(pce220_timer_callback); - void pce220(machine_config &config); + void pce220_io(address_map &map); void pce220_mem(address_map &map); }; @@ -116,6 +122,10 @@ public: : pce220_state(mconfig, type, tag) { } + void pcg850v(machine_config &config); + void pcg815(machine_config &config); + +private: uint8_t m_g850v_bank_num; uint8_t m_lcd_effects; uint8_t m_lcd_contrast; @@ -130,8 +140,6 @@ public: DECLARE_WRITE8_MEMBER( g850v_lcd_control_w ); DECLARE_READ8_MEMBER( g850v_lcd_data_r ); DECLARE_WRITE8_MEMBER( g850v_lcd_data_w ); - void pcg850v(machine_config &config); - void pcg815(machine_config &config); void pcg850v_io(address_map &map); }; diff --git a/src/mame/drivers/pcfx.cpp b/src/mame/drivers/pcfx.cpp index 72f9884bc66..53ea9668e5e 100644 --- a/src/mame/drivers/pcfx.cpp +++ b/src/mame/drivers/pcfx.cpp @@ -20,16 +20,18 @@ class pcfx_state : public driver_device { public: - enum - { - TIMER_PAD_FUNC - }; - pcfx_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag), m_maincpu(*this, "maincpu"), m_huc6261(*this, "huc6261") { } + void pcfx(machine_config &config); + +private: + enum + { + TIMER_PAD_FUNC + }; uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); DECLARE_READ16_MEMBER( irq_read ); @@ -49,15 +51,13 @@ public: DECLARE_WRITE_LINE_MEMBER( irq15_w ); TIMER_CALLBACK_MEMBER(pad_func); - void pcfx(machine_config &config); void pcfx_io(address_map &map); void pcfx_mem(address_map &map); -protected: + virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; virtual void machine_reset() override; -private: // Interrupt controller (component unknown) uint16_t m_irq_mask; uint16_t m_irq_pending; diff --git a/src/mame/drivers/pcipc.cpp b/src/mame/drivers/pcipc.cpp index 047f5e041ca..6da14b8b11b 100644 --- a/src/mame/drivers/pcipc.cpp +++ b/src/mame/drivers/pcipc.cpp @@ -40,19 +40,19 @@ public: static const boot_state_info boot_state_infos_phoenix_ver40_rev6[]; static const boot_state_info boot_state_infos_award[]; + void pcipc(machine_config &config); + void pcipctx(machine_config &config); + + pcipc_state(const machine_config &mconfig, device_type type, const char *tag); + +private: DECLARE_WRITE8_MEMBER(boot_state_phoenix_w); DECLARE_WRITE8_MEMBER(boot_state_phoenix_ver40_rev6_w); DECLARE_WRITE8_MEMBER(boot_state_award_w); - pcipc_state(const machine_config &mconfig, device_type type, const char *tag); - virtual void machine_start() override; virtual void machine_reset() override; - - void pcipc(machine_config &config); - void pcipctx(machine_config &config); - static void superio_config(device_t *device); }; diff --git a/src/mame/drivers/pcm.cpp b/src/mame/drivers/pcm.cpp index d37b5ec5000..881cbc481ee 100644 --- a/src/mame/drivers/pcm.cpp +++ b/src/mame/drivers/pcm.cpp @@ -84,15 +84,17 @@ public: { } + void pcm(machine_config &config); + +private: DECLARE_READ8_MEMBER( pcm_85_r ); DECLARE_WRITE_LINE_MEMBER( pcm_82_w ); DECLARE_WRITE8_MEMBER( pcm_85_w ); uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void pcm(machine_config &config); void pcm_io(address_map &map); void pcm_mem(address_map &map); -private: + bool m_cone; uint8_t m_85; virtual void machine_reset() override; diff --git a/src/mame/drivers/pcxt.cpp b/src/mame/drivers/pcxt.cpp index 0e6816742d0..bdd66376e4f 100644 --- a/src/mame/drivers/pcxt.cpp +++ b/src/mame/drivers/pcxt.cpp @@ -72,6 +72,10 @@ public: m_mb(*this, "mb"), m_bank(*this, "bank"){ } + void tetriskr(machine_config &config); + void filetto(machine_config &config); + +private: int m_lastvalue; uint8_t m_disk_data[2]; uint8_t m_port_b_data; @@ -93,8 +97,6 @@ public: required_device m_maincpu; required_device m_mb; optional_device m_bank; - void tetriskr(machine_config &config); - void filetto(machine_config &config); void bank_map(address_map &map); void filetto_io(address_map &map); void filetto_map(address_map &map); diff --git a/src/mame/drivers/pda600.cpp b/src/mame/drivers/pda600.cpp index a11766f6269..9e2dfdd47a6 100644 --- a/src/mame/drivers/pda600.cpp +++ b/src/mame/drivers/pda600.cpp @@ -72,6 +72,9 @@ public: m_maincpu(*this, "maincpu") {} + void pda600(machine_config &config); + +private: required_device m_maincpu; virtual void video_start() override; @@ -79,7 +82,6 @@ public: uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint8_t * m_video_ram; - void pda600(machine_config &config); void pda600_io(address_map &map); void pda600_mem(address_map &map); }; diff --git a/src/mame/drivers/pdp11.cpp b/src/mame/drivers/pdp11.cpp index 8072c8a4d6f..eafd2ac61c8 100644 --- a/src/mame/drivers/pdp11.cpp +++ b/src/mame/drivers/pdp11.cpp @@ -105,6 +105,11 @@ public: { } + void pdp11ub2(machine_config &config); + void pdp11(machine_config &config); + void pdp11qb(machine_config &config); + +private: required_device m_maincpu; required_device m_terminal; DECLARE_READ16_MEMBER( teletype_ctrl_r ); @@ -116,9 +121,6 @@ public: DECLARE_MACHINE_RESET(pdp11ub2); DECLARE_MACHINE_RESET(pdp11qb); void load9312prom(uint8_t *desc, uint8_t *src, int size); - void pdp11ub2(machine_config &config); - void pdp11(machine_config &config); - void pdp11qb(machine_config &config); void pdp11_mem(address_map &map); void pdp11qb_mem(address_map &map); }; diff --git a/src/mame/drivers/pegasus.cpp b/src/mame/drivers/pegasus.cpp index 35b3fbf3548..bd99881025d 100644 --- a/src/mame/drivers/pegasus.cpp +++ b/src/mame/drivers/pegasus.cpp @@ -71,6 +71,12 @@ public: , m_io_keyboard(*this, "KEY.%u", 0) { } + void pegasusm(machine_config &config); + void pegasus(machine_config &config); + + void init_pegasus(); + +private: DECLARE_READ8_MEMBER(pegasus_keyboard_r); DECLARE_READ8_MEMBER(pegasus_protection_r); DECLARE_READ8_MEMBER(pegasus_pcg_r); @@ -82,7 +88,6 @@ public: DECLARE_WRITE_LINE_MEMBER(pegasus_cassette_w); DECLARE_WRITE_LINE_MEMBER(pegasus_firq_clr); uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void init_pegasus(); TIMER_DEVICE_CALLBACK_MEMBER(pegasus_firq); image_init_result load_cart(device_image_interface &image, generic_slot_device *slot, const char *reg_tag); DECLARE_DEVICE_IMAGE_LOAD_MEMBER(exp00_load) { return load_cart(image, m_exp_00, "0000"); } @@ -91,11 +96,9 @@ public: DECLARE_DEVICE_IMAGE_LOAD_MEMBER(exp0c_load) { return load_cart(image, m_exp_0c, "c000"); } DECLARE_DEVICE_IMAGE_LOAD_MEMBER(exp0d_load) { return load_cart(image, m_exp_0d, "d000"); } - void pegasusm(machine_config &config); - void pegasus(machine_config &config); void pegasus_mem(address_map &map); void pegasusm_mem(address_map &map); -private: + uint8_t m_kbd_row; bool m_kbd_irq; uint8_t m_control_bits; diff --git a/src/mame/drivers/pencil2.cpp b/src/mame/drivers/pencil2.cpp index a06027b08b0..0132c195063 100644 --- a/src/mame/drivers/pencil2.cpp +++ b/src/mame/drivers/pencil2.cpp @@ -106,6 +106,12 @@ public: , m_cart(*this, "cartslot") {} + void pencil2(machine_config &config); + + DECLARE_CUSTOM_INPUT_MEMBER(printer_ready_r); + DECLARE_CUSTOM_INPUT_MEMBER(printer_ack_r); + +private: DECLARE_WRITE8_MEMBER(port10_w); DECLARE_WRITE8_MEMBER(port30_w); DECLARE_WRITE8_MEMBER(port80_w); @@ -113,12 +119,9 @@ public: DECLARE_READ8_MEMBER(porte2_r); DECLARE_WRITE_LINE_MEMBER(write_centronics_ack); DECLARE_WRITE_LINE_MEMBER(write_centronics_busy); - DECLARE_CUSTOM_INPUT_MEMBER(printer_ready_r); - DECLARE_CUSTOM_INPUT_MEMBER(printer_ack_r); - void pencil2(machine_config &config); void io_map(address_map &map); void mem_map(address_map &map); -private: + virtual void machine_start() override; int m_centronics_busy; int m_centronics_ack; diff --git a/src/mame/drivers/pengadvb.cpp b/src/mame/drivers/pengadvb.cpp index aa674996361..51c6b9a3d3e 100644 --- a/src/mame/drivers/pengadvb.cpp +++ b/src/mame/drivers/pengadvb.cpp @@ -49,10 +49,11 @@ public: , m_bank(*this, "bank%u", 0U) { } - void init_pengadvb(); void pengadvb(machine_config &config); -protected: + void init_pengadvb(); + +private: DECLARE_READ8_MEMBER(mem_r); DECLARE_WRITE8_MEMBER(mem_w); DECLARE_WRITE8_MEMBER(megarom_bank_w); @@ -70,7 +71,6 @@ protected: void io_mem(address_map &map); void program_mem(address_map &map); -private: required_device m_maincpu; required_device_array m_page; required_memory_bank_array<4> m_bank; diff --git a/src/mame/drivers/pengo.cpp b/src/mame/drivers/pengo.cpp index 12c5cb9d6d9..25aee2a29f1 100644 --- a/src/mame/drivers/pengo.cpp +++ b/src/mame/drivers/pengo.cpp @@ -77,18 +77,23 @@ class pengo_state : public pacman_state { public: pengo_state(const machine_config &mconfig, device_type type, const char *tag) - : pacman_state(mconfig, type, tag), m_decrypted_opcodes(*this, "decrypted_opcodes") { } + : pacman_state(mconfig, type, tag), m_decrypted_opcodes(*this, "decrypted_opcodes") + { } + + void jrpacmbl(machine_config &config); + void pengoe(machine_config &config); + void pengou(machine_config &config); + void pengo(machine_config &config); + + void init_penta(); + +private: DECLARE_WRITE_LINE_MEMBER(coin_counter_1_w); DECLARE_WRITE_LINE_MEMBER(coin_counter_2_w); DECLARE_WRITE_LINE_MEMBER(irq_mask_w); - void init_penta(); DECLARE_WRITE_LINE_MEMBER(vblank_irq); optional_shared_ptr m_decrypted_opcodes; - void jrpacmbl(machine_config &config); - void pengoe(machine_config &config); - void pengou(machine_config &config); - void pengo(machine_config &config); void decrypted_opcodes_map(address_map &map); void jrpacmbl_map(address_map &map); void pengo_map(address_map &map); diff --git a/src/mame/drivers/pentagon.cpp b/src/mame/drivers/pentagon.cpp index 91d16681e9a..39b10ae9adb 100644 --- a/src/mame/drivers/pentagon.cpp +++ b/src/mame/drivers/pentagon.cpp @@ -17,11 +17,6 @@ class pentagon_state : public spectrum_state { public: - enum - { - TIMER_IRQ_ON, - TIMER_IRQ_OFF - }; pentagon_state(const machine_config &mconfig, device_type type, const char *tag) : spectrum_state(mconfig, type, tag) , m_bank1(*this, "bank1") @@ -31,6 +26,16 @@ public: , m_beta(*this, BETA_DISK_TAG) { } + void pent1024(machine_config &config); + void pentagon(machine_config &config); + +private: + enum + { + TIMER_IRQ_ON, + TIMER_IRQ_OFF + }; + DECLARE_WRITE8_MEMBER(pentagon_port_7ffd_w); DECLARE_WRITE8_MEMBER(pentagon_scr_w); DECLARE_WRITE8_MEMBER(pentagon_scr2_w); @@ -42,19 +47,17 @@ public: INTERRUPT_GEN_MEMBER(pentagon_interrupt); TIMER_CALLBACK_MEMBER(irq_on); TIMER_CALLBACK_MEMBER(irq_off); - void pent1024(machine_config &config); - void pentagon(machine_config &config); void pentagon_io(address_map &map); void pentagon_mem(address_map &map); void pentagon_switch(address_map &map); -protected: + required_memory_bank m_bank1; required_memory_bank m_bank2; required_memory_bank m_bank3; required_memory_bank m_bank4; required_device m_beta; virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; -private: + address_space *m_program; uint8_t *m_p_ram; void pentagon_update_memory(); diff --git a/src/mame/drivers/peoplepc.cpp b/src/mame/drivers/peoplepc.cpp index bee3e9eef3b..073f2c4205e 100644 --- a/src/mame/drivers/peoplepc.cpp +++ b/src/mame/drivers/peoplepc.cpp @@ -34,6 +34,10 @@ public: m_cvram(*this, "cvram"), m_charram(4*1024) { } + + void olypeopl(machine_config &config); + +private: required_device m_maincpu; required_device m_palette; required_device m_pic_1; @@ -63,10 +67,9 @@ public: void floppy_unload(floppy_image_device *dev); uint8_t m_dma0pg; - void olypeopl(machine_config &config); void peoplepc_io(address_map &map); void peoplepc_map(address_map &map); -protected: + virtual void machine_start() override; virtual void machine_reset() override; }; diff --git a/src/mame/drivers/peplus.cpp b/src/mame/drivers/peplus.cpp index 8ed49fda5a6..9bd4e6a9cdc 100644 --- a/src/mame/drivers/peplus.cpp +++ b/src/mame/drivers/peplus.cpp @@ -218,11 +218,6 @@ A Note about Best Bet Products. class peplus_state : public driver_device { public: - enum - { - TIMER_ASSERT_LP - }; - peplus_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag), m_maincpu(*this, "maincpu"), @@ -251,6 +246,22 @@ public: { } + void peplus(machine_config &config); + + void init_nonplus(); + void init_peplus(); + void init_peplussb(); + void init_pepluss64(); + void init_peplussbw(); + + DECLARE_CUSTOM_INPUT_MEMBER(peplus_input_r); + +private: + enum + { + TIMER_ASSERT_LP + }; + required_device m_maincpu; required_device m_crtc; required_device m_i2cmem; @@ -320,17 +331,11 @@ public: DECLARE_READ8_MEMBER(peplus_bgcolor_r); DECLARE_READ8_MEMBER(peplus_dropdoor_r); DECLARE_READ8_MEMBER(peplus_watchdog_r); - DECLARE_CUSTOM_INPUT_MEMBER(peplus_input_r); DECLARE_WRITE8_MEMBER(peplus_crtc_mode_w); DECLARE_WRITE_LINE_MEMBER(crtc_vsync); DECLARE_WRITE8_MEMBER(i2c_nvram_w); DECLARE_READ8_MEMBER(peplus_input_bank_a_r); DECLARE_READ8_MEMBER(peplus_input0_r); - void init_nonplus(); - void init_peplus(); - void init_peplussb(); - void init_pepluss64(); - void init_peplussbw(); TILE_GET_INFO_MEMBER(get_bg_tile_info); MC6845_ON_UPDATE_ADDR_CHANGED(crtc_addr); virtual void machine_reset() override; @@ -340,10 +345,9 @@ public: DECLARE_PALETTE_INIT(peplus); void handle_lightpen(); - void peplus(machine_config &config); void peplus_iomap(address_map &map); void peplus_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/drivers/perq.cpp b/src/mame/drivers/perq.cpp index 3de5a28fdf0..c067da028b7 100644 --- a/src/mame/drivers/perq.cpp +++ b/src/mame/drivers/perq.cpp @@ -18,12 +18,12 @@ class perq_state : public driver_device public: perq_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag) -// , m_maincpu(*this, "maincpu") + // , m_maincpu(*this, "maincpu") { } -void perq(machine_config &config); + void perq(machine_config &config); private: -// required_device m_maincpu; + // required_device m_maincpu; }; static INPUT_PORTS_START( perq ) diff --git a/src/mame/drivers/pet.cpp b/src/mame/drivers/pet.cpp index a57f80fc845..e0af100d5d2 100644 --- a/src/mame/drivers/pet.cpp +++ b/src/mame/drivers/pet.cpp @@ -222,6 +222,61 @@ public: m_user_diag(1) { } + void _4k(machine_config &config); + void _8k(machine_config &config); + void _16k(machine_config &config); + void _32k(machine_config &config); + void pet(machine_config &config); + void pet2001n(machine_config &config); + void pet2001n8(machine_config &config); + void cbm3032(machine_config &config); + void pet20018(machine_config &config); + void pet2001n16(machine_config &config); + void cbm3016(machine_config &config); + void cbm3000(machine_config &config); + void cbm4000(machine_config &config); + void cbm4032f(machine_config &config); + void cbm4032(machine_config &config); + void cbm4016(machine_config &config); + void cbm3008(machine_config &config); + void pet2001(machine_config &config); + void pet2001n32(machine_config &config); + + DECLARE_READ8_MEMBER( read ); + DECLARE_WRITE8_MEMBER( write ); + + DECLARE_WRITE_LINE_MEMBER( via_irq_w ); + DECLARE_WRITE8_MEMBER( via_pa_w ); + DECLARE_READ8_MEMBER( via_pb_r ); + DECLARE_WRITE8_MEMBER( via_pb_w ); + DECLARE_WRITE_LINE_MEMBER( via_ca2_w ); + DECLARE_WRITE_LINE_MEMBER( via_cb2_w ); + + DECLARE_WRITE_LINE_MEMBER( pia1_irqa_w ); + DECLARE_WRITE_LINE_MEMBER( pia1_irqb_w ); + DECLARE_READ8_MEMBER( pia1_pa_r ); + DECLARE_READ8_MEMBER( pia1_pb_r ); + DECLARE_WRITE8_MEMBER( pia1_pa_w ); + DECLARE_WRITE_LINE_MEMBER( pia1_ca2_w ); + + DECLARE_WRITE_LINE_MEMBER( pia2_irqa_w ); + DECLARE_WRITE_LINE_MEMBER( pia2_irqb_w ); + + DECLARE_WRITE_LINE_MEMBER( user_diag_w ); + + MC6845_BEGIN_UPDATE( pet_begin_update ); + MC6845_UPDATE_ROW( pet40_update_row ); + + TIMER_DEVICE_CALLBACK_MEMBER( sync_tick ); + + DECLARE_QUICKLOAD_LOAD_MEMBER( cbm_pet ); + + uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); + + DECLARE_MACHINE_START( pet40 ); + DECLARE_MACHINE_RESET( pet40 ); + +protected: required_device m_maincpu; required_device m_via; required_device m_pia1; @@ -247,43 +302,11 @@ public: DECLARE_MACHINE_START( pet ); DECLARE_MACHINE_START( pet2001 ); DECLARE_MACHINE_RESET( pet ); - DECLARE_MACHINE_START( pet40 ); - DECLARE_MACHINE_RESET( pet40 ); - MC6845_BEGIN_UPDATE( pet_begin_update ); - MC6845_UPDATE_ROW( pet40_update_row ); - - uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); void check_interrupts(); void update_speaker(); - DECLARE_READ8_MEMBER( read ); - DECLARE_WRITE8_MEMBER( write ); - - DECLARE_WRITE_LINE_MEMBER( via_irq_w ); - DECLARE_WRITE8_MEMBER( via_pa_w ); - DECLARE_READ8_MEMBER( via_pb_r ); - DECLARE_WRITE8_MEMBER( via_pb_w ); - DECLARE_WRITE_LINE_MEMBER( via_ca2_w ); - DECLARE_WRITE_LINE_MEMBER( via_cb2_w ); - - DECLARE_WRITE_LINE_MEMBER( pia1_irqa_w ); - DECLARE_WRITE_LINE_MEMBER( pia1_irqb_w ); - DECLARE_READ8_MEMBER( pia1_pa_r ); - DECLARE_READ8_MEMBER( pia1_pb_r ); - DECLARE_WRITE8_MEMBER( pia1_pa_w ); - DECLARE_WRITE_LINE_MEMBER( pia1_ca2_w ); - - DECLARE_WRITE_LINE_MEMBER( pia2_irqa_w ); - DECLARE_WRITE_LINE_MEMBER( pia2_irqb_w ); - - DECLARE_WRITE_LINE_MEMBER( user_diag_w ); - - TIMER_DEVICE_CALLBACK_MEMBER( sync_tick ); - - DECLARE_QUICKLOAD_LOAD_MEMBER( cbm_pet ); - enum { SEL0 = 0, @@ -327,25 +350,6 @@ public: int m_pia2b_irq; int m_exp_irq; int m_user_diag; - void _4k(machine_config &config); - void _8k(machine_config &config); - void _16k(machine_config &config); - void _32k(machine_config &config); - void pet(machine_config &config); - void pet2001n(machine_config &config); - void pet2001n8(machine_config &config); - void cbm3032(machine_config &config); - void pet20018(machine_config &config); - void pet2001n16(machine_config &config); - void cbm3016(machine_config &config); - void cbm3000(machine_config &config); - void cbm4000(machine_config &config); - void cbm4032f(machine_config &config); - void cbm4032(machine_config &config); - void cbm4016(machine_config &config); - void cbm3008(machine_config &config); - void pet2001(machine_config &config); - void pet2001n32(machine_config &config); void pet2001_mem(address_map &map); }; @@ -357,7 +361,6 @@ public: pet_state(mconfig, type, tag) { } - DECLARE_READ8_MEMBER( pia1_pb_r ); void pet2001b(machine_config &config); void pet2001b32(machine_config &config); void pet4000(machine_config &config); @@ -372,6 +375,10 @@ public: void cbm4032b(machine_config &config); void pet2001b8(machine_config &config); void pet4016(machine_config &config); + +protected: + DECLARE_READ8_MEMBER( pia1_pb_r ); + }; @@ -382,13 +389,16 @@ public: pet2001b_state(mconfig, type, tag) { } + void pet80(machine_config &config); + void pet8032(machine_config &config); + DECLARE_MACHINE_START( pet80 ); DECLARE_MACHINE_RESET( pet80 ); - MC6845_UPDATE_ROW( pet80_update_row ); MC6845_UPDATE_ROW( cbm8296_update_row ); - void pet80(machine_config &config); - void pet8032(machine_config &config); + +protected: + MC6845_UPDATE_ROW( pet80_update_row ); }; @@ -425,6 +435,10 @@ public: m_pla2(*this, PLA2_TAG) { } + void cbm8296d(machine_config &config); + void cbm8296(machine_config &config); + +private: required_memory_region m_basic_rom; required_memory_region m_editor_rom; required_memory_region m_ue5_rom; @@ -447,8 +461,6 @@ public: DECLARE_WRITE8_MEMBER( write ); uint8_t m_cr; - void cbm8296d(machine_config &config); - void cbm8296(machine_config &config); void cbm8296_mem(address_map &map); }; diff --git a/src/mame/drivers/peyper.cpp b/src/mame/drivers/peyper.cpp index e0626024c9a..26c326205dd 100644 --- a/src/mame/drivers/peyper.cpp +++ b/src/mame/drivers/peyper.cpp @@ -61,7 +61,7 @@ public: void peyper(machine_config &config); -protected: +private: DECLARE_READ8_MEMBER(sw_r); DECLARE_WRITE8_MEMBER(col_w); DECLARE_WRITE8_MEMBER(disp_w); @@ -79,7 +79,6 @@ protected: void peyper_io(address_map &map); void peyper_map(address_map &map); -private: uint8_t m_digit; uint8_t m_disp_layout[36]; required_device m_maincpu; diff --git a/src/mame/drivers/pg685.cpp b/src/mame/drivers/pg685.cpp index 31d373103a7..320d384025a 100644 --- a/src/mame/drivers/pg685.cpp +++ b/src/mame/drivers/pg685.cpp @@ -113,6 +113,13 @@ public: m_floppy1(*this, "fdc:1") { } + void pg685_backplane(machine_config &config); + void pg685_module(machine_config &config); + void pg685(machine_config &config); + void pg675(machine_config &config); + void pg685oua12(machine_config &config); + +private: MC6845_UPDATE_ROW(crtc_update_row); MC6845_UPDATE_ROW(crtc_update_row_oua12); @@ -130,15 +137,10 @@ public: DECLARE_WRITE_LINE_MEMBER(fdc_drq_w); DECLARE_WRITE_LINE_MEMBER(fdc_intrq_w); - void pg685_backplane(machine_config &config); - void pg685_module(machine_config &config); - void pg685(machine_config &config); - void pg675(machine_config &config); - void pg685oua12(machine_config &config); void pg675_mem(address_map &map); void pg685_mem(address_map &map); void pg685oua12_mem(address_map &map); -private: + virtual void machine_reset() override; virtual void video_start() override; required_device m_maincpu; diff --git a/src/mame/drivers/pgm3.cpp b/src/mame/drivers/pgm3.cpp index c9ccac3cbeb..4d3fa198943 100644 --- a/src/mame/drivers/pgm3.cpp +++ b/src/mame/drivers/pgm3.cpp @@ -60,15 +60,18 @@ public: : driver_device(mconfig, type, tag), m_maincpu(*this, "maincpu") { } + void pgm3(machine_config &config); + void init_kov3hd(); +private: + virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; uint32_t screen_update_pgm3(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); DECLARE_WRITE_LINE_MEMBER(screen_vblank_pgm3); required_device m_maincpu; - void pgm3(machine_config &config); void pgm3_map(address_map &map); }; diff --git a/src/mame/drivers/photon.cpp b/src/mame/drivers/photon.cpp index 4d1903b2f3d..007c00602b3 100644 --- a/src/mame/drivers/photon.cpp +++ b/src/mame/drivers/photon.cpp @@ -34,6 +34,9 @@ public: : pk8000_base_state(mconfig, type, tag), m_speaker(*this, "speaker") { } + void photon(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(_80_porta_w); DECLARE_READ8_MEMBER(_80_portb_r); DECLARE_WRITE8_MEMBER(_80_portc_w); @@ -48,7 +51,6 @@ public: void set_bank(uint8_t data); required_device m_speaker; - void photon(machine_config &config); void pk8000_io(address_map &map); void pk8000_mem(address_map &map); }; diff --git a/src/mame/drivers/photon2.cpp b/src/mame/drivers/photon2.cpp index 05b0043487d..e6bd36e206b 100644 --- a/src/mame/drivers/photon2.cpp +++ b/src/mame/drivers/photon2.cpp @@ -39,6 +39,9 @@ public: m_speaker(*this, "speaker"), m_spectrum_video_ram(*this, "spectrum_vram") { } + void photon2(machine_config &config); + +private: required_device m_maincpu; required_device m_speaker; @@ -62,7 +65,6 @@ public: DECLARE_WRITE_LINE_MEMBER(screen_vblank_spectrum); TIMER_DEVICE_CALLBACK_MEMBER(spec_interrupt_hack); - void photon2(machine_config &config); void spectrum_io(address_map &map); void spectrum_mem(address_map &map); }; diff --git a/src/mame/drivers/photoply.cpp b/src/mame/drivers/photoply.cpp index 8bb1d70bd0d..9b6d1968a3a 100644 --- a/src/mame/drivers/photoply.cpp +++ b/src/mame/drivers/photoply.cpp @@ -41,6 +41,9 @@ public: { } + void photoply(machine_config &config); + +private: required_device m_eeprom; required_region_ptr m_main_bios; @@ -54,11 +57,10 @@ public: DECLARE_WRITE8_MEMBER(eeprom_w); uint16_t m_pci_shadow_reg; - void photoply(machine_config &config); void photoply_io(address_map &map); void photoply_map(address_map &map); -protected: + virtual void machine_start() override; virtual void machine_reset() override; diff --git a/src/mame/drivers/phunsy.cpp b/src/mame/drivers/phunsy.cpp index b6c16538d9d..3a83660c4f9 100644 --- a/src/mame/drivers/phunsy.cpp +++ b/src/mame/drivers/phunsy.cpp @@ -53,7 +53,11 @@ public: { } + void phunsy(machine_config &config); + void init_phunsy(); + +private: DECLARE_READ8_MEMBER(phunsy_data_r); DECLARE_WRITE8_MEMBER(phunsy_ctrl_w); DECLARE_WRITE8_MEMBER(phunsy_data_w); @@ -64,11 +68,10 @@ public: DECLARE_PALETTE_INIT(phunsy); uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void phunsy(machine_config &config); void phunsy_data(address_map &map); void phunsy_io(address_map &map); void phunsy_mem(address_map &map); -private: + uint8_t m_data_out; uint8_t m_keyboard_input; virtual void machine_reset() override; diff --git a/src/mame/drivers/picno.cpp b/src/mame/drivers/picno.cpp index 2f548f822c4..497525bd842 100644 --- a/src/mame/drivers/picno.cpp +++ b/src/mame/drivers/picno.cpp @@ -42,9 +42,11 @@ public: { } void picno(machine_config &config); + +private: void io_map(address_map &map); void mem_map(address_map &map); -private: + required_device m_maincpu; }; diff --git a/src/mame/drivers/pinball2k.cpp b/src/mame/drivers/pinball2k.cpp index ae113efb91d..4976d872ab6 100644 --- a/src/mame/drivers/pinball2k.cpp +++ b/src/mame/drivers/pinball2k.cpp @@ -44,6 +44,12 @@ public: m_ramdac(*this, "ramdac"), m_palette(*this, "palette") { } + void mediagx(machine_config &config); + + void init_mediagx(); + void init_pinball2k(); + +private: required_shared_ptr m_main_ram; required_shared_ptr m_cga_ram; required_shared_ptr m_bios_ram; @@ -91,7 +97,7 @@ public: DECLARE_WRITE32_MEMBER(port400_w); DECLARE_READ32_MEMBER(port800_r); DECLARE_WRITE32_MEMBER(port800_w); - void init_pinball2k(); + virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; @@ -99,8 +105,6 @@ public: void draw_char(bitmap_rgb32 &bitmap, const rectangle &cliprect, gfx_element *gfx, int ch, int att, int x, int y); void draw_framebuffer(bitmap_rgb32 &bitmap, const rectangle &cliprect); void draw_cga(bitmap_rgb32 &bitmap, const rectangle &cliprect); - void init_mediagx(); - void mediagx(machine_config &config); void mediagx_io(address_map &map); void mediagx_map(address_map &map); void ramdac_map(address_map &map); diff --git a/src/mame/drivers/pipbug.cpp b/src/mame/drivers/pipbug.cpp index 4f88446c9b9..5cdc6e2b112 100644 --- a/src/mame/drivers/pipbug.cpp +++ b/src/mame/drivers/pipbug.cpp @@ -54,11 +54,13 @@ public: { } + void pipbug(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(pipbug_ctrl_w); required_device m_rs232; required_device m_maincpu; DECLARE_QUICKLOAD_LOAD_MEMBER( pipbug ); - void pipbug(machine_config &config); void pipbug_data(address_map &map); void pipbug_mem(address_map &map); }; diff --git a/src/mame/drivers/pipedrm.cpp b/src/mame/drivers/pipedrm.cpp index 7d7e6d51d59..fa6c553e5ed 100644 --- a/src/mame/drivers/pipedrm.cpp +++ b/src/mame/drivers/pipedrm.cpp @@ -180,17 +180,20 @@ public: m_soundlatch(*this, "soundlatch") { } + void pipedrm(machine_config &config); + void hatris(machine_config &config); + + void init_pipedrm(); + void init_hatris(); + +private: required_device m_soundlatch; DECLARE_MACHINE_START(pipedrm); DECLARE_MACHINE_RESET(pipedrm); - void init_pipedrm(); - void init_hatris(); DECLARE_WRITE8_MEMBER( pipedrm_bankswitch_w ); DECLARE_WRITE8_MEMBER( sound_bankswitch_w ); DECLARE_READ8_MEMBER( pending_command_r ); - void pipedrm(machine_config &config); - void hatris(machine_config &config); void hatris_sound_portmap(address_map &map); void main_map(address_map &map); void main_portmap(address_map &map); diff --git a/src/mame/drivers/pipeline.cpp b/src/mame/drivers/pipeline.cpp index aa422005c29..cf1bd9057b1 100644 --- a/src/mame/drivers/pipeline.cpp +++ b/src/mame/drivers/pipeline.cpp @@ -95,6 +95,9 @@ public: { } + void pipeline(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(vram2_w); DECLARE_WRITE8_MEMBER(vram1_w); DECLARE_WRITE8_MEMBER(mcu_portA_w); @@ -113,11 +116,10 @@ public: TIMER_CALLBACK_MEMBER(protection_deferred_w); - void pipeline(machine_config &config); void cpu0_mem(address_map &map); void cpu1_mem(address_map &map); void sound_port(address_map &map); -protected: + required_device m_maincpu; required_device m_mcu; required_device m_gfxdecode; diff --git a/src/mame/drivers/piratesh.cpp b/src/mame/drivers/piratesh.cpp index bc7e3f85f6d..df7940e6279 100644 --- a/src/mame/drivers/piratesh.cpp +++ b/src/mame/drivers/piratesh.cpp @@ -61,6 +61,12 @@ public: m_spriteram(*this,"spriteram") { } + void piratesh(machine_config &config); + + DECLARE_CUSTOM_INPUT_MEMBER(helm_r); + DECLARE_CUSTOM_INPUT_MEMBER(battery_r); + +private: required_device m_maincpu; required_device m_k053250; @@ -97,8 +103,6 @@ public: DECLARE_WRITE16_MEMBER(k053247_scattered_word_w); DECLARE_READ16_MEMBER(k053247_martchmp_word_r); DECLARE_WRITE16_MEMBER(k053247_martchmp_word_w); - DECLARE_CUSTOM_INPUT_MEMBER(helm_r); - DECLARE_CUSTOM_INPUT_MEMBER(battery_r); DECLARE_MACHINE_START(piratesh); DECLARE_MACHINE_RESET(piratesh); @@ -108,7 +112,6 @@ public: TIMER_DEVICE_CALLBACK_MEMBER(piratesh_interrupt); K056832_CB_MEMBER(piratesh_tile_callback); K055673_CB_MEMBER(piratesh_sprite_callback); - void piratesh(machine_config &config); void piratesh_map(address_map &map); }; diff --git a/src/mame/drivers/pitagjr.cpp b/src/mame/drivers/pitagjr.cpp index d5032488084..6eee08b3af8 100644 --- a/src/mame/drivers/pitagjr.cpp +++ b/src/mame/drivers/pitagjr.cpp @@ -167,13 +167,15 @@ public: , m_rombank(*this, "rombank") { } + void pitajr(machine_config &config); + +private: required_device m_maincpu; required_memory_bank m_rombank; virtual void machine_start() override; DECLARE_PALETTE_INIT(pitagjr); uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void pitajr(machine_config &config); void pitajr_mem(address_map &map); }; diff --git a/src/mame/drivers/pk8000.cpp b/src/mame/drivers/pk8000.cpp index 1bcb539e6c6..57bfe469c16 100644 --- a/src/mame/drivers/pk8000.cpp +++ b/src/mame/drivers/pk8000.cpp @@ -47,6 +47,9 @@ public: , m_keyboard(*this, "LINE%u", 0) { } + void pk8000(machine_config &config); + +private: uint8_t m_keyboard_line; DECLARE_READ8_MEMBER(joy_1_r); @@ -64,10 +67,9 @@ public: INTERRUPT_GEN_MEMBER(interrupt); IRQ_CALLBACK_MEMBER(irq_callback); - void pk8000(machine_config &config); void pk8000_io(address_map &map); void pk8000_mem(address_map &map); -protected: + required_device m_cassette; required_device m_ram; required_device m_speaker; diff --git a/src/mame/drivers/pkscram.cpp b/src/mame/drivers/pkscram.cpp index efa0bc809b3..22593c2c49c 100644 --- a/src/mame/drivers/pkscram.cpp +++ b/src/mame/drivers/pkscram.cpp @@ -39,7 +39,7 @@ public: void pkscramble(machine_config &config); -protected: +private: virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; diff --git a/src/mame/drivers/plan80.cpp b/src/mame/drivers/plan80.cpp index 6f9101f1472..d56976a7f48 100644 --- a/src/mame/drivers/plan80.cpp +++ b/src/mame/drivers/plan80.cpp @@ -32,11 +32,6 @@ class plan80_state : public driver_device { public: - enum - { - TIMER_BOOT - }; - plan80_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag) , m_maincpu(*this, "maincpu") @@ -44,15 +39,23 @@ public: , m_p_chargen(*this, "chargen") { } + void plan80(machine_config &config); + + void init_plan80(); + +private: + enum + { + TIMER_BOOT + }; + DECLARE_READ8_MEMBER(plan80_04_r); DECLARE_WRITE8_MEMBER(plan80_09_w); - void init_plan80(); uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void plan80(machine_config &config); void plan80_io(address_map &map); void plan80_mem(address_map &map); -private: + virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; uint8_t m_kbd_row; virtual void machine_reset() override; diff --git a/src/mame/drivers/play_1.cpp b/src/mame/drivers/play_1.cpp index 17bab26a57b..f09636495f8 100644 --- a/src/mame/drivers/play_1.cpp +++ b/src/mame/drivers/play_1.cpp @@ -41,6 +41,10 @@ public: , m_digits(*this, "digit%u", 0U) { } + void chance(machine_config &config); + void play_1(machine_config &config); + +private: DECLARE_READ8_MEMBER(port07_r); DECLARE_WRITE8_MEMBER(port01_w); DECLARE_WRITE8_MEMBER(port02_w); @@ -55,12 +59,10 @@ public: DECLARE_READ_LINE_MEMBER(ef4_r); DECLARE_WRITE_LINE_MEMBER(clock_w); - void chance(machine_config &config); - void play_1(machine_config &config); void chance_map(address_map &map); void play_1_io(address_map &map); void play_1_map(address_map &map); -private: + uint16_t m_resetcnt; uint16_t m_clockcnt; uint16_t m_waitcnt; diff --git a/src/mame/drivers/play_2.cpp b/src/mame/drivers/play_2.cpp index cd083205485..6d4ac1a001f 100644 --- a/src/mame/drivers/play_2.cpp +++ b/src/mame/drivers/play_2.cpp @@ -59,6 +59,12 @@ public: , m_digits(*this, "digit%u", 0U) { } + void play_2(machine_config &config); + void zira(machine_config &config); + + void init_zira(); + +private: DECLARE_WRITE8_MEMBER(port01_w); DECLARE_WRITE8_MEMBER(port02_w); DECLARE_WRITE8_MEMBER(port03_w); @@ -78,14 +84,11 @@ public: DECLARE_READ8_MEMBER(psg_r); DECLARE_WRITE8_MEMBER(psg_w); DECLARE_READ8_MEMBER(sound_in_r); - void init_zira(); - void play_2(machine_config &config); - void zira(machine_config &config); void play_2_io(address_map &map); void play_2_map(address_map &map); void zira_sound_map(address_map &map); -private: + uint16_t m_clockcnt; uint16_t m_resetcnt; uint8_t m_kbdrow; diff --git a/src/mame/drivers/play_3.cpp b/src/mame/drivers/play_3.cpp index e5278284a7f..aaf00424e82 100644 --- a/src/mame/drivers/play_3.cpp +++ b/src/mame/drivers/play_3.cpp @@ -73,6 +73,11 @@ public: , m_digits(*this, "digit%u", 0U) { } + void sklflite(machine_config &config); + void play_3(machine_config &config); + void megaaton(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(port01_w); DECLARE_WRITE8_MEMBER(megaaton_port01_w); DECLARE_WRITE8_MEMBER(port02_w); @@ -92,16 +97,13 @@ public: DECLARE_READ8_MEMBER(port02_a_r); DECLARE_READ_LINE_MEMBER(clear_a_r); - void sklflite(machine_config &config); - void play_3(machine_config &config); - void megaaton(machine_config &config); void megaaton_io(address_map &map); void play_3_audio_io(address_map &map); void play_3_audio_map(address_map &map); void play_3_io(address_map &map); void play_3_map(address_map &map); void sklflite_io(address_map &map); -private: + u16 m_clockcnt; u16 m_resetcnt; u16 m_resetcnt_a; diff --git a/src/mame/drivers/plus4.cpp b/src/mame/drivers/plus4.cpp index 92eb70c4da2..c9b5cb87af6 100644 --- a/src/mame/drivers/plus4.cpp +++ b/src/mame/drivers/plus4.cpp @@ -76,6 +76,11 @@ public: m_exp_irq(CLEAR_LINE) { } + void plus4(machine_config &config); + + DECLARE_WRITE8_MEMBER( cpu_w ); + +protected: required_device m_maincpu; required_device m_pla; required_device m_ted; @@ -108,7 +113,6 @@ public: DECLARE_READ8_MEMBER( ted_videoram_r ); DECLARE_READ8_MEMBER( cpu_r ); - DECLARE_WRITE8_MEMBER( cpu_w ); DECLARE_WRITE_LINE_MEMBER( ted_irq_w ); DECLARE_READ8_MEMBER( ted_k_r ); @@ -155,7 +159,6 @@ public: // keyboard state uint8_t m_kb; - void plus4(machine_config &config); void plus4_mem(address_map &map); void ted_videoram_map(address_map &map); }; @@ -168,13 +171,15 @@ public: : plus4_state(mconfig, type, tag) { } - DECLARE_READ8_MEMBER( cpu_r ); void v364(machine_config &config); void c16n(machine_config &config); void c16p(machine_config &config); void c232(machine_config &config); void plus4p(machine_config &config); void plus4n(machine_config &config); + +private: + DECLARE_READ8_MEMBER( cpu_r ); }; diff --git a/src/mame/drivers/pluto5.cpp b/src/mame/drivers/pluto5.cpp index 7e16f20fb55..e3e8edc4994 100644 --- a/src/mame/drivers/pluto5.cpp +++ b/src/mame/drivers/pluto5.cpp @@ -189,20 +189,22 @@ public: m_maincpu(*this, "maincpu") { } + void pluto5(machine_config &config); + + void init_hb(); + +private: uint32_t* m_cpuregion; std::unique_ptr m_mainram; DECLARE_READ32_MEMBER(pluto5_mem_r); DECLARE_WRITE32_MEMBER(pluto5_mem_w); - void pluto5(machine_config &config); void pluto5_map(address_map &map); -protected: // devices required_device m_maincpu; -public: - void init_hb(); + virtual void machine_start() override; }; diff --git a/src/mame/drivers/pmi80.cpp b/src/mame/drivers/pmi80.cpp index 8a81969e8fc..b5d239df908 100644 --- a/src/mame/drivers/pmi80.cpp +++ b/src/mame/drivers/pmi80.cpp @@ -47,13 +47,15 @@ public: , m_digits(*this, "digit%u", 0U) { } + void pmi80(machine_config &config); + +private: DECLARE_READ8_MEMBER(keyboard_r); DECLARE_WRITE8_MEMBER(keyboard_w); DECLARE_WRITE8_MEMBER(leds_w); - void pmi80(machine_config &config); void pmi80_io(address_map &map); void pmi80_mem(address_map &map); -private: + uint8_t m_keyrow; bool m_ledready; virtual void machine_reset() override; diff --git a/src/mame/drivers/pntnpuzl.cpp b/src/mame/drivers/pntnpuzl.cpp index 096760764b3..f9c2d87f22b 100644 --- a/src/mame/drivers/pntnpuzl.cpp +++ b/src/mame/drivers/pntnpuzl.cpp @@ -155,6 +155,13 @@ public: m_via(*this, "via") { } + void pntnpuzl(machine_config &config); + + void init_pip(); + + DECLARE_INPUT_CHANGED_MEMBER(coin_inserted); + +private: uint16_t m_pntpzl_200000; uint16_t m_serial; uint16_t m_serial_out; @@ -169,10 +176,7 @@ public: DECLARE_READ16_MEMBER(irq1_ack_r); DECLARE_READ16_MEMBER(irq2_ack_r); DECLARE_READ16_MEMBER(irq4_ack_r); - DECLARE_INPUT_CHANGED_MEMBER(coin_inserted); - void init_pip(); required_device m_via; - void pntnpuzl(machine_config &config); void mcu_map(address_map &map); void pntnpuzl_map(address_map &map); }; diff --git a/src/mame/drivers/pockchal.cpp b/src/mame/drivers/pockchal.cpp index 9638ab6fe39..c55f93477ca 100644 --- a/src/mame/drivers/pockchal.cpp +++ b/src/mame/drivers/pockchal.cpp @@ -41,6 +41,9 @@ public: , m_cart(*this, "cartslot") { } + void pockchalv1(machine_config &config); + +private: virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; @@ -49,7 +52,6 @@ public: required_device m_cart; uint32_t m_rom_size; DECLARE_DEVICE_IMAGE_LOAD_MEMBER(pockchalv1_cart); - void pockchalv1(machine_config &config); void pockchalv1_map(address_map &map); }; diff --git a/src/mame/drivers/pockstat.cpp b/src/mame/drivers/pockstat.cpp index 671a32ca23d..2dd86fbdcdd 100644 --- a/src/mame/drivers/pockstat.cpp +++ b/src/mame/drivers/pockstat.cpp @@ -114,6 +114,11 @@ public: m_cart(*this, "cartslot") { } + void pockstat(machine_config &config); + + DECLARE_INPUT_CHANGED_MEMBER(input_update); + +private: required_shared_ptr m_lcd_buffer; required_device m_maincpu; required_device m_cart; @@ -147,7 +152,6 @@ public: virtual void machine_start() override; virtual void machine_reset() override; uint32_t screen_update_pockstat(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - DECLARE_INPUT_CHANGED_MEMBER(input_update); TIMER_CALLBACK_MEMBER(timer_tick); TIMER_CALLBACK_MEMBER(rtc_tick); DECLARE_DEVICE_IMAGE_LOAD_MEMBER( pockstat_flash ); @@ -155,7 +159,6 @@ public: uint32_t ps_intc_get_interrupt_line(uint32_t line); void ps_intc_set_interrupt_line(uint32_t line, int state); void ps_timer_start(int index); - void pockstat(machine_config &config); void pockstat_mem(address_map &map); }; diff --git a/src/mame/drivers/pofo.cpp b/src/mame/drivers/pofo.cpp index 69f62f65913..4c7f7a6a4db 100644 --- a/src/mame/drivers/pofo.cpp +++ b/src/mame/drivers/pofo.cpp @@ -93,7 +93,7 @@ public: void portfolio(machine_config &config); -protected: +private: virtual void machine_start() override; virtual void machine_reset() override; @@ -149,7 +149,6 @@ protected: DECLARE_READ8_MEMBER(hd61830_rd_r); IRQ_CALLBACK_MEMBER(portfolio_int_ack); -private: required_device m_maincpu; required_device m_lcdc; required_device m_dtmf; diff --git a/src/mame/drivers/poisk1.cpp b/src/mame/drivers/poisk1.cpp index 0517042ff16..962857aa172 100644 --- a/src/mame/drivers/poisk1.cpp +++ b/src/mame/drivers/poisk1.cpp @@ -80,6 +80,11 @@ public: , m_kbdio(*this, "Y%u", 1) { } + void poisk1(machine_config &config); + + void init_poisk1(); + +private: required_device m_maincpu; required_device m_pic8259; required_device m_pit8253; @@ -94,7 +99,6 @@ public: required_ioport_array<8> m_kbdio; - void init_poisk1(); DECLARE_MACHINE_START(poisk1); DECLARE_MACHINE_RESET(poisk1); @@ -142,7 +146,6 @@ public: DECLARE_WRITE8_MEMBER(p1_ppi2_portb_w); DECLARE_READ8_MEMBER(p1_ppi2_portc_r); const char *m_cputag; - void poisk1(machine_config &config); void poisk1_io(address_map &map); void poisk1_map(address_map &map); }; diff --git a/src/mame/drivers/pokemini.cpp b/src/mame/drivers/pokemini.cpp index 7136547e892..55a148e644f 100644 --- a/src/mame/drivers/pokemini.cpp +++ b/src/mame/drivers/pokemini.cpp @@ -65,6 +65,9 @@ public: , m_inputs(*this, "INPUTS") { } + void pokemini(machine_config &config); + +private: uint8_t m_pm_reg[0x100]; PRC m_prc; TIMERS m_timers; @@ -79,9 +82,8 @@ public: DECLARE_READ8_MEMBER(rom_r); DECLARE_DEVICE_IMAGE_LOAD_MEMBER(pokemini_cart); - void pokemini(machine_config &config); void pokemini_mem_map(address_map &map); -protected: + enum { TIMER_SECONDS, diff --git a/src/mame/drivers/poker72.cpp b/src/mame/drivers/poker72.cpp index 22351205c40..63ecc375c7a 100644 --- a/src/mame/drivers/poker72.cpp +++ b/src/mame/drivers/poker72.cpp @@ -37,13 +37,17 @@ public: m_gfxdecode(*this, "gfxdecode"), m_palette(*this, "palette") { } + void poker72(machine_config &config); + + void init_poker72(); + +private: required_shared_ptr m_vram; required_shared_ptr m_pal; uint8_t m_tile_bank; DECLARE_WRITE8_MEMBER(poker72_paletteram_w); DECLARE_WRITE8_MEMBER(output_w); DECLARE_WRITE8_MEMBER(tile_bank_w); - void init_poker72(); virtual void machine_reset() override; virtual void video_start() override; DECLARE_PALETTE_INIT(poker72); @@ -51,7 +55,6 @@ public: required_device m_maincpu; required_device m_gfxdecode; required_device m_palette; - void poker72(machine_config &config); void poker72_map(address_map &map); }; diff --git a/src/mame/drivers/popobear.cpp b/src/mame/drivers/popobear.cpp index d790e3e248b..f973e7daa78 100644 --- a/src/mame/drivers/popobear.cpp +++ b/src/mame/drivers/popobear.cpp @@ -104,6 +104,9 @@ public: m_tilemap_base[3] = 0xfc000; } + void popobear(machine_config &config); + +private: required_device m_maincpu; required_device m_gfxdecode; required_device m_palette; @@ -132,7 +135,6 @@ public: TIMER_DEVICE_CALLBACK_MEMBER(irq); void postload(); - void popobear(machine_config &config); void popobear_mem(address_map &map); }; diff --git a/src/mame/drivers/potgoldu.cpp b/src/mame/drivers/potgoldu.cpp index 0fc5af7ba93..a1db4479422 100644 --- a/src/mame/drivers/potgoldu.cpp +++ b/src/mame/drivers/potgoldu.cpp @@ -34,7 +34,7 @@ public: void potgold(machine_config &config); -protected: +private: virtual void machine_reset() override; virtual void video_start() override; @@ -42,7 +42,6 @@ protected: void potgold_map(address_map &map); -protected: required_device m_maincpu; }; diff --git a/src/mame/drivers/powerstack.cpp b/src/mame/drivers/powerstack.cpp index 82843430e48..8f25734b9c3 100644 --- a/src/mame/drivers/powerstack.cpp +++ b/src/mame/drivers/powerstack.cpp @@ -16,12 +16,12 @@ class powerstack_state : public driver_device public: powerstack_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag) -// , m_maincpu(*this, "maincpu") + // , m_maincpu(*this, "maincpu") { } -void powerstack(machine_config &config); + void powerstack(machine_config &config); private: -// required_device m_maincpu; + // required_device m_maincpu; }; static INPUT_PORTS_START( powerstack ) diff --git a/src/mame/drivers/ppmast93.cpp b/src/mame/drivers/ppmast93.cpp index 894c354a8b7..519eb25fa5f 100644 --- a/src/mame/drivers/ppmast93.cpp +++ b/src/mame/drivers/ppmast93.cpp @@ -152,6 +152,9 @@ public: m_bgram(*this, "bgram"), m_fgram(*this, "fgram") { } + void ppmast93(machine_config &config); + +private: required_device m_maincpu; required_device m_gfxdecode; @@ -172,7 +175,6 @@ public: virtual void video_start() override; uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void ppmast93(machine_config &config); void ppmast93_cpu1_io(address_map &map); void ppmast93_cpu1_map(address_map &map); void ppmast93_cpu2_io(address_map &map); diff --git a/src/mame/drivers/prestige.cpp b/src/mame/drivers/prestige.cpp index d868045870e..cd05c9cc500 100644 --- a/src/mame/drivers/prestige.cpp +++ b/src/mame/drivers/prestige.cpp @@ -109,6 +109,17 @@ public: , m_bank5(*this, "bank5") { } + void prestige_base(machine_config &config); + void princ(machine_config &config); + void gl6000sl(machine_config &config); + void gjmovie(machine_config &config); + void snotec(machine_config &config); + void glmcolor(machine_config &config); + void glcolor(machine_config &config); + void prestige(machine_config &config); + void gl7007sl(machine_config &config); + +private: required_device m_maincpu; required_device m_ram; required_device m_cart; @@ -154,15 +165,7 @@ public: DECLARE_PALETTE_INIT(glcolor); TIMER_DEVICE_CALLBACK_MEMBER(irq_timer); IRQ_CALLBACK_MEMBER(prestige_int_ack); - void prestige_base(machine_config &config); - void princ(machine_config &config); - void gl6000sl(machine_config &config); - void gjmovie(machine_config &config); - void snotec(machine_config &config); - void glmcolor(machine_config &config); - void glcolor(machine_config &config); - void prestige(machine_config &config); - void gl7007sl(machine_config &config); + void glcolor_io(address_map &map); void prestige_io(address_map &map); void prestige_mem(address_map &map); diff --git a/src/mame/drivers/pro80.cpp b/src/mame/drivers/pro80.cpp index 422eee0fccc..70cdd70bd92 100644 --- a/src/mame/drivers/pro80.cpp +++ b/src/mame/drivers/pro80.cpp @@ -41,15 +41,17 @@ public: , m_digits(*this, "digit%u", 0U) { } + void pro80(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(digit_w); DECLARE_WRITE8_MEMBER(segment_w); DECLARE_READ8_MEMBER(kp_r); TIMER_DEVICE_CALLBACK_MEMBER(timer_p); - void pro80(machine_config &config); void pro80_io(address_map &map); void pro80_mem(address_map &map); -private: + uint8_t m_digit_sel; uint8_t m_cass_in; uint16_t m_cass_data[4]; diff --git a/src/mame/drivers/proconn.cpp b/src/mame/drivers/proconn.cpp index 9aa39e2fdf3..3a9d5507da7 100644 --- a/src/mame/drivers/proconn.cpp +++ b/src/mame/drivers/proconn.cpp @@ -54,6 +54,11 @@ public: , m_meters(*this, "meters") { } + void proconn(machine_config &config); + + void init_proconn(); + +private: template DECLARE_WRITE8_MEMBER( ay_w ) { m_ay->address_data_w(space, N, data); } template DECLARE_WRITE8_MEMBER( ctc_w ) { m_z80ctc->write(space, N, data); } @@ -124,10 +129,8 @@ public: DECLARE_WRITE8_MEMBER(pio_5_m_out_pb_w) { logerror("pio_5_m_out_pb_w %02x (LAMPS1)\n", data); } DECLARE_WRITE_LINE_MEMBER(pio_5_m_out_brdy_w) { logerror("pio_5_m_out_brdy_w %02x\n", state); } - void proconn(machine_config &config); void proconn_map(address_map &map); void proconn_portmap(address_map &map); -protected: // devices optional_device m_vfd; @@ -138,9 +141,7 @@ protected: required_device m_ay; required_device m_meters; -public: int m_meter; - void init_proconn(); virtual void machine_reset() override; DECLARE_WRITE8_MEMBER(meter_w); DECLARE_WRITE16_MEMBER(serial_transmit); diff --git a/src/mame/drivers/prodigy.cpp b/src/mame/drivers/prodigy.cpp index f292e8d9e34..5f8d9a7323d 100644 --- a/src/mame/drivers/prodigy.cpp +++ b/src/mame/drivers/prodigy.cpp @@ -148,6 +148,9 @@ public: #endif { } + void prodigy(machine_config &config); + +private: NETDEV_LOGIC_CALLBACK_MEMBER(bcd_bit0_cb); NETDEV_LOGIC_CALLBACK_MEMBER(bcd_bit1_cb); NETDEV_LOGIC_CALLBACK_MEMBER(bcd_bit2_cb); @@ -165,9 +168,8 @@ public: DECLARE_WRITE_LINE_MEMBER(via_cb2_w); DECLARE_WRITE_LINE_MEMBER(irq_handler); - void prodigy(machine_config &config); void maincpu_map(address_map &map); -private: + required_device m_maincpu; required_device m_74145; uint8_t m_segments; diff --git a/src/mame/drivers/progolf.cpp b/src/mame/drivers/progolf.cpp index 52f3aa4fc35..2d4544c3983 100644 --- a/src/mame/drivers/progolf.cpp +++ b/src/mame/drivers/progolf.cpp @@ -76,6 +76,12 @@ public: m_videoram(*this, "videoram"), m_fbram(*this, "fbram") { } + void progolfa(machine_config &config); + void progolf(machine_config &config); + + DECLARE_INPUT_CHANGED_MEMBER(coin_inserted); + +private: required_device m_maincpu; required_device m_audiocpu; required_device m_gfxdecode; @@ -99,15 +105,11 @@ public: DECLARE_READ8_MEMBER(videoram_r); DECLARE_WRITE8_MEMBER(videoram_w); - DECLARE_INPUT_CHANGED_MEMBER(coin_inserted); - virtual void machine_start() override; virtual void video_start() override; DECLARE_PALETTE_INIT(progolf); uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void progolfa(machine_config &config); - void progolf(machine_config &config); void main_cpu(address_map &map); void sound_cpu(address_map &map); }; diff --git a/src/mame/drivers/prophet600.cpp b/src/mame/drivers/prophet600.cpp index d865a624667..eac3bc6f695 100644 --- a/src/mame/drivers/prophet600.cpp +++ b/src/mame/drivers/prophet600.cpp @@ -86,6 +86,9 @@ public: m_nmi_gate(false) { } + void prophet600(machine_config &config); + +private: virtual void machine_start() override; DECLARE_WRITE_LINE_MEMBER( pit_ch0_tick_w ); @@ -103,10 +106,9 @@ public: DECLARE_WRITE8_MEMBER(cv_w); DECLARE_WRITE8_MEMBER(gate_w); - void prophet600(machine_config &config); void cpu_map(address_map &map); void io_map(address_map &map); -private: + required_device m_maincpu; required_device m_acia; diff --git a/src/mame/drivers/proteus.cpp b/src/mame/drivers/proteus.cpp index c70ef1bd794..a40f94a5cb5 100644 --- a/src/mame/drivers/proteus.cpp +++ b/src/mame/drivers/proteus.cpp @@ -75,6 +75,9 @@ public: , m_floppy(nullptr) { } + void proteus(machine_config &config); + +private: virtual void machine_reset() override; virtual void machine_start() override; @@ -93,12 +96,10 @@ public: DECLARE_WRITE8_MEMBER(enable_z80_w); DECLARE_WRITE8_MEMBER(enable_6809_w); - void proteus(machine_config &config); void proteus_6809_mem(address_map &map); void proteus_z80_mem(address_map &map); void proteus_z80_io(address_map &map); -protected: required_device m_maincpu; required_device m_z80; required_device m_adlc; diff --git a/src/mame/drivers/proteus3.cpp b/src/mame/drivers/proteus3.cpp index 83b4b4681ae..66a4d3acae4 100644 --- a/src/mame/drivers/proteus3.cpp +++ b/src/mame/drivers/proteus3.cpp @@ -79,6 +79,9 @@ public: , m_serial(*this, "SERIAL") { } + void proteus3(machine_config &config); + +private: DECLARE_WRITE_LINE_MEMBER(ca2_w); DECLARE_WRITE8_MEMBER(video_w); void kbd_put(u8 data); @@ -106,9 +109,8 @@ public: DECLARE_WRITE_LINE_MEMBER (write_f14_clock){ write_acia_clocks(mc14411_device::TIMER_F14, state); } DECLARE_WRITE_LINE_MEMBER (write_f15_clock){ write_acia_clocks(mc14411_device::TIMER_F15, state); } - void proteus3(machine_config &config); void proteus3_mem(address_map &map); -private: + uint8_t m_video_data; uint8_t m_flashcnt; uint16_t m_curs_pos; diff --git a/src/mame/drivers/psx.cpp b/src/mame/drivers/psx.cpp index 43957f067df..e8fc2045363 100644 --- a/src/mame/drivers/psx.cpp +++ b/src/mame/drivers/psx.cpp @@ -42,6 +42,11 @@ public: { } + void pse(machine_config &config); + void psu(machine_config &config); + void psj(machine_config &config); + +protected: std::vector m_exe_buffer; int m_cd_param_p; int m_cd_result_p; @@ -66,9 +71,6 @@ public: void cd_dma_write( uint32_t *p_n_psxram, uint32_t n_address, int32_t n_size ); required_device m_maincpu; required_device m_ram; - void pse(machine_config &config); - void psu(machine_config &config); - void psj(machine_config &config); void psx_map(address_map &map); void subcpu_map(address_map &map); diff --git a/src/mame/drivers/pt68k4.cpp b/src/mame/drivers/pt68k4.cpp index cdc2ad456f9..8c3a561a56f 100644 --- a/src/mame/drivers/pt68k4.cpp +++ b/src/mame/drivers/pt68k4.cpp @@ -105,6 +105,10 @@ public: , m_floppy_connector(*this, WDFDC_TAG":%u", 0U) { } + void pt68k2(machine_config &config); + void pt68k4(machine_config &config); + +private: DECLARE_READ8_MEMBER(hiram_r); DECLARE_WRITE8_MEMBER(hiram_w); DECLARE_READ8_MEMBER(keyboard_r); @@ -125,11 +129,9 @@ public: DECLARE_FLOPPY_FORMATS( floppy_formats ); - void pt68k2(machine_config &config); - void pt68k4(machine_config &config); void pt68k2_mem(address_map &map); void pt68k4_mem(address_map &map); -private: + virtual void machine_start() override; virtual void machine_reset() override; required_shared_ptr m_p_base; diff --git a/src/mame/drivers/ptcsol.cpp b/src/mame/drivers/ptcsol.cpp index 5471fd16bcd..4034efd7382 100644 --- a/src/mame/drivers/ptcsol.cpp +++ b/src/mame/drivers/ptcsol.cpp @@ -145,12 +145,6 @@ struct cass_data_t { class sol20_state : public driver_device { public: - enum - { - TIMER_SOL20_CASSETTE_TC, - TIMER_SOL20_BOOT - }; - sol20_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag) , m_maincpu(*this, "maincpu") @@ -169,6 +163,17 @@ public: , m_iop_s4(*this, "S4") { } + void sol20(machine_config &config); + + void init_sol20(); + +private: + enum + { + TIMER_SOL20_CASSETTE_TC, + TIMER_SOL20_BOOT + }; + DECLARE_READ8_MEMBER( sol20_f8_r ); DECLARE_READ8_MEMBER( sol20_fa_r ); DECLARE_READ8_MEMBER( sol20_fc_r ); @@ -178,15 +183,13 @@ public: DECLARE_WRITE8_MEMBER( sol20_fd_w ); DECLARE_WRITE8_MEMBER( sol20_fe_w ); void kbd_put(u8 data); - void init_sol20(); TIMER_CALLBACK_MEMBER(sol20_cassette_tc); TIMER_CALLBACK_MEMBER(sol20_boot); uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void sol20(machine_config &config); void sol20_io(address_map &map); void sol20_mem(address_map &map); -private: + virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; uint8_t m_sol20_fa; virtual void machine_reset() override; diff --git a/src/mame/drivers/pturn.cpp b/src/mame/drivers/pturn.cpp index 2c0f4e7e96a..53eeab6545e 100644 --- a/src/mame/drivers/pturn.cpp +++ b/src/mame/drivers/pturn.cpp @@ -99,6 +99,11 @@ public: m_videoram(*this, "videoram"), m_spriteram(*this, "spriteram") { } + void pturn(machine_config &config); + + void init_pturn(); + +private: required_device m_maincpu; required_device m_audiocpu; required_device m_gfxdecode; @@ -135,7 +140,6 @@ public: TILE_GET_INFO_MEMBER(get_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info); - void init_pturn(); virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; @@ -144,7 +148,6 @@ public: INTERRUPT_GEN_MEMBER(sub_intgen); INTERRUPT_GEN_MEMBER(main_intgen); - void pturn(machine_config &config); void main_map(address_map &map); void sub_map(address_map &map); }; diff --git a/src/mame/drivers/pulsar.cpp b/src/mame/drivers/pulsar.cpp index dab55e6e80c..ff71de9501f 100644 --- a/src/mame/drivers/pulsar.cpp +++ b/src/mame/drivers/pulsar.cpp @@ -58,7 +58,12 @@ public: , m_rtc(*this, "rtc") { } + + void pulsar(machine_config &config); + void init_pulsar(); + +private: DECLARE_MACHINE_RESET(pulsar); TIMER_CALLBACK_MEMBER(pulsar_reset); DECLARE_WRITE8_MEMBER(ppi_pa_w); @@ -66,10 +71,9 @@ public: DECLARE_WRITE8_MEMBER(ppi_pc_w); DECLARE_READ8_MEMBER(ppi_pc_r); - void pulsar(machine_config &config); void pulsar_io(address_map &map); void pulsar_mem(address_map &map); -private: + floppy_image_device *m_floppy; required_device m_maincpu; required_device m_fdc; diff --git a/src/mame/drivers/pv1000.cpp b/src/mame/drivers/pv1000.cpp index 8067b537f4f..560f05fbd21 100644 --- a/src/mame/drivers/pv1000.cpp +++ b/src/mame/drivers/pv1000.cpp @@ -145,6 +145,9 @@ public: m_palette(*this, "palette") { } + void pv1000(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(io_w); DECLARE_READ8_MEMBER(io_r); DECLARE_WRITE8_MEMBER(gfxram_w); @@ -174,7 +177,6 @@ public: required_device m_gfxdecode; required_device m_screen; required_device m_palette; - void pv1000(machine_config &config); void pv1000(address_map &map); void pv1000_io(address_map &map); }; diff --git a/src/mame/drivers/pv2000.cpp b/src/mame/drivers/pv2000.cpp index 2bfa63a9a01..33798a40617 100644 --- a/src/mame/drivers/pv2000.cpp +++ b/src/mame/drivers/pv2000.cpp @@ -52,6 +52,9 @@ public: m_last_state(0) { } + void pv2000(machine_config &config); + +private: required_device m_maincpu; required_device m_cass; required_device m_cart; @@ -70,7 +73,6 @@ public: virtual void machine_start() override; virtual void machine_reset() override; DECLARE_DEVICE_IMAGE_LOAD_MEMBER(pv2000_cart); - void pv2000(machine_config &config); void pv2000_io_map(address_map &map); void pv2000_map(address_map &map); }; diff --git a/src/mame/drivers/pv9234.cpp b/src/mame/drivers/pv9234.cpp index 20ad03166a3..caa3d7536aa 100644 --- a/src/mame/drivers/pv9234.cpp +++ b/src/mame/drivers/pv9234.cpp @@ -36,15 +36,17 @@ public: { } + void pv9234(machine_config &config); + +private: DECLARE_WRITE32_MEMBER(debug_w); DECLARE_WRITE32_MEMBER(debug1_w); DECLARE_WRITE32_MEMBER(debug2_w); uint32_t screen_update_pv9234(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void pv9234(machine_config &config); void pv9234_map(address_map &map); -protected: + virtual void machine_reset() override; virtual void video_start() override; diff --git a/src/mame/drivers/pve500.cpp b/src/mame/drivers/pve500.cpp index 3be5e9eeecb..3376205f388 100644 --- a/src/mame/drivers/pve500.cpp +++ b/src/mame/drivers/pve500.cpp @@ -76,6 +76,11 @@ public: , m_digits(*this, "digit%u", 0U) { } + void pve500(machine_config &config); + + void init_pve500(); + +private: DECLARE_WRITE_LINE_MEMBER(mb8421_intl); DECLARE_WRITE_LINE_MEMBER(mb8421_intr); DECLARE_WRITE_LINE_MEMBER(GPI_w); @@ -89,13 +94,11 @@ public: DECLARE_WRITE8_MEMBER(io_sel_w); DECLARE_WRITE8_MEMBER(eeprom_w); DECLARE_READ8_MEMBER(eeprom_r); - void init_pve500(); - void pve500(machine_config &config); void maincpu_io(address_map &map); void maincpu_prg(address_map &map); void subcpu_io(address_map &map); void subcpu_prg(address_map &map); -private: + virtual void machine_start() override; virtual void machine_reset() override; required_device m_maincpu; diff --git a/src/mame/drivers/pwrview.cpp b/src/mame/drivers/pwrview.cpp index 8a2ec9cfacb..60088db0fa8 100644 --- a/src/mame/drivers/pwrview.cpp +++ b/src/mame/drivers/pwrview.cpp @@ -30,6 +30,9 @@ public: m_vram(64*1024) { } + void pwrview(machine_config &config); + +private: DECLARE_READ16_MEMBER(bank0_r); DECLARE_WRITE16_MEMBER(bank0_w); DECLARE_READ8_MEMBER(unk1_r); @@ -55,16 +58,15 @@ public: DECLARE_READ8_MEMBER(err_r); MC6845_UPDATE_ROW(update_row); - void pwrview(machine_config &config); void bios_bank(address_map &map); void pwrview_fetch_map(address_map &map); void pwrview_io(address_map &map); void pwrview_map(address_map &map); -protected: + virtual void device_start() override; virtual void device_reset() override; virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; -private: + required_device m_maincpu; required_device m_pit; required_memory_region m_bios; diff --git a/src/mame/drivers/px4.cpp b/src/mame/drivers/px4.cpp index 68766ec39b4..1f6f7922351 100644 --- a/src/mame/drivers/px4.cpp +++ b/src/mame/drivers/px4.cpp @@ -84,8 +84,13 @@ public: m_centronics_busy(0), m_centronics_perror(0) { } + void px4(machine_config &config); + void init_px4(); + DECLARE_INPUT_CHANGED_MEMBER( key_callback ); + +protected: DECLARE_PALETTE_INIT( px4 ); uint32_t screen_update_px4(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); @@ -117,7 +122,6 @@ public: DECLARE_WRITE8_MEMBER( swr_w ); DECLARE_WRITE8_MEMBER( ioctlr_w ); - DECLARE_INPUT_CHANGED_MEMBER( key_callback ); TIMER_DEVICE_CALLBACK_MEMBER( ext_cassette_read ); TIMER_DEVICE_CALLBACK_MEMBER( frc_tick ); @@ -135,10 +139,9 @@ public: DECLARE_WRITE_LINE_MEMBER( centronics_busy_w ) { m_centronics_busy = state; } DECLARE_WRITE_LINE_MEMBER( centronics_perror_w ) { m_centronics_perror = state; } - void px4(machine_config &config); void px4_io(address_map &map); void px4_mem(address_map &map); -protected: + // driver_device overrides virtual void machine_start() override; virtual void machine_reset() override; @@ -149,7 +152,6 @@ protected: virtual void rcv_callback() override; virtual void rcv_complete() override; -private: // z80 interrupt sources enum { @@ -262,8 +264,11 @@ public: m_ramdisk(nullptr) { } + void px4p(machine_config &config); + void init_px4p(); +private: DECLARE_PALETTE_INIT( px4p ); DECLARE_WRITE8_MEMBER( ramdisk_address_w ); @@ -271,13 +276,11 @@ public: DECLARE_WRITE8_MEMBER( ramdisk_data_w ); DECLARE_READ8_MEMBER( ramdisk_control_r ); - void px4p(machine_config &config); void px4p_io(address_map &map); -protected: + // driver_device overrides virtual void machine_start() override; -private: required_device m_rdnvram; required_device m_rdsocket; diff --git a/src/mame/drivers/pyson.cpp b/src/mame/drivers/pyson.cpp index e97029d2fc5..4d1e9461aa7 100644 --- a/src/mame/drivers/pyson.cpp +++ b/src/mame/drivers/pyson.cpp @@ -165,11 +165,12 @@ public: m_maincpu(*this, "maincpu") { } + void pyson(machine_config &config); + +private: uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - void pyson(machine_config &config); void ps2_map(address_map &map); -protected: // devices required_device m_maincpu; diff --git a/src/mame/drivers/pzletime.cpp b/src/mame/drivers/pzletime.cpp index 9993df16681..880bf328feb 100644 --- a/src/mame/drivers/pzletime.cpp +++ b/src/mame/drivers/pzletime.cpp @@ -43,6 +43,11 @@ public: m_screen(*this, "screen"), m_palette(*this, "palette") { } + void pzletime(machine_config &config); + + DECLARE_CUSTOM_INPUT_MEMBER(ticket_status_r); + +private: /* memory pointers */ required_shared_ptr m_video_regs; required_shared_ptr m_tilemap_regs; @@ -61,7 +66,6 @@ public: DECLARE_WRITE16_MEMBER(txt_videoram_w); DECLARE_WRITE16_MEMBER(ticket_w); DECLARE_WRITE16_MEMBER(video_regs_w); - DECLARE_CUSTOM_INPUT_MEMBER(ticket_status_r); DECLARE_WRITE16_MEMBER(eeprom_w); DECLARE_WRITE16_MEMBER(oki_bank_w); TILE_GET_INFO_MEMBER(get_mid_tile_info); @@ -77,7 +81,6 @@ public: required_device m_gfxdecode; required_device m_screen; required_device m_palette; - void pzletime(machine_config &config); void pzletime_map(address_map &map); }; diff --git a/src/mame/drivers/ql.cpp b/src/mame/drivers/ql.cpp index 903aec83818..7633d106274 100644 --- a/src/mame/drivers/ql.cpp +++ b/src/mame/drivers/ql.cpp @@ -139,6 +139,11 @@ public: m_qimi_extint(CLEAR_LINE) { } + void ql_ntsc(machine_config &config); + void opd(machine_config &config); + void ql(machine_config &config); + +private: required_device m_maincpu; required_device m_ipc; required_device m_zx8301; @@ -194,9 +199,7 @@ public: // QIMI bool m_qimi_enabled; int m_qimi_extint; - void ql_ntsc(machine_config &config); - void opd(machine_config &config); - void ql(machine_config &config); + void ipc_io(address_map &map); void ql_mem(address_map &map); }; diff --git a/src/mame/drivers/quakeat.cpp b/src/mame/drivers/quakeat.cpp index ea4489d802f..e7738bcf74d 100644 --- a/src/mame/drivers/quakeat.cpp +++ b/src/mame/drivers/quakeat.cpp @@ -74,10 +74,12 @@ public: : pcat_base_state(mconfig, type, tag) { } + void quake(machine_config &config); + +private: virtual void machine_start() override; virtual void video_start() override; uint32_t screen_update_quake(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void quake(machine_config &config); void quake_io(address_map &map); void quake_map(address_map &map); }; diff --git a/src/mame/drivers/quantum.cpp b/src/mame/drivers/quantum.cpp index 9c95e1c89c7..a5a4d28f14d 100644 --- a/src/mame/drivers/quantum.cpp +++ b/src/mame/drivers/quantum.cpp @@ -73,7 +73,7 @@ public: void quantum(machine_config &config); -protected: +private: virtual void machine_start() override { m_leds.resolve(); } DECLARE_READ16_MEMBER(trackball_r); DECLARE_WRITE16_MEMBER(led_w); @@ -82,7 +82,6 @@ protected: DECLARE_READ8_MEMBER(input_2_r); void main_map(address_map &map); -private: required_device m_maincpu; required_device m_avg; required_device m_nvram; diff --git a/src/mame/drivers/queen.cpp b/src/mame/drivers/queen.cpp index 0e54dfbc558..55606f37207 100644 --- a/src/mame/drivers/queen.cpp +++ b/src/mame/drivers/queen.cpp @@ -43,6 +43,9 @@ public: { } + void queen(machine_config &config); + +private: std::unique_ptr m_bios_ram; std::unique_ptr m_bios_ext_ram; uint8_t m_mtxc_config_reg[256]; @@ -54,7 +57,6 @@ public: virtual void machine_start() override; virtual void machine_reset() override; void intel82439tx_init(); - void queen(machine_config &config); void queen_io(address_map &map); void queen_map(address_map &map); diff --git a/src/mame/drivers/quickpick5.cpp b/src/mame/drivers/quickpick5.cpp index 5ec77fc02af..cb695c2dba6 100644 --- a/src/mame/drivers/quickpick5.cpp +++ b/src/mame/drivers/quickpick5.cpp @@ -49,6 +49,9 @@ public: m_ttlrom_offset(0) { } + void quickpick5(machine_config &config); + +private: uint32_t screen_update_quickpick5(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); K05324X_CB_MEMBER(sprite_callback); @@ -80,14 +83,12 @@ public: DECLARE_READ8_MEMBER(vram_r); DECLARE_WRITE8_MEMBER(vram_w); - void quickpick5(machine_config &config); void quickpick5_main(address_map &map); -protected: + virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; -private: required_device m_maincpu; required_device m_palette; required_device m_k053245; diff --git a/src/mame/drivers/quizo.cpp b/src/mame/drivers/quizo.cpp index 6ab56471666..b581f208c81 100644 --- a/src/mame/drivers/quizo.cpp +++ b/src/mame/drivers/quizo.cpp @@ -40,6 +40,11 @@ public: : driver_device(mconfig, type, tag), m_maincpu(*this, "maincpu") { } + void quizo(machine_config &config); + + void init_quizo(); + +private: required_device m_maincpu; std::unique_ptr m_videoram; @@ -50,11 +55,9 @@ public: DECLARE_WRITE8_MEMBER(port70_w); DECLARE_WRITE8_MEMBER(port60_w); - void init_quizo(); DECLARE_PALETTE_INIT(quizo); uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void quizo(machine_config &config); void memmap(address_map &map); void portmap(address_map &map); }; diff --git a/src/mame/drivers/quizpun2.cpp b/src/mame/drivers/quizpun2.cpp index 168fe92180c..4e7dff56402 100644 --- a/src/mame/drivers/quizpun2.cpp +++ b/src/mame/drivers/quizpun2.cpp @@ -112,6 +112,10 @@ public: m_bg_ram(*this, "bg_ram") { } + void quizpun(machine_config &config); + void quizpun2(machine_config &config); + +private: required_device m_maincpu; required_device m_audiocpu; required_device m_gfxdecode; @@ -164,8 +168,6 @@ public: bool m_mcu_pending; bool m_mcu_written; bool m_mcu_repeat; - void quizpun(machine_config &config); - void quizpun2(machine_config &config); void quizpun2_cop_map(address_map &map); void quizpun2_io_map(address_map &map); void quizpun2_map(address_map &map); diff --git a/src/mame/drivers/quizshow.cpp b/src/mame/drivers/quizshow.cpp index 7f962b45e00..6c5b3818057 100644 --- a/src/mame/drivers/quizshow.cpp +++ b/src/mame/drivers/quizshow.cpp @@ -55,7 +55,7 @@ public: void init_quizshow(); void quizshow(machine_config &config); -protected: +private: virtual void machine_start() override { m_lamps.resolve(); } virtual void machine_reset() override; virtual void video_start() override; @@ -76,7 +76,6 @@ protected: uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); TIMER_DEVICE_CALLBACK_MEMBER(clock_timer_cb); -private: required_device m_maincpu; required_device m_dac; required_shared_ptr m_main_ram; diff --git a/src/mame/drivers/qvt103.cpp b/src/mame/drivers/qvt103.cpp index 95aac6651ba..017dfb9238f 100644 --- a/src/mame/drivers/qvt103.cpp +++ b/src/mame/drivers/qvt103.cpp @@ -24,12 +24,14 @@ public: , m_p_chargen(*this, "chargen") { } + void qvt103(machine_config &config); + +private: u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - void qvt103(machine_config &config); void io_map(address_map &map); void mem_map(address_map &map); -private: + required_device m_maincpu; required_region_ptr m_p_chargen; }; diff --git a/src/mame/drivers/qvt6800.cpp b/src/mame/drivers/qvt6800.cpp index 43c8f60fe01..d78330beb51 100644 --- a/src/mame/drivers/qvt6800.cpp +++ b/src/mame/drivers/qvt6800.cpp @@ -26,13 +26,15 @@ public: , m_videoram(*this, "videoram") { } - MC6845_UPDATE_ROW(update_row); - void qvt190(machine_config &config); void qvt102(machine_config &config); + +private: + MC6845_UPDATE_ROW(update_row); + void qvt102_mem_map(address_map &map); void qvt190_mem_map(address_map &map); -private: + required_device m_maincpu; required_region_ptr m_p_chargen; required_shared_ptr m_videoram; diff --git a/src/mame/drivers/qvt70.cpp b/src/mame/drivers/qvt70.cpp index 2e8fc090a64..28843e0e806 100644 --- a/src/mame/drivers/qvt70.cpp +++ b/src/mame/drivers/qvt70.cpp @@ -18,8 +18,9 @@ public: { } void qvt70(machine_config &config); - void mem_map(address_map &map); + private: + void mem_map(address_map &map); required_device m_maincpu; }; diff --git a/src/mame/drivers/r9751.cpp b/src/mame/drivers/r9751.cpp index a28070533f1..c533dbf4deb 100644 --- a/src/mame/drivers/r9751.cpp +++ b/src/mame/drivers/r9751.cpp @@ -97,6 +97,11 @@ public: { } + void r9751(machine_config &config); + + void init_r9751(); + +private: void kbd_put(u8 data); DECLARE_READ32_MEMBER(r9751_mmio_5ff_r); @@ -111,11 +116,8 @@ public: DECLARE_READ8_MEMBER(pdc_dma_r); DECLARE_WRITE8_MEMBER(pdc_dma_w); - void init_r9751(); - - void r9751(machine_config &config); void r9751_mem(address_map &map); -private: + required_device m_maincpu; required_device m_pdc; required_device m_smioc; diff --git a/src/mame/drivers/rabbit.cpp b/src/mame/drivers/rabbit.cpp index 2f1a9b3ea1c..0e14872956c 100644 --- a/src/mame/drivers/rabbit.cpp +++ b/src/mame/drivers/rabbit.cpp @@ -112,6 +112,11 @@ public: m_blitterregs(*this, "blitterregs"), m_spriteram(*this, "spriteram") { } + void rabbit(machine_config &config); + + void init_rabbit(); + +private: DECLARE_WRITE32_MEMBER(tilemap0_w); DECLARE_WRITE32_MEMBER(tilemap1_w); DECLARE_WRITE32_MEMBER(tilemap2_w); @@ -125,16 +130,11 @@ public: DECLARE_WRITE32_MEMBER(blitter_w); DECLARE_WRITE32_MEMBER(eeprom_write); - void init_rabbit(); - - void rabbit(machine_config &config); - void rabbit_map(address_map &map); -protected: + virtual void video_start() override; virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; -private: required_device m_maincpu; required_device m_eeprom; required_device m_gfxdecode; diff --git a/src/mame/drivers/rad_eu3a05.cpp b/src/mame/drivers/rad_eu3a05.cpp index b3b401f815e..de8c5f063ff 100644 --- a/src/mame/drivers/rad_eu3a05.cpp +++ b/src/mame/drivers/rad_eu3a05.cpp @@ -177,6 +177,9 @@ public: m_palette(*this, "palette") { } + void radicasi(machine_config &config); + +private: // screen updates uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); @@ -187,7 +190,6 @@ public: DECLARE_WRITE8_MEMBER(radicasi_rombank_lo_w); DECLARE_WRITE8_MEMBER(radicasi_rombank_hi_w); - // DMA DECLARE_WRITE8_MEMBER(radicasi_dmasrc_lo_w); DECLARE_WRITE8_MEMBER(radicasi_dmasrc_md_w); @@ -235,18 +237,15 @@ public: // for callback DECLARE_READ8_MEMBER(read_full_space); - void radicasi(machine_config &config); - void radicasi_bank_map(address_map &map); void radicasi_map(address_map &map); -protected: + // driver_device overrides virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; -private: required_device m_maincpu; required_shared_ptr m_ram; required_shared_ptr m_vram; diff --git a/src/mame/drivers/rad_eu3a14.cpp b/src/mame/drivers/rad_eu3a14.cpp index 61ce2d171a3..d05cc99deab 100644 --- a/src/mame/drivers/rad_eu3a14.cpp +++ b/src/mame/drivers/rad_eu3a14.cpp @@ -85,14 +85,19 @@ public: m_gfxdecode(*this, "gfxdecode") { } + + void radica_eu3a14(machine_config &config); + void radica_eu3a14_adc(machine_config &config); + + void init_rad_gtg(); + void init_rad_foot(); + +private: READ8_MEMBER(irq_vector_r); // screen updates uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void radica_eu3a14(machine_config &config); - void radica_eu3a14_adc(machine_config &config); - int m_custom_irq; uint16_t m_custom_irq_vector; @@ -114,20 +119,15 @@ public: // for callback DECLARE_READ8_MEMBER(read_full_space); - void init_rad_gtg(); - void init_rad_foot(); - void bank_map(address_map &map); void radica_eu3a14_map(address_map &map); -protected: // driver_device overrides virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; -private: double hue2rgb(double p, double q, double t); required_device m_maincpu; diff --git a/src/mame/drivers/rambo.cpp b/src/mame/drivers/rambo.cpp index 31695deb570..2a166be56ff 100644 --- a/src/mame/drivers/rambo.cpp +++ b/src/mame/drivers/rambo.cpp @@ -37,6 +37,11 @@ public: { } + void rambo(machine_config &config); + + void init_rambo(); + +private: uint8_t m_port_a; uint8_t m_port_b; uint8_t m_port_c; @@ -53,10 +58,8 @@ public: DECLARE_READ8_MEMBER(port_r); DECLARE_WRITE8_MEMBER(port_w); - void init_rambo(); virtual void machine_start() override; virtual void machine_reset() override; - void rambo(machine_config &config); void rambo_data_map(address_map &map); void rambo_io_map(address_map &map); void rambo_prg_map(address_map &map); diff --git a/src/mame/drivers/ramtek.cpp b/src/mame/drivers/ramtek.cpp index ed755b5e4a9..5dfa5b77d83 100644 --- a/src/mame/drivers/ramtek.cpp +++ b/src/mame/drivers/ramtek.cpp @@ -68,21 +68,18 @@ public: { } + void ramtek(machine_config &config); + +private: // devices required_device m_maincpu; required_device m_video; - void ramtek(machine_config &config); -protected: - // driver_device overrides virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; - -private: - }; diff --git a/src/mame/drivers/rastersp.cpp b/src/mame/drivers/rastersp.cpp index 218f5313d8b..7594f66a80b 100644 --- a/src/mame/drivers/rastersp.cpp +++ b/src/mame/drivers/rastersp.cpp @@ -64,6 +64,9 @@ public: m_nvram(*this, "nvram") {} + void rastersp(machine_config &config); + +private: #define VIDEO_ADDR_MASK 0x3fffffff enum tms_regs @@ -146,11 +149,10 @@ public: void upload_palette(uint32_t word1, uint32_t word2); IRQ_CALLBACK_MEMBER(irq_callback); void ncr53c700(device_t *device); - void rastersp(machine_config &config); void cpu_map(address_map &map); void dsp_map(address_map &map); void io_map(address_map &map); -protected: + // driver_device overrides virtual void machine_reset() override; virtual void machine_start() override; diff --git a/src/mame/drivers/ravens.cpp b/src/mame/drivers/ravens.cpp index ff8ad659c0b..836b337bf6d 100644 --- a/src/mame/drivers/ravens.cpp +++ b/src/mame/drivers/ravens.cpp @@ -92,6 +92,10 @@ public: , m_digits(*this, "digit%u", 0U) { } + void ravens(machine_config &config); + void ravens2(machine_config &config); + +private: DECLARE_READ8_MEMBER(port07_r); DECLARE_READ8_MEMBER(port17_r); DECLARE_WRITE8_MEMBER(port1b_w); @@ -104,12 +108,10 @@ public: DECLARE_WRITE_LINE_MEMBER(cass_w); DECLARE_QUICKLOAD_LOAD_MEMBER( ravens ); - void ravens(machine_config &config); - void ravens2(machine_config &config); void ravens2_io(address_map &map); void ravens_io(address_map &map); void ravens_mem(address_map &map); -private: + uint8_t m_term_char; uint8_t m_term_data; virtual void machine_start() override { m_digits.resolve(); } diff --git a/src/mame/drivers/rc702.cpp b/src/mame/drivers/rc702.cpp index 93f6048726b..1c4b2143bb0 100644 --- a/src/mame/drivers/rc702.cpp +++ b/src/mame/drivers/rc702.cpp @@ -58,7 +58,11 @@ public: { } + void rc702(machine_config &config); + void init_rc702(); + +private: DECLARE_MACHINE_RESET(rc702); DECLARE_READ8_MEMBER(memory_read_byte); DECLARE_WRITE8_MEMBER(memory_write_byte); @@ -75,10 +79,9 @@ public: I8275_DRAW_CHARACTER_MEMBER(display_pixels); void kbd_put(u8 data); - void rc702(machine_config &config); void rc702_io(address_map &map); void rc702_mem(address_map &map); -private: + bool m_q_state; bool m_qbar_state; bool m_drq_state; diff --git a/src/mame/drivers/rc759.cpp b/src/mame/drivers/rc759.cpp index d3dfa8bb62c..7eed3950d12 100644 --- a/src/mame/drivers/rc759.cpp +++ b/src/mame/drivers/rc759.cpp @@ -65,6 +65,9 @@ public: m_centronics_data(0xff) { } + void rc759(machine_config &config); + +private: void keyb_put(u8 data); DECLARE_READ8_MEMBER(keyboard_r); @@ -104,15 +107,13 @@ public: DECLARE_WRITE8_MEMBER(rtc_w); DECLARE_READ8_MEMBER(irq_callback); - void rc759(machine_config &config); void rc759_io(address_map &map); void rc759_map(address_map &map); -protected: + // driver_device overrides virtual void machine_start() override; virtual void machine_reset() override; -private: required_device m_maincpu; required_device m_pic; required_device m_nvram; diff --git a/src/mame/drivers/rcorsair.cpp b/src/mame/drivers/rcorsair.cpp index 2bed6893f6f..6eb45d37e5d 100644 --- a/src/mame/drivers/rcorsair.cpp +++ b/src/mame/drivers/rcorsair.cpp @@ -71,13 +71,14 @@ public: m_subcpu(*this, "subcpu") { } + void rcorsair(machine_config &config); + +private: uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void rcorsair(machine_config &config); void rcorsair_main_map(address_map &map); void rcorsair_sub_io_map(address_map &map); void rcorsair_sub_map(address_map &map); -protected: // devices required_device m_maincpu; diff --git a/src/mame/drivers/rd100.cpp b/src/mame/drivers/rd100.cpp index b2aa108c0ea..30cd28f9f32 100644 --- a/src/mame/drivers/rd100.cpp +++ b/src/mame/drivers/rd100.cpp @@ -33,13 +33,16 @@ public: , m_maincpu(*this, "maincpu") { } + void rd100(machine_config &config); + void init_rd100(); + +private: DECLARE_MACHINE_RESET(rd100); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - void rd100(machine_config &config); void mem_map(address_map &map); -private: + required_device m_maincpu; }; diff --git a/src/mame/drivers/rd110.cpp b/src/mame/drivers/rd110.cpp index c81b3d042c1..e1f8f0552a8 100644 --- a/src/mame/drivers/rd110.cpp +++ b/src/mame/drivers/rd110.cpp @@ -62,6 +62,9 @@ public: , m_midi_timer(*this, "midi_timer") , m_maincpu(*this, "maincpu") { } + void d110(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(bank_w); DECLARE_WRITE8_MEMBER(so_w); DECLARE_WRITE16_MEMBER(midi_w); @@ -74,10 +77,8 @@ public: DECLARE_PALETTE_INIT(d110); uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void d110(machine_config &config); void d110_io(address_map &map); void d110_map(address_map &map); -private: uint8_t m_lcd_data_buffer[256]; int m_lcd_data_buffer_pos; diff --git a/src/mame/drivers/re900.cpp b/src/mame/drivers/re900.cpp index ce6814e7f5c..ece86371928 100644 --- a/src/mame/drivers/re900.cpp +++ b/src/mame/drivers/re900.cpp @@ -98,6 +98,12 @@ public: m_lamps(*this, "lamp%u", 0U) { } + void re900(machine_config &config); + void bs94(machine_config &config); + + void init_re900(); + +private: // common DECLARE_READ8_MEMBER(rom_r); DECLARE_WRITE8_MEMBER(cpu_port_0_w); @@ -109,13 +115,9 @@ public: DECLARE_WRITE8_MEMBER(re_mux_port_A_w); DECLARE_WRITE8_MEMBER(re_mux_port_B_w); - void init_re900(); - void re900(machine_config &config); - void bs94(machine_config &config); void mem_io(address_map &map); void mem_prg(address_map &map); -protected: virtual void machine_start() override { m_lamps.resolve(); } required_device m_maincpu; diff --git a/src/mame/drivers/replicator.cpp b/src/mame/drivers/replicator.cpp index 82eda4842d2..6d62bfb5bab 100644 --- a/src/mame/drivers/replicator.cpp +++ b/src/mame/drivers/replicator.cpp @@ -162,6 +162,11 @@ public: { } + void replicator(machine_config &config); + + void init_replicator(); + +private: virtual void machine_start() override; uint8_t m_port_a; @@ -184,10 +189,8 @@ public: DECLARE_READ8_MEMBER(port_r); DECLARE_WRITE8_MEMBER(port_w); - void init_replicator(); virtual void machine_reset() override; DECLARE_PALETTE_INIT(replicator); - void replicator(machine_config &config); void replicator_data_map(address_map &map); void replicator_io_map(address_map &map); void replicator_prg_map(address_map &map); diff --git a/src/mame/drivers/rgum.cpp b/src/mame/drivers/rgum.cpp index ca5f89dde93..8a9ff68067a 100644 --- a/src/mame/drivers/rgum.cpp +++ b/src/mame/drivers/rgum.cpp @@ -35,16 +35,19 @@ public: m_gfxdecode(*this, "gfxdecode"), m_palette(*this, "palette") { } + void rgum(machine_config &config); + + DECLARE_CUSTOM_INPUT_MEMBER(rgum_heartbeat_r); + +private: required_shared_ptr m_vram; required_shared_ptr m_cram; uint8_t m_hbeat; - DECLARE_CUSTOM_INPUT_MEMBER(rgum_heartbeat_r); virtual void video_start() override; uint32_t screen_update_royalgum(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); required_device m_maincpu; required_device m_gfxdecode; required_device m_palette; - void rgum(machine_config &config); void rgum_map(address_map &map); }; diff --git a/src/mame/drivers/riscpc.cpp b/src/mame/drivers/riscpc.cpp index 071f55b4cec..0ccd9663b15 100644 --- a/src/mame/drivers/riscpc.cpp +++ b/src/mame/drivers/riscpc.cpp @@ -34,6 +34,14 @@ public: m_palette(*this, "palette") { } + void rpc700(machine_config &config); + void rpc600(machine_config &config); + void sarpc(machine_config &config); + void sarpc_j233(machine_config &config); + void a7000(machine_config &config); + void a7000p(machine_config &config); + +private: required_device m_maincpu; required_device m_screen; required_device m_palette; @@ -70,12 +78,7 @@ public: TIMER_CALLBACK_MEMBER(IOMD_timer0_callback); TIMER_CALLBACK_MEMBER(IOMD_timer1_callback); TIMER_CALLBACK_MEMBER(flyback_timer_callback); - void rpc700(machine_config &config); - void rpc600(machine_config &config); - void sarpc(machine_config &config); - void sarpc_j233(machine_config &config); - void a7000(machine_config &config); - void a7000p(machine_config &config); + void a7000_mem(address_map &map); }; diff --git a/src/mame/drivers/rmt32.cpp b/src/mame/drivers/rmt32.cpp index 3d5ac515a06..5b31e860d77 100644 --- a/src/mame/drivers/rmt32.cpp +++ b/src/mame/drivers/rmt32.cpp @@ -192,13 +192,16 @@ INPUT_PORTS_END class mt32_state : public driver_device { public: + mt32_state(const machine_config &mconfig, device_type type, const char *tag); + + void mt32(machine_config &config); + +private: required_device cpu; required_device ram; optional_device lcd; required_device midi_timer; - mt32_state(const machine_config &mconfig, device_type type, const char *tag); - virtual void machine_start() override; virtual void machine_reset() override; DECLARE_PALETTE_INIT(mt32); @@ -217,10 +220,9 @@ public: TIMER_DEVICE_CALLBACK_MEMBER(midi_timer_cb); TIMER_DEVICE_CALLBACK_MEMBER(samples_timer_cb); - void mt32(machine_config &config); void mt32_io(address_map &map); void mt32_map(address_map &map); -private: + uint8_t lcd_data_buffer[256]; int lcd_data_buffer_pos; uint8_t midi; diff --git a/src/mame/drivers/rollext.cpp b/src/mame/drivers/rollext.cpp index cfc0f877eba..5fdda435c6b 100644 --- a/src/mame/drivers/rollext.cpp +++ b/src/mame/drivers/rollext.cpp @@ -289,6 +289,11 @@ public: { } + void rollext(machine_config &config); + + void init_rollext(); + +private: required_device m_maincpu; required_shared_ptr m_palette_ram; required_shared_ptr m_texture_mask; @@ -305,13 +310,11 @@ public: std::unique_ptr m_renderer; INTERRUPT_GEN_MEMBER(vblank_interrupt); - void init_rollext(); virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; void preprocess_texture_data(); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - void rollext(machine_config &config); void memmap(address_map &map); }; diff --git a/src/mame/drivers/ron.cpp b/src/mame/drivers/ron.cpp index ec8178c8069..3d8106edec5 100644 --- a/src/mame/drivers/ron.cpp +++ b/src/mame/drivers/ron.cpp @@ -51,6 +51,9 @@ public: { } + void ron(machine_config &config); + +private: // screen updates uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); DECLARE_PALETTE_INIT(ron); @@ -67,12 +70,11 @@ public: DECLARE_READ_LINE_MEMBER(audio_T1_r); DECLARE_WRITE8_MEMBER(ay_pa_w); - void ron(machine_config &config); void ron_audio_io(address_map &map); void ron_audio_map(address_map &map); void ron_io(address_map &map); void ron_map(address_map &map); -protected: + // driver_device overrides virtual void machine_start() override; virtual void machine_reset() override; @@ -92,7 +94,7 @@ protected: required_ioport m_in1; required_ioport m_in2; required_ioport m_in3; -private: + bool m_nmi_enable; uint8_t m_mux_data; uint8_t read_mux(bool which,bool side); diff --git a/src/mame/drivers/rotaryf.cpp b/src/mame/drivers/rotaryf.cpp index bea9a00df82..51eceb238ab 100644 --- a/src/mame/drivers/rotaryf.cpp +++ b/src/mame/drivers/rotaryf.cpp @@ -38,6 +38,9 @@ public: { } + void rotaryf(machine_config &config); + +private: required_device m_maincpu; required_device m_samples; required_device m_sn; @@ -57,7 +60,6 @@ public: uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); TIMER_DEVICE_CALLBACK_MEMBER(rotaryf_interrupt); - void rotaryf(machine_config &config); void rotaryf_io_map(address_map &map); void rotaryf_map(address_map &map); }; diff --git a/src/mame/drivers/roul.cpp b/src/mame/drivers/roul.cpp index c3ac6616a4d..246217105e1 100644 --- a/src/mame/drivers/roul.cpp +++ b/src/mame/drivers/roul.cpp @@ -85,6 +85,9 @@ public: m_lamps(*this, "lamp%u", 0U) { } + void roul(machine_config &config); + +private: DECLARE_READ8_MEMBER(blitter_status_r); DECLARE_WRITE8_MEMBER(blitter_cmd_w); DECLARE_WRITE8_MEMBER(sound_latch_w); @@ -93,17 +96,14 @@ public: DECLARE_PALETTE_INIT(roul); uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void roul(machine_config &config); void roul_cpu_io_map(address_map &map); void roul_map(address_map &map); void sound_cpu_io_map(address_map &map); void sound_map(address_map &map); -protected: virtual void machine_start() override { m_lamps.resolve(); } virtual void video_start() override; -private: required_device m_maincpu; required_device m_soundcpu; required_device m_soundlatch; diff --git a/src/mame/drivers/rowamet.cpp b/src/mame/drivers/rowamet.cpp index 462810750a8..3f8794fa794 100644 --- a/src/mame/drivers/rowamet.cpp +++ b/src/mame/drivers/rowamet.cpp @@ -47,7 +47,7 @@ public: void rowamet(machine_config &config); -protected: +private: DECLARE_READ8_MEMBER(sound_r); DECLARE_WRITE8_MEMBER(mute_w); DECLARE_READ8_MEMBER(io_r); @@ -57,7 +57,6 @@ protected: void rowamet_sub_io(address_map &map); void rowamet_sub_map(address_map &map); -private: uint8_t m_out_offs; uint8_t m_sndcmd; uint8_t m_io[16]; diff --git a/src/mame/drivers/royalmah.cpp b/src/mame/drivers/royalmah.cpp index 1c5eba84b91..bfdd6aa8d60 100644 --- a/src/mame/drivers/royalmah.cpp +++ b/src/mame/drivers/royalmah.cpp @@ -122,7 +122,41 @@ public: m_soundlatch(*this, "soundlatch") { } + void mjdiplob(machine_config &config); + void tahjong(machine_config &config); + void tontonb(machine_config &config); + void mjderngr(machine_config &config); + void mjyarou(machine_config &config); + void janoh(machine_config &config); + void mjtensin(machine_config &config); + void mjvegasa(machine_config &config); + void jansou(machine_config &config); + void cafetime(machine_config &config); + void seljan(machine_config &config); + void majs101b(machine_config &config); + void dondenmj(machine_config &config); + void daisyari(machine_config &config); + void mjdejavu(machine_config &config); + void mjapinky(machine_config &config); + void royalmah(machine_config &config); + void mjifb(machine_config &config); + void janptr96(machine_config &config); + void ippatsu(machine_config &config); + void suzume(machine_config &config); + void mjclub(machine_config &config); + void makaijan(machine_config &config); + void janyoup2(machine_config &config); + void init_tahjong(); + void init_dynax(); + void init_jansou(); + void init_suzume(); + void init_ippatsu(); + void init_mjifb(); + void init_tontonb(); + void init_janptr96(); + +private: DECLARE_READ8_MEMBER(player_1_port_r); DECLARE_READ8_MEMBER(player_2_port_r); DECLARE_WRITE8_MEMBER(input_port_select_w); @@ -207,14 +241,6 @@ public: DECLARE_WRITE8_MEMBER(mjvegasa_12400_w); DECLARE_READ8_MEMBER(mjvegasa_12500_r); - void init_tahjong(); - void init_dynax(); - void init_jansou(); - void init_suzume(); - void init_ippatsu(); - void init_mjifb(); - void init_tontonb(); - void init_janptr96(); DECLARE_PALETTE_INIT(royalmah); DECLARE_PALETTE_INIT(mjderngr); @@ -222,30 +248,7 @@ public: INTERRUPT_GEN_MEMBER(suzume_irq); - void mjdiplob(machine_config &config); - void tahjong(machine_config &config); - void tontonb(machine_config &config); - void mjderngr(machine_config &config); - void mjyarou(machine_config &config); - void janoh(machine_config &config); - void mjtensin(machine_config &config); - void mjvegasa(machine_config &config); - void jansou(machine_config &config); - void cafetime(machine_config &config); - void seljan(machine_config &config); - void majs101b(machine_config &config); - void dondenmj(machine_config &config); - void daisyari(machine_config &config); - void mjdejavu(machine_config &config); - void mjapinky(machine_config &config); - void royalmah(machine_config &config); - void mjifb(machine_config &config); - void janptr96(machine_config &config); - void ippatsu(machine_config &config); - void suzume(machine_config &config); - void mjclub(machine_config &config); - void makaijan(machine_config &config); - void janyoup2(machine_config &config); + void cafetime_map(address_map &map); void daisyari_iomap(address_map &map); void dondenmj_iomap(address_map &map); @@ -279,10 +282,9 @@ public: void tahjong_iomap(address_map &map); void tahjong_map(address_map &map); void tontonb_iomap(address_map &map); -protected: + virtual void machine_start() override; -private: required_device m_maincpu; required_device m_ay; required_shared_ptr m_videoram; diff --git a/src/mame/drivers/rsc55.cpp b/src/mame/drivers/rsc55.cpp index b0ee9259ecd..bc60c749375 100644 --- a/src/mame/drivers/rsc55.cpp +++ b/src/mame/drivers/rsc55.cpp @@ -46,10 +46,13 @@ INPUT_PORTS_END class sc55_state : public driver_device { public: - required_device m_maincpu; - sc55_state(const machine_config &mconfig, device_type type, const char *tag); + void sc55(machine_config &config); + +private: + required_device m_maincpu; + void sc55_io(address_map &map); void sc55_map(address_map &map); }; diff --git a/src/mame/drivers/rt1715.cpp b/src/mame/drivers/rt1715.cpp index 3f6b0034ba2..187cc87855e 100644 --- a/src/mame/drivers/rt1715.cpp +++ b/src/mame/drivers/rt1715.cpp @@ -36,6 +36,10 @@ public: { } + void rt1715(machine_config &config); + void rt1715w(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(rt1715_floppy_enable); DECLARE_READ8_MEMBER(k7658_led1_r); DECLARE_READ8_MEMBER(k7658_led2_r); @@ -45,17 +49,14 @@ public: DECLARE_PALETTE_INIT(rt1715); I8275_DRAW_CHARACTER_MEMBER( crtc_display_pixels ); - void rt1715(machine_config &config); - void rt1715w(machine_config &config); void k7658_io(address_map &map); void k7658_mem(address_map &map); void rt1715_io(address_map &map); void rt1715_mem(address_map &map); -protected: + virtual void machine_start() override; virtual void machine_reset() override; -private: int m_led1_val; int m_led2_val; required_device m_maincpu; diff --git a/src/mame/drivers/rvoice.cpp b/src/mame/drivers/rvoice.cpp index 878d3dace62..0797051cf4a 100644 --- a/src/mame/drivers/rvoice.cpp +++ b/src/mame/drivers/rvoice.cpp @@ -80,15 +80,18 @@ public: : driver_device(mconfig, type, tag) , m_maincpu(*this, "maincpu") { } + void rvoicepc(machine_config &config); + + void init_rvoicepc(); + +private: hd63701y0_t m_hd63701y0; rvoicepc_t m_rvoicepc; DECLARE_READ8_MEMBER(main_hd63701_internal_registers_r); DECLARE_WRITE8_MEMBER(main_hd63701_internal_registers_w); - void init_rvoicepc(); virtual void machine_reset() override; void null_kbd_put(u8 data); required_device m_maincpu; - void rvoicepc(machine_config &config); void hd63701_main_io(address_map &map); void hd63701_main_mem(address_map &map); }; diff --git a/src/mame/drivers/rx78.cpp b/src/mame/drivers/rx78.cpp index 62a00a96cd2..cae414d87ba 100644 --- a/src/mame/drivers/rx78.cpp +++ b/src/mame/drivers/rx78.cpp @@ -88,7 +88,7 @@ public: void init_rx78(); void rx78(machine_config &config); -protected: +private: DECLARE_READ8_MEMBER( key_r ); DECLARE_READ8_MEMBER( cass_r ); DECLARE_READ8_MEMBER( vram_r ); @@ -107,7 +107,6 @@ protected: void rx78_io(address_map &map); void rx78_mem(address_map &map); -private: uint8_t m_vram_read_bank; uint8_t m_vram_write_bank; uint8_t m_pal_reg[7]; diff --git a/src/mame/drivers/rzone.cpp b/src/mame/drivers/rzone.cpp index 6b0b0364475..a6caf5bfe5f 100644 --- a/src/mame/drivers/rzone.cpp +++ b/src/mame/drivers/rzone.cpp @@ -46,6 +46,11 @@ public: m_led_off(*this, "led_off") { } + void rzbatfor(machine_config &config); + void rztoshden(machine_config &config); + void rzindy500(machine_config &config); + +private: output_finder<> m_led_out; required_device m_led_off; @@ -68,11 +73,6 @@ public: DECLARE_WRITE8_MEMBER(t2_write_r); DECLARE_WRITE8_MEMBER(t2_write_s); - void rzbatfor(machine_config &config); - void rztoshden(machine_config &config); - void rzindy500(machine_config &config); - -protected: virtual void machine_start() override; }; diff --git a/src/mame/includes/n8080.h b/src/mame/includes/n8080.h index 7a1652a770b..2bfa98ba5d1 100644 --- a/src/mame/includes/n8080.h +++ b/src/mame/includes/n8080.h @@ -23,6 +23,15 @@ public: m_screen(*this, "screen"), m_palette(*this, "palette") { } + void sheriff(machine_config &config); + void sheriff_sound(machine_config &config); + void westgun2(machine_config &config); + void helifire(machine_config &config); + void helifire_sound(machine_config &config); + void spacefev(machine_config &config); + void spacefev_sound(machine_config &config); + +private: /* memory pointers */ required_shared_ptr m_videoram; optional_shared_ptr m_colorram; // for helifire @@ -122,13 +131,7 @@ public: TIMER_CALLBACK_MEMBER( delayed_sound_1_callback ); void delayed_sound_2( int data ); TIMER_CALLBACK_MEMBER( delayed_sound_2_callback ); - void sheriff(machine_config &config); - void sheriff_sound(machine_config &config); - void westgun2(machine_config &config); - void helifire(machine_config &config); - void helifire_sound(machine_config &config); - void spacefev(machine_config &config); - void spacefev_sound(machine_config &config); + void helifire_main_cpu_map(address_map &map); void helifire_sound_io_map(address_map &map); void main_cpu_map(address_map &map); diff --git a/src/mame/includes/namcofl.h b/src/mame/includes/namcofl.h index c8b8a6a53fe..2b7ac7d48f2 100644 --- a/src/mame/includes/namcofl.h +++ b/src/mame/includes/namcofl.h @@ -35,6 +35,12 @@ public: m_wheel(*this, "WHEEL"), m_shareram(*this, "shareram", 32) { } + void namcofl(machine_config &config); + + void init_speedrcr(); + void init_finalapr(); + +private: required_device m_c116; required_ioport m_in0; required_ioport m_in1; @@ -69,8 +75,6 @@ public: DECLARE_READ8_MEMBER(dac1_r); DECLARE_READ8_MEMBER(dac0_r); DECLARE_WRITE32_MEMBER(namcofl_spritebank_w); - void init_speedrcr(); - void init_finalapr(); DECLARE_MACHINE_START(namcofl); DECLARE_MACHINE_RESET(namcofl); DECLARE_VIDEO_START(namcofl); @@ -84,7 +88,6 @@ public: void common_init(); int FLobjcode2tile(int code); void TilemapCB(uint16_t code, int *tile, int *mask); - void namcofl(machine_config &config); void namcoc75_am(address_map &map); void namcoc75_io(address_map &map); void namcofl_mem(address_map &map); diff --git a/src/mame/includes/namcona1.h b/src/mame/includes/namcona1.h index cad157f4150..1d0327df13b 100644 --- a/src/mame/includes/namcona1.h +++ b/src/mame/includes/namcona1.h @@ -38,6 +38,18 @@ public: m_maskrom(*this, "maskrom") { } + void namcona1(machine_config &config); + + void init_bkrtmaq(); + void init_fa(); + void init_cgangpzl(); + void init_tinklpit(); + void init_swcourt(); + void init_exvania(); + void init_emeraldj(); + void init_swcourtb(); + +protected: DECLARE_READ16_MEMBER(custom_key_r); DECLARE_WRITE16_MEMBER(custom_key_w); DECLARE_WRITE16_MEMBER(vreg_w); @@ -64,25 +76,14 @@ public: DECLARE_READ16_MEMBER(snd_r); DECLARE_WRITE16_MEMBER(snd_w); - void init_bkrtmaq(); - void init_fa(); - void init_cgangpzl(); - void init_tinklpit(); - void init_swcourt(); - void init_exvania(); - void init_emeraldj(); - void init_swcourtb(); - uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); TIMER_DEVICE_CALLBACK_MEMBER(interrupt); - void namcona1(machine_config &config); - void namcona1_main_map(address_map &map); void namcona1_mcu_io_map(address_map &map); void namcona1_mcu_map(address_map &map); -protected: + virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; @@ -105,8 +106,6 @@ protected: int m_gametype; -private: - required_device m_maincpu; required_device m_mcu; required_device m_gfxdecode; @@ -172,12 +171,12 @@ public: : namcona1_state(mconfig, type, tag) {} + void namcona2(machine_config &config); + void init_knckhead(); void init_emeralda(); void init_numanath(); void init_quiztou(); - - void namcona2(machine_config &config); }; class xday2_namcona2_state : public namcona2_state @@ -190,12 +189,15 @@ public: static constexpr feature_type unemulated_features() { return feature::PRINTER; } + void xday2(machine_config &config); + + void init_xday2(); + +private: required_device m_rtc; DECLARE_READ8_MEMBER(printer_r); DECLARE_WRITE8_MEMBER(printer_w); - void init_xday2(); - void xday2(machine_config &config); void xday2_main_map(address_map &map); }; diff --git a/src/mame/includes/namconb1.h b/src/mame/includes/namconb1.h index d2b4a9c69aa..af27e951805 100644 --- a/src/mame/includes/namconb1.h +++ b/src/mame/includes/namconb1.h @@ -46,6 +46,21 @@ public: m_tilebank32(*this, "tilebank32"), m_namconb_shareram(*this, "namconb_share") { } + void namconb1(machine_config &config); + void namconb2(machine_config &config); + + void init_sws95(); + void init_machbrkr(); + void init_sws97(); + void init_sws96(); + void init_vshoot(); + void init_nebulray(); + void init_gunbulet(); + void init_gslgr94j(); + void init_outfxies(); + void init_gslgr94u(); + +private: required_device m_c116; required_device m_eeprom; required_ioport m_p1; @@ -92,16 +107,6 @@ public: DECLARE_READ8_MEMBER(dac0_r); virtual void machine_start() override; - void init_sws95(); - void init_machbrkr(); - void init_sws97(); - void init_sws96(); - void init_vshoot(); - void init_nebulray(); - void init_gunbulet(); - void init_gslgr94j(); - void init_outfxies(); - void init_gslgr94u(); DECLARE_MACHINE_RESET(namconb); DECLARE_VIDEO_START(namconb1); DECLARE_VIDEO_START(namconb2); @@ -118,8 +123,6 @@ public: int NB2objcode2tile(int code); void NB1TilemapCB(uint16_t code, int *tile, int *mask); void NB2TilemapCB(uint16_t code, int *tile, int *mask); - void namconb1(machine_config &config); - void namconb2(machine_config &config); void namcoc75_am(address_map &map); void namcoc75_io(address_map &map); void namconb1_am(address_map &map); diff --git a/src/mame/includes/namcond1.h b/src/mame/includes/namcond1.h index f838e6ea8ea..b762045aace 100644 --- a/src/mame/includes/namcond1.h +++ b/src/mame/includes/namcond1.h @@ -23,6 +23,10 @@ public: m_zpr2(*this, "zpr2"), m_shared_ram(*this, "shared_ram") { } + void abcheck(machine_config &config); + void namcond1(machine_config &config); + +private: required_device m_maincpu; required_device m_mcu; required_device m_ygv608; @@ -46,8 +50,6 @@ public: DECLARE_WRITE_LINE_MEMBER( vblank_irq_w ); DECLARE_WRITE_LINE_MEMBER( raster_irq_w ); INTERRUPT_GEN_MEMBER(mcu_interrupt); - void abcheck(machine_config &config); - void namcond1(machine_config &config); void abcheck_map(address_map &map); void namcond1_map(address_map &map); void nd1h8iomap(address_map &map); diff --git a/src/mame/includes/namcos1.h b/src/mame/includes/namcos1.h index fc7bcec944c..79fc9d1922a 100644 --- a/src/mame/includes/namcos1.h +++ b/src/mame/includes/namcos1.h @@ -34,6 +34,33 @@ public: m_dsw_sel(*this, "dsw_sel") { } + void ns1(machine_config &config); + + void init_pacmania(); + void init_ws(); + void init_wldcourt(); + void init_tankfrc4(); + void init_blazer(); + void init_dangseed(); + void init_splatter(); + void init_alice(); + void init_faceoff(); + void init_puzlclub(); + void init_bakutotu(); + void init_rompers(); + void init_ws90(); + void init_tankfrce(); + void init_soukobdx(); + void init_shadowld(); + void init_berabohm(); + void init_galaga88(); + void init_blastoff(); + void init_quester(); + void init_ws89(); + void init_dspirit(); + void init_pistoldm(); + +private: required_device m_maincpu; required_device m_subcpu; required_device m_audiocpu; @@ -103,29 +130,6 @@ public: DECLARE_READ8_MEMBER(key_type3_r); DECLARE_WRITE8_MEMBER(key_type3_w); - void init_pacmania(); - void init_ws(); - void init_wldcourt(); - void init_tankfrc4(); - void init_blazer(); - void init_dangseed(); - void init_splatter(); - void init_alice(); - void init_faceoff(); - void init_puzlclub(); - void init_bakutotu(); - void init_rompers(); - void init_ws90(); - void init_tankfrce(); - void init_soukobdx(); - void init_shadowld(); - void init_berabohm(); - void init_galaga88(); - void init_blastoff(); - void init_quester(); - void init_ws89(); - void init_dspirit(); - void init_pistoldm(); virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; @@ -142,13 +146,12 @@ public: uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); DECLARE_WRITE_LINE_MEMBER(screen_vblank); - void ns1(machine_config &config); void main_map(address_map &map); void mcu_map(address_map &map); void mcu_port_map(address_map &map); void sound_map(address_map &map); void sub_map(address_map &map); void virtual_map(address_map &map); -private: + inline void get_tile_info(tile_data &tileinfo,int tile_index,uint8_t *info_vram); }; diff --git a/src/mame/includes/namcos2.h b/src/mame/includes/namcos2.h index a4c0114026b..c0edee4fc5b 100644 --- a/src/mame/includes/namcos2.h +++ b/src/mame/includes/namcos2.h @@ -104,12 +104,12 @@ public: : driver_device(mconfig, type, tag), m_dspmaster(*this, "dspmaster"), m_dspslave(*this, "dspslave"), + m_gametype(0), m_c68(*this, "c68"), m_master_intc(*this, "master_intc"), m_slave_intc(*this, "slave_intc"), m_sci(*this, "sci"), m_gpu(*this, "gpu"), - m_gametype(0), m_c169_roz_videoram(*this, "rozvideoram", 0), m_c169_roz_gfxbank(0), m_c169_roz_mask(nullptr), @@ -125,6 +125,10 @@ public: optional_device m_dspmaster; optional_device m_dspslave; + + int m_gametype; + +protected: optional_device m_c68; optional_device m_master_intc; optional_device m_slave_intc; @@ -133,7 +137,6 @@ public: // game type helpers bool is_system21(); - int m_gametype; int m_mcu_analog_ctrl; int m_mcu_analog_data; @@ -148,7 +151,6 @@ public: // C123 Tilemap Emulation // TODO: merge with namcos1.cpp implementation and convert to device -public: DECLARE_WRITE16_MEMBER( c123_tilemap_videoram_w ); DECLARE_READ16_MEMBER( c123_tilemap_videoram_r ); DECLARE_WRITE16_MEMBER( c123_tilemap_control_w ); @@ -191,7 +193,6 @@ public: c123_mTilemapInfo m_c123_TilemapInfo; // C169 ROZ Layer Emulation -public: void c169_roz_init(int gfxbank, const char *maskregion); void c169_roz_draw(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int pri); DECLARE_READ16_MEMBER( c169_roz_control_r ); @@ -201,7 +202,6 @@ public: DECLARE_READ16_MEMBER( c169_roz_videoram_r ); DECLARE_WRITE16_MEMBER( c169_roz_videoram_w ); -protected: struct roz_parameters { uint32_t left, top, size; @@ -226,7 +226,6 @@ protected: uint8_t *m_c169_roz_mask; // C355 Motion Object Emulation -public: typedef delegate c355_obj_code2tile_delegate; // for pal_xor, supply either 0x0 (normal) or 0xf (palette mapping reversed) void c355_obj_init(int gfxbank, int pal_xor, c355_obj_code2tile_delegate code2tile); @@ -239,7 +238,7 @@ public: DECLARE_WRITE16_MEMBER( c355_obj_position_w ); DECLARE_MACHINE_START(namcos2); DECLARE_MACHINE_RESET(namcos2); -protected: + // C355 Motion Object internals template void c355_obj_draw_sprite(screen_device &screen, _BitmapClass &bitmap, const rectangle &cliprect, const uint16_t *pSource, int pri, int zpos); @@ -255,7 +254,6 @@ protected: uint8_t m_player_mux; inline void namcoic_get_tile_info(tile_data &tileinfo,int tile_index,uint16_t *vram); -public: // general void zdrawgfxzoom(screen_device &screen, bitmap_ind16 &dest_bmp, const rectangle &clip, gfx_element *gfx, uint32_t code, uint32_t color, int flipx, int flipy, int sx, int sy, int scalex, int scaley, int zpos); void zdrawgfxzoom(screen_device &screen, bitmap_rgb32 &dest_bmp, const rectangle &clip, gfx_element *gfx, uint32_t code, uint32_t color, int flipx, int flipy, int sx, int sy, int scalex, int scaley, int zpos); @@ -293,13 +291,18 @@ public: m_c45_road(*this, "c45_road") { } - DECLARE_READ8_MEMBER(c68_p5_r); - DECLARE_WRITE8_MEMBER(c68_p3_w); - DECLARE_READ16_MEMBER(dpram_word_r); - DECLARE_WRITE16_MEMBER(dpram_word_w); - DECLARE_READ8_MEMBER(dpram_byte_r); - DECLARE_WRITE8_MEMBER(dpram_byte_w); - DECLARE_READ8_MEMBER(ack_mcu_vbl_r); + void configure_c148_standard(machine_config &config); + void metlhawk(machine_config &config); + void gollygho(machine_config &config); + void assaultp(machine_config &config); + void sgunner2(machine_config &config); + void base2(machine_config &config); + void finallap(machine_config &config); + void luckywld(machine_config &config); + void base3(machine_config &config); + void sgunner(machine_config &config); + void base(machine_config &config); + void init_cosmogng(); void init_sgunner2(); void init_kyukaidk(); @@ -335,6 +338,15 @@ public: void init_marvland(); void init_rthun2(); +private: + DECLARE_READ8_MEMBER(c68_p5_r); + DECLARE_WRITE8_MEMBER(c68_p3_w); + DECLARE_READ16_MEMBER(dpram_word_r); + DECLARE_WRITE16_MEMBER(dpram_word_w); + DECLARE_READ8_MEMBER(dpram_byte_r); + DECLARE_WRITE8_MEMBER(dpram_byte_w); + DECLARE_READ8_MEMBER(ack_mcu_vbl_r); + virtual void video_start() override; void video_start_finallap(); void video_start_luckywld(); @@ -389,17 +401,6 @@ public: void GollyGhostUpdateDiorama_c0( int data ); void TilemapCB(uint16_t code, int *tile, int *mask); - void configure_c148_standard(machine_config &config); - void metlhawk(machine_config &config); - void gollygho(machine_config &config); - void assaultp(machine_config &config); - void sgunner2(machine_config &config); - void base2(machine_config &config); - void finallap(machine_config &config); - void luckywld(machine_config &config); - void base3(machine_config &config); - void sgunner(machine_config &config); - void base(machine_config &config); void c68_default_am(address_map &map); void common_default_am(address_map &map); void common_finallap_am(address_map &map); diff --git a/src/mame/includes/namcos21.h b/src/mame/includes/namcos21.h index a42fb078c29..fe987032a30 100644 --- a/src/mame/includes/namcos21.h +++ b/src/mame/includes/namcos21.h @@ -47,11 +47,11 @@ class namcos21_state : public namcos2_shared_state public: namcos21_state(const machine_config &mconfig, device_type type, const char *tag) : namcos2_shared_state(mconfig, type, tag), + m_master_dsp_code(*this,"master_dsp_code"), m_winrun_dspbios(*this,"winrun_dspbios"), m_winrun_polydata(*this,"winrun_polydata"), m_dspram16(*this,"dspram16"), m_mpDualPortRAM(*this,"mpdualportram"), - m_master_dsp_code(*this,"master_dsp_code"), m_ptrom24(*this,"point24"), m_ptrom16(*this,"point16"), m_dsp(*this, "dsp"), @@ -59,11 +59,28 @@ public: m_gpu_intc(*this, "gpu_intc") { } + void configure_c148_standard(machine_config &config); + void driveyes(machine_config &config); + void winrun(machine_config &config); + void namcos21(machine_config &config); + + void init_driveyes(); + void init_winrun(); + void init_starblad(); + void init_solvalou(); + void init_cybsled(); + void init_aircomb(); + + optional_shared_ptr m_master_dsp_code; + int m_mbNeedsKickstart; + void clear_poly_framebuffer(); + std::unique_ptr m_mpDspState; + +private: optional_shared_ptr m_winrun_dspbios; optional_shared_ptr m_winrun_polydata; optional_shared_ptr m_dspram16; required_shared_ptr m_mpDualPortRAM; - optional_shared_ptr m_master_dsp_code; optional_region_ptr m_ptrom24; optional_region_ptr m_ptrom16; @@ -84,8 +101,6 @@ public: std::unique_ptr m_pointram; int m_pointram_idx; uint16_t m_pointram_control; - std::unique_ptr m_mpDspState; - int m_mbNeedsKickstart; uint32_t m_pointrom_idx; uint8_t m_mPointRomMSB; int m_mbPointRomDataAvailable; @@ -165,19 +180,12 @@ public: uint8_t m_gearbox_state; DECLARE_CUSTOM_INPUT_MEMBER(driveyes_gearbox_r); - void init_driveyes(); - void init_winrun(); - void init_starblad(); - void init_solvalou(); - void init_cybsled(); - void init_aircomb(); DECLARE_MACHINE_START(namcos21); DECLARE_VIDEO_START(namcos21); uint32_t screen_update_namcos21(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_winrun(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_driveyes(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void allocate_poly_framebuffer(); - void clear_poly_framebuffer(); void copy_visible_poly_framebuffer(bitmap_ind16 &bitmap, const rectangle &clip, int zlo, int zhi); void winrun_bitmap_draw(bitmap_ind16 &bitmap, const rectangle &cliprect); void renderscanline_flat(const edge *e1, const edge *e2, int sy, unsigned color, int depthcueenable); @@ -192,10 +200,6 @@ public: void render_slave_output(uint16_t data); void winrun_flush_poly(); void init(int game_type); - void configure_c148_standard(machine_config &config); - void driveyes(machine_config &config); - void winrun(machine_config &config); - void namcos21(machine_config &config); void common_map(address_map &map); void driveyes_common_map(address_map &map); void driveyes_master_map(address_map &map); diff --git a/src/mame/includes/namcos22.h b/src/mame/includes/namcos22.h index c02c791dfd6..f679d498399 100644 --- a/src/mame/includes/namcos22.h +++ b/src/mame/includes/namcos22.h @@ -176,11 +176,11 @@ class namcos22_state : public driver_device public: namcos22_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag) - , m_spriteram(*this, "spriteram") - , m_czattr(*this, "czattr") + , m_palette(*this, "palette") , m_czram(*this, "czram") + , m_czattr(*this, "czattr") + , m_spriteram(*this, "spriteram") , m_gfxdecode(*this, "gfxdecode") - , m_palette(*this, "palette") , m_maincpu(*this, "maincpu") , m_master(*this, "master") , m_slave(*this, "slave") @@ -211,35 +211,71 @@ public: , m_cpuled(*this, "cpuled%u", 0U) { } - optional_shared_ptr m_spriteram; - optional_shared_ptr m_czattr; - optional_shared_ptr m_czram; - required_device m_gfxdecode; - required_device m_palette; + void namcos22s(machine_config &config); + void propcycl(machine_config &config); + void dirtdash(machine_config &config); + void airco22b(machine_config &config); + void cybrcycc(machine_config &config); + void tokyowar(machine_config &config); + void cybrcomm(machine_config &config); + void alpine(machine_config &config); + void alpinesa(machine_config &config); + void adillor(machine_config &config); + void timecris(machine_config &config); + void namcos22(machine_config &config); + + void init_acedrvr(); + void init_aquajet(); + void init_adillor(); + void init_cybrcyc(); + void init_raveracw(); + void init_ridger2j(); + void init_victlap(); + void init_cybrcomm(); + void init_timecris(); + void init_tokyowar(); + void init_propcycl(); + void init_alpiner2(); + void init_dirtdash(); + void init_airco22(); + void init_alpiner(); + void init_ridgeraj(); + void init_alpinesa(); + + DECLARE_CUSTOM_INPUT_MEMBER(alpine_motor_read); + + // renderer int m_poly_translucency; uint16_t *m_texture_tilemap; std::unique_ptr m_texture_tileattr; uint8_t *m_texture_tiledata; std::unique_ptr m_texture_ayx_to_pixel; - std::unique_ptr m_recalc_czram[4]; int m_is_ss22; int m_mixer_flags; - int m_fog_r; - int m_fog_g; - int m_fog_b; - int m_fog_r_per_cztype[4]; - int m_fog_g_per_cztype[4]; - int m_fog_b_per_cztype[4]; - uint32_t m_fog_colormask; + int m_screen_fade_factor; int m_screen_fade_r; int m_screen_fade_g; int m_screen_fade_b; - int m_screen_fade_factor; + int m_poly_fade_enabled; int m_poly_fade_r; int m_poly_fade_g; int m_poly_fade_b; - int m_poly_fade_enabled; + uint32_t m_fog_colormask; + int m_fog_r; + int m_fog_g; + int m_fog_b; + std::unique_ptr m_recalc_czram[4]; + int m_fog_r_per_cztype[4]; + int m_fog_g_per_cztype[4]; + int m_fog_b_per_cztype[4]; + required_device m_palette; + optional_shared_ptr m_czram; + optional_shared_ptr m_czattr; + optional_shared_ptr m_spriteram; + required_device m_gfxdecode; + +private: DECLARE_WRITE32_MEMBER(namcos22s_czram_w); DECLARE_READ32_MEMBER(namcos22s_czram_r); DECLARE_READ32_MEMBER(namcos22s_vics_control_r); @@ -256,7 +292,6 @@ public: DECLARE_WRITE16_MEMBER(namcos22_dspram16_bank_w); DECLARE_READ16_MEMBER(namcos22_dspram16_r); DECLARE_WRITE16_MEMBER(namcos22_dspram16_w); - DECLARE_CUSTOM_INPUT_MEMBER(alpine_motor_read); DECLARE_READ16_MEMBER(pdp_status_r); DECLARE_READ16_MEMBER(pdp_begin_r); DECLARE_READ16_MEMBER(slave_external_ram_r); @@ -379,24 +414,6 @@ public: void install_141_speedup(); void namcos22_init(int game_type); - void init_acedrvr(); - void init_aquajet(); - void init_adillor(); - void init_cybrcyc(); - void init_raveracw(); - void init_ridger2j(); - void init_victlap(); - void init_cybrcomm(); - void init_timecris(); - void init_tokyowar(); - void init_propcycl(); - void init_alpiner2(); - void init_dirtdash(); - void init_airco22(); - void init_alpiner(); - void init_ridgeraj(); - void init_alpinesa(); - TILE_GET_INFO_MEMBER(get_text_tile_info); DECLARE_MACHINE_START(adillor); uint32_t screen_update_namcos22s(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); @@ -411,18 +428,6 @@ public: TIMER_DEVICE_CALLBACK_MEMBER(dsp_master_serial_irq); TIMER_DEVICE_CALLBACK_MEMBER(dsp_slave_serial_irq); TIMER_DEVICE_CALLBACK_MEMBER(mcu_irq); - void namcos22s(machine_config &config); - void propcycl(machine_config &config); - void dirtdash(machine_config &config); - void airco22b(machine_config &config); - void cybrcycc(machine_config &config); - void tokyowar(machine_config &config); - void cybrcomm(machine_config &config); - void alpine(machine_config &config); - void alpinesa(machine_config &config); - void adillor(machine_config &config); - void timecris(machine_config &config); - void namcos22(machine_config &config); void alpine_io_map(address_map &map); void alpinesa_am(address_map &map); void iomcu_s22_io(address_map &map); @@ -442,7 +447,6 @@ public: void slave_dsp_program(address_map &map); void timecris_am(address_map &map); -protected: virtual void machine_reset() override; virtual void machine_start() override; virtual void video_start() override; diff --git a/src/mame/includes/naomi.h b/src/mame/includes/naomi.h index f0c6ba2b04b..8486f35e6fa 100644 --- a/src/mame/includes/naomi.h +++ b/src/mame/includes/naomi.h @@ -46,10 +46,15 @@ class naomi_state : public dc_state m_rombase(*this, "rombase") { } - required_device m_eeprom; - optional_shared_ptr m_rombase; + void naomi_base(machine_config &config); + void naomim2(machine_config &config); + void naomim2_kb(machine_config &config); + void naomi(machine_config &config); + void naomim1(machine_config &config); + void naomigd(machine_config &config); + void naomigd_kb(machine_config &config); + void naomim4(machine_config &config); - DECLARE_MACHINE_RESET(naomi); void init_naomigd(); void init_ggxx(); void init_ggxxrl(); @@ -60,37 +65,38 @@ class naomi_state : public dc_state void init_hotd2(); void init_naomi_mp(); + DECLARE_CUSTOM_INPUT_MEMBER(naomi_mp_r); + DECLARE_CUSTOM_INPUT_MEMBER(naomi_kb_r); + DECLARE_INPUT_CHANGED_MEMBER(naomi_mp_w); + + DECLARE_READ64_MEMBER( naomi2_biose_idle_skip_r ); + +protected: + required_device m_eeprom; + optional_shared_ptr m_rombase; + + DECLARE_MACHINE_RESET(naomi); + DECLARE_READ16_MEMBER( naomi_g2bus_r ); DECLARE_READ64_MEMBER( eeprom_93c46a_r ); DECLARE_WRITE64_MEMBER( eeprom_93c46a_w ); uint8_t m_mp_mux; - DECLARE_CUSTOM_INPUT_MEMBER(naomi_mp_r); - DECLARE_CUSTOM_INPUT_MEMBER(naomi_kb_r); - DECLARE_INPUT_CHANGED_MEMBER(naomi_mp_w); uint8_t asciihex_to_dec(uint8_t in); void create_pic_from_retdat(); DECLARE_READ64_MEMBER( naomi_biose_idle_skip_r ); DECLARE_READ64_MEMBER( naomi_biosh_idle_skip_r ); - DECLARE_READ64_MEMBER( naomi2_biose_idle_skip_r ); DECLARE_READ64_MEMBER( naomigd_ggxxsla_idle_skip_r ); DECLARE_READ64_MEMBER( naomigd_ggxx_idle_skip_r ); DECLARE_READ64_MEMBER( naomigd_ggxxrl_idle_skip_r ); DECLARE_READ64_MEMBER( naomigd_sfz3ugd_idle_skip_r ); DECLARE_READ64_MEMBER( hotd2_idle_skip_r ); - void naomi_base(machine_config &config); - void naomim2(machine_config &config); - void naomim2_kb(machine_config &config); - void naomi(machine_config &config); - void naomim1(machine_config &config); - void naomigd(machine_config &config); - void naomigd_kb(machine_config &config); - void naomim4(machine_config &config); + void naomi_map(address_map &map); void naomi_port(address_map &map); -protected: + void set_drc_options(); }; @@ -104,17 +110,20 @@ public: m_elan_ram(*this, "elan_ram"), m_powervr2_slave(*this, "powervr2_slave") { } + void naomi2_base(machine_config &config); + void naomi2m2(machine_config &config); + void naomi2gd(machine_config &config); + void naomi2m1(machine_config &config); + + void init_naomi2(); + +private: required_shared_ptr m_pvr2_texture_ram; required_shared_ptr m_pvr2_framebuffer_ram; required_shared_ptr m_elan_ram; required_device m_powervr2_slave; - void init_naomi2(); DECLARE_WRITE32_MEMBER(both_pvr2_ta_w); - void naomi2_base(machine_config &config); - void naomi2m2(machine_config &config); - void naomi2gd(machine_config &config); - void naomi2m1(machine_config &config); void naomi2_map(address_map &map); }; @@ -126,6 +135,14 @@ public: m_awflash(*this, "awflash") { } + void aw_base(machine_config &config); + void aw1c(machine_config &config); + void aw2c(machine_config &config); + + void init_atomiswave(); + void init_xtrmhnt2(); + +private: required_device m_awflash; DECLARE_READ64_MEMBER( aw_flash_r ); @@ -133,17 +150,11 @@ public: DECLARE_READ64_MEMBER( aw_modem_r ); DECLARE_WRITE64_MEMBER( aw_modem_w ); - void init_atomiswave(); - void init_xtrmhnt2(); - DECLARE_READ64_MEMBER( xtrmhnt2_hack_r ); - void aw_base(machine_config &config); - void aw1c(machine_config &config); - void aw2c(machine_config &config); void aw_map(address_map &map); void aw_port(address_map &map); -protected: + uint8_t aw_ctrl_type; inline int decode_reg32_64(uint32_t offset, uint64_t mem_mask, uint64_t *shift); }; diff --git a/src/mame/includes/nbmj8688.h b/src/mame/includes/nbmj8688.h index 2184560b275..f6e7a01c8ce 100644 --- a/src/mame/includes/nbmj8688.h +++ b/src/mame/includes/nbmj8688.h @@ -20,6 +20,59 @@ public: m_lcdc1(*this, "lcdc1") { } + void NBMJDRV_4096(machine_config &config); + void NBMJDRV_256(machine_config &config); + void NBMJDRV_65536(machine_config &config); + void mbmj_h12bit(machine_config &config); + void mbmj_p12bit(machine_config &config); + void mbmj_p16bit(machine_config &config); + void mbmj_p16bit_LCD(machine_config &config); + void swinggal(machine_config &config); + void korinai(machine_config &config); + void livegal(machine_config &config); + void apparel(machine_config &config); + void kyuhito(machine_config &config); + void bijokkoy(machine_config &config); + void barline(machine_config &config); + void bijokkog(machine_config &config); + void korinaim(machine_config &config); + void ryuuha(machine_config &config); + void seiham(machine_config &config); + void orangeci(machine_config &config); + void citylove(machine_config &config); + void otonano(machine_config &config); + void ojousanm(machine_config &config); + void mcitylov(machine_config &config); + void iemotom(machine_config &config); + void crystalg(machine_config &config); + void crystal2(machine_config &config); + void secolove(machine_config &config); + void orangec(machine_config &config); + void mjsikaku(machine_config &config); + void housemn2(machine_config &config); + void kanatuen(machine_config &config); + void nightlov(machine_config &config); + void kaguya2(machine_config &config); + void mjgaiden(machine_config &config); + void mjcamera(machine_config &config); + void mmsikaku(machine_config &config); + void housemnq(machine_config &config); + void idhimitu(machine_config &config); + void iemoto(machine_config &config); + void kaguya(machine_config &config); + void vipclub(machine_config &config); + void ojousan(machine_config &config); + void seiha(machine_config &config); + + void init_kyuhito(); + void init_idhimitu(); + void init_kaguya2(); + void init_mjcamera(); + void init_kanatuen(); + + DECLARE_CUSTOM_INPUT_MEMBER(nb1413m3_busyflag_r); + +private: required_device m_maincpu; required_device m_nb1413m3; optional_device m_lcdc0; @@ -54,7 +107,6 @@ public: DECLARE_WRITE8_MEMBER(blitter_w); DECLARE_WRITE8_MEMBER(scrolly_w); - DECLARE_WRITE8_MEMBER(mjsikaku_gfxflag2_w); DECLARE_WRITE8_MEMBER(mjsikaku_gfxflag3_w); DECLARE_WRITE8_MEMBER(mjsikaku_romsel_w); @@ -67,13 +119,6 @@ public: DECLARE_READ8_MEMBER(dipsw2_r); DECLARE_WRITE8_MEMBER(barline_output_w); - DECLARE_CUSTOM_INPUT_MEMBER(nb1413m3_busyflag_r); - - void init_kyuhito(); - void init_idhimitu(); - void init_kaguya2(); - void init_mjcamera(); - void init_kanatuen(); DECLARE_VIDEO_START(mbmj8688_pure_12bit); DECLARE_PALETTE_INIT(mbmj8688_12bit); DECLARE_VIDEO_START(mbmj8688_pure_16bit_LCD); @@ -94,49 +139,6 @@ public: void common_video_start(); void postload(); - void NBMJDRV_4096(machine_config &config); - void NBMJDRV_256(machine_config &config); - void NBMJDRV_65536(machine_config &config); - void mbmj_h12bit(machine_config &config); - void mbmj_p12bit(machine_config &config); - void mbmj_p16bit(machine_config &config); - void mbmj_p16bit_LCD(machine_config &config); - void swinggal(machine_config &config); - void korinai(machine_config &config); - void livegal(machine_config &config); - void apparel(machine_config &config); - void kyuhito(machine_config &config); - void bijokkoy(machine_config &config); - void barline(machine_config &config); - void bijokkog(machine_config &config); - void korinaim(machine_config &config); - void ryuuha(machine_config &config); - void seiham(machine_config &config); - void orangeci(machine_config &config); - void citylove(machine_config &config); - void otonano(machine_config &config); - void ojousanm(machine_config &config); - void mcitylov(machine_config &config); - void iemotom(machine_config &config); - void crystalg(machine_config &config); - void crystal2(machine_config &config); - void secolove(machine_config &config); - void orangec(machine_config &config); - void mjsikaku(machine_config &config); - void housemn2(machine_config &config); - void kanatuen(machine_config &config); - void nightlov(machine_config &config); - void kaguya2(machine_config &config); - void mjgaiden(machine_config &config); - void mjcamera(machine_config &config); - void mmsikaku(machine_config &config); - void housemnq(machine_config &config); - void idhimitu(machine_config &config); - void iemoto(machine_config &config); - void kaguya(machine_config &config); - void vipclub(machine_config &config); - void ojousan(machine_config &config); - void seiha(machine_config &config); void barline_io_map(address_map &map); void crystalg_io_map(address_map &map); void iemoto_io_map(address_map &map); @@ -151,6 +153,6 @@ public: void secolove_io_map(address_map &map); void secolove_map(address_map &map); void seiha_io_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/includes/nbmj8891.h b/src/mame/includes/nbmj8891.h index ceb49fbd8f3..e86e658b47b 100644 --- a/src/mame/includes/nbmj8891.h +++ b/src/mame/includes/nbmj8891.h @@ -23,6 +23,50 @@ public: { } + void mjfocusm(machine_config &config); + void mjfocus(machine_config &config); + void bananadr(machine_config &config); + void scandal(machine_config &config); + void hanamomo(machine_config &config); + void telmahjn(machine_config &config); + void pairsten(machine_config &config); + void club90s(machine_config &config); + void mgion(machine_config &config); + void chinmoku(machine_config &config); + void msjiken(machine_config &config); + void hnageman(machine_config &config); + void mjcamerb(machine_config &config); + void mjnanpas(machine_config &config); + void mmcamera(machine_config &config); + void pairsnb(machine_config &config); + void taiwanmb(machine_config &config); + void hanaoji(machine_config &config); + void lovehous(machine_config &config); + void hnxmasev(machine_config &config); + void mmaiko(machine_config &config); + void maiko(machine_config &config); + void mladyhtr(machine_config &config); + void omotesnd(machine_config &config); + void abunai(machine_config &config); + void gionbana(machine_config &config); + void mgmen89(machine_config &config); + void scandalm(machine_config &config); + + void init_pairsten(); + void init_telmahjn(); + void init_gionbana(); + void init_omotesnd(); + void init_scandal(); + void init_mgmen89(); + void init_mjfocusm(); + void init_mjfocus(); + void init_pairsnb(); + void init_mjnanpas(); + + DECLARE_CUSTOM_INPUT_MEMBER(nb1413m3_busyflag_r); + DECLARE_CUSTOM_INPUT_MEMBER(nb1413m3_outcoin_flag_r); + +private: required_device m_maincpu; required_device m_nb1413m3; required_device m_screen; @@ -75,19 +119,6 @@ public: DECLARE_WRITE8_MEMBER(taiwanmb_gfxflag_w); DECLARE_WRITE8_MEMBER(taiwanmb_mcu_w); - DECLARE_CUSTOM_INPUT_MEMBER(nb1413m3_busyflag_r); - DECLARE_CUSTOM_INPUT_MEMBER(nb1413m3_outcoin_flag_r); - - void init_pairsten(); - void init_telmahjn(); - void init_gionbana(); - void init_omotesnd(); - void init_scandal(); - void init_mgmen89(); - void init_mjfocusm(); - void init_mjfocus(); - void init_pairsnb(); - void init_mjnanpas(); virtual void video_start() override; DECLARE_VIDEO_START(_1layer); @@ -100,34 +131,6 @@ public: void common_save_state(); void postload(); - void mjfocusm(machine_config &config); - void mjfocus(machine_config &config); - void bananadr(machine_config &config); - void scandal(machine_config &config); - void hanamomo(machine_config &config); - void telmahjn(machine_config &config); - void pairsten(machine_config &config); - void club90s(machine_config &config); - void mgion(machine_config &config); - void chinmoku(machine_config &config); - void msjiken(machine_config &config); - void hnageman(machine_config &config); - void mjcamerb(machine_config &config); - void mjnanpas(machine_config &config); - void mmcamera(machine_config &config); - void pairsnb(machine_config &config); - void taiwanmb(machine_config &config); - void hanaoji(machine_config &config); - void lovehous(machine_config &config); - void hnxmasev(machine_config &config); - void mmaiko(machine_config &config); - void maiko(machine_config &config); - void mladyhtr(machine_config &config); - void omotesnd(machine_config &config); - void abunai(machine_config &config); - void gionbana(machine_config &config); - void mgmen89(machine_config &config); - void scandalm(machine_config &config); void bananadr_io_map(address_map &map); void club90s_map(address_map &map); void gionbana_io_map(address_map &map); @@ -152,6 +155,6 @@ public: void scandalm_map(address_map &map); void taiwanmb_io_map(address_map &map); void taiwanmb_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/includes/nbmj8900.h b/src/mame/includes/nbmj8900.h index 1b4921c81e7..591d816b16c 100644 --- a/src/mame/includes/nbmj8900.h +++ b/src/mame/includes/nbmj8900.h @@ -7,10 +7,7 @@ class nbmj8900_state : public driver_device { public: - enum - { - TIMER_BLITTER - }; + nbmj8900_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag) , @@ -19,6 +16,18 @@ public: m_screen(*this, "screen"), m_palette(*this, "palette") { } + void ohpaipee(machine_config &config); + void togenkyo(machine_config &config); + + void init_togenkyo(); + void init_ohpaipee(); + +private: + enum + { + TIMER_BLITTER + }; + required_device m_maincpu; required_device m_nb1413m3; required_device m_screen; @@ -60,8 +69,6 @@ public: DECLARE_WRITE8_MEMBER(vramsel_w); DECLARE_WRITE8_MEMBER(romsel_w); - void init_togenkyo(); - void init_ohpaipee(); virtual void video_start() override; uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); @@ -71,11 +78,9 @@ public: void gfxdraw(); void postload(); - void ohpaipee(machine_config &config); - void togenkyo(machine_config &config); void ohpaipee_io_map(address_map &map); void ohpaipee_map(address_map &map); void togenkyo_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/includes/nbmj8991.h b/src/mame/includes/nbmj8991.h index e7e4171f57d..42bb2ff83f1 100644 --- a/src/mame/includes/nbmj8991.h +++ b/src/mame/includes/nbmj8991.h @@ -19,6 +19,36 @@ public: m_soundlatch(*this, "soundlatch"), m_generic_paletteram_8(*this, "paletteram") { } + void nbmjdrv1(machine_config &config); + void nbmjdrv2(machine_config &config); + void nbmjdrv3(machine_config &config); + void tokyogal(machine_config &config); + void finalbny(machine_config &config); + void mjlstory(machine_config &config); + void galkaika(machine_config &config); + void pstadium(machine_config &config); + void galkoku(machine_config &config); + void av2mj2rg(machine_config &config); + void av2mj1bb(machine_config &config); + void vanilla(machine_config &config); + void mcontest(machine_config &config); + void triplew1(machine_config &config); + void ntopstar(machine_config &config); + void tokimbsj(machine_config &config); + void triplew2(machine_config &config); + void uchuuai(machine_config &config); + void hyouban(machine_config &config); + void qmhayaku(machine_config &config); + void mjgottub(machine_config &config); + + void init_galkaika(); + void init_tokimbsj(); + void init_tokyogal(); + void init_finalbny(); + + DECLARE_CUSTOM_INPUT_MEMBER(nb1413m3_busyflag_r); + +private: required_device m_maincpu; optional_device m_audiocpu; required_device m_nb1413m3; @@ -60,12 +90,7 @@ public: DECLARE_WRITE8_MEMBER(blitter_w); DECLARE_READ8_MEMBER(clut_r); DECLARE_WRITE8_MEMBER(clut_w); - DECLARE_CUSTOM_INPUT_MEMBER(nb1413m3_busyflag_r); - void init_galkaika(); - void init_tokimbsj(); - void init_tokyogal(); - void init_finalbny(); virtual void machine_reset() override; virtual void video_start() override; @@ -77,27 +102,6 @@ public: void postload(); - void nbmjdrv1(machine_config &config); - void nbmjdrv2(machine_config &config); - void nbmjdrv3(machine_config &config); - void tokyogal(machine_config &config); - void finalbny(machine_config &config); - void mjlstory(machine_config &config); - void galkaika(machine_config &config); - void pstadium(machine_config &config); - void galkoku(machine_config &config); - void av2mj2rg(machine_config &config); - void av2mj1bb(machine_config &config); - void vanilla(machine_config &config); - void mcontest(machine_config &config); - void triplew1(machine_config &config); - void ntopstar(machine_config &config); - void tokimbsj(machine_config &config); - void triplew2(machine_config &config); - void uchuuai(machine_config &config); - void hyouban(machine_config &config); - void qmhayaku(machine_config &config); - void mjgottub(machine_config &config); void av2mj1bb_io_map(address_map &map); void av2mj1bb_map(address_map &map); void av2mj2rg_map(address_map &map); @@ -113,6 +117,6 @@ public: void tokyogal_map(address_map &map); void triplew1_map(address_map &map); void triplew2_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/includes/nbmj9195.h b/src/mame/includes/nbmj9195.h index 646b992dcde..0738be98ca2 100644 --- a/src/mame/includes/nbmj9195.h +++ b/src/mame/includes/nbmj9195.h @@ -35,6 +35,42 @@ public: m_palette_ptr(*this, "paletteram") { } + void NBMJDRV1_base(machine_config &config); + void NBMJDRV1(machine_config &config); + void NBMJDRV2(machine_config &config); + void NBMJDRV3(machine_config &config); + void patimono(machine_config &config); + void mjuraden(machine_config &config); + void psailor1(machine_config &config); + void ngpgal(machine_config &config); + void mjgottsu(machine_config &config); + void mkeibaou(machine_config &config); + void gal10ren(machine_config &config); + void mscoutm(machine_config &config); + void imekura(machine_config &config); + void mkoiuraa(machine_config &config); + void mjkoiura(machine_config &config); + void janbari(machine_config &config); + void mjlaman(machine_config &config); + void yosimotm(machine_config &config); + void cmehyou(machine_config &config); + void sailorwr(machine_config &config); + void koinomp(machine_config &config); + void sailorws(machine_config &config); + void mjegolf(machine_config &config); + void renaiclb(machine_config &config); + void psailor2(machine_config &config); + void yosimoto(machine_config &config); + void pachiten(machine_config &config); + void jituroku(machine_config &config); + void mmehyou(machine_config &config); + void bakuhatu(machine_config &config); + void ultramhm(machine_config &config); + void otatidai(machine_config &config); + + void init_nbmj9195(); + +private: required_device m_maincpu; required_device m_screen; required_device m_palette; @@ -98,7 +134,6 @@ public: DECLARE_WRITE8_MEMBER(dipswbitsel_w); DECLARE_WRITE8_MEMBER(mscoutm_inputportsel_w); - void init_nbmj9195(); virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; @@ -115,38 +150,6 @@ public: int dipsw_r(); void postload(); - void NBMJDRV1_base(machine_config &config); - void NBMJDRV1(machine_config &config); - void NBMJDRV2(machine_config &config); - void NBMJDRV3(machine_config &config); - void patimono(machine_config &config); - void mjuraden(machine_config &config); - void psailor1(machine_config &config); - void ngpgal(machine_config &config); - void mjgottsu(machine_config &config); - void mkeibaou(machine_config &config); - void gal10ren(machine_config &config); - void mscoutm(machine_config &config); - void imekura(machine_config &config); - void mkoiuraa(machine_config &config); - void mjkoiura(machine_config &config); - void janbari(machine_config &config); - void mjlaman(machine_config &config); - void yosimotm(machine_config &config); - void cmehyou(machine_config &config); - void sailorwr(machine_config &config); - void koinomp(machine_config &config); - void sailorws(machine_config &config); - void mjegolf(machine_config &config); - void renaiclb(machine_config &config); - void psailor2(machine_config &config); - void yosimoto(machine_config &config); - void pachiten(machine_config &config); - void jituroku(machine_config &config); - void mmehyou(machine_config &config); - void bakuhatu(machine_config &config); - void ultramhm(machine_config &config); - void otatidai(machine_config &config); void cmehyou_io_map(address_map &map); void gal10ren_io_map(address_map &map); void imekura_io_map(address_map &map); @@ -180,6 +183,6 @@ public: void sailorws_sound_map(address_map &map); void yosimotm_io_map(address_map &map); void yosimoto_io_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/includes/nc.h b/src/mame/includes/nc.h index 9789d1466c4..cd214790b58 100644 --- a/src/mame/includes/nc.h +++ b/src/mame/includes/nc.h @@ -10,6 +10,7 @@ #define MAME_INCLUDES_NC_H #include "bus/centronics/ctronics.h" +#include "machine/upd765.h" // for NC200 disk drive interface #include "machine/i8251.h" #include "machine/clock.h" #include "machine/ram.h" @@ -51,10 +52,16 @@ public: m_uart(*this, "uart"), m_uart_clock(*this, "uart_clock"), m_nvram(*this, "nvram"), + m_fdc(*this, "upd765"), m_nc_type(variant) { } + void nc_base(machine_config &config); + + void init_nc(); + +protected: DECLARE_READ8_MEMBER(nc_memory_management_r); DECLARE_WRITE8_MEMBER(nc_memory_management_w); DECLARE_WRITE8_MEMBER(nc_irq_mask_w); @@ -71,16 +78,13 @@ public: DECLARE_WRITE_LINE_MEMBER(write_uart_clock); DECLARE_WRITE_LINE_MEMBER(write_centronics_busy); - void init_nc(); DECLARE_DEVICE_IMAGE_LOAD_MEMBER( nc_pcmcia_card ); DECLARE_DEVICE_IMAGE_UNLOAD_MEMBER( nc_pcmcia_card ); -protected: virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; - void nc_base(machine_config &config); void nc_map(address_map &map); uint32_t screen_update_nc(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int height, int width, int const (&pens)[2]); @@ -93,7 +97,7 @@ private: void nc_refresh_memory_config(); void nc_sound_update(int channel); -public: // HACK FOR MC6845 +protected: // HACK FOR MC6845 required_device m_maincpu; required_device m_ram; required_device m_beeper1; @@ -103,6 +107,7 @@ public: // HACK FOR MC6845 required_device m_uart; required_device m_uart_clock; required_device m_nvram; + required_device m_fdc; char m_memory_config[4]; emu_timer *m_keyboard_timer; diff --git a/src/mame/includes/nds.h b/src/mame/includes/nds.h index ae3b1755a31..57a88287dc7 100644 --- a/src/mame/includes/nds.h +++ b/src/mame/includes/nds.h @@ -23,6 +23,9 @@ public: m_arm7ram(*this, "arm7ram") { } + void nds(machine_config &config); + +private: void machine_start() override; void machine_reset() override; @@ -41,12 +44,11 @@ public: DECLARE_READ32_MEMBER(wram_arm7mirror_r); DECLARE_WRITE32_MEMBER(wram_arm7mirror_w); - void nds(machine_config &config); void nds7_wram_map(address_map &map); void nds9_wram_map(address_map &map); void nds_arm7_map(address_map &map); void nds_arm9_map(address_map &map); -protected: + required_device m_arm7; required_device m_arm9; required_region_ptr m_firmware; diff --git a/src/mame/includes/nemesis.h b/src/mame/includes/nemesis.h index a6b010b3af2..d453508a403 100644 --- a/src/mame/includes/nemesis.h +++ b/src/mame/includes/nemesis.h @@ -46,6 +46,18 @@ public: m_palette(*this, "palette") { } + void nyanpani(machine_config &config); + void konamigt(machine_config &config); + void rf2_gx400(machine_config &config); + void gx400(machine_config &config); + void bubsys(machine_config &config); + void hcrash(machine_config &config); + void salamand(machine_config &config); + void citybomb(machine_config &config); + void nemesis(machine_config &config); + void blkpnthr(machine_config &config); + +private: /* memory pointers */ required_shared_ptr m_charram; required_shared_ptr m_xscroll1; @@ -134,16 +146,7 @@ public: void nemesis_postload(); void draw_sprites( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect ); DECLARE_WRITE8_MEMBER(volume_callback); - void nyanpani(machine_config &config); - void konamigt(machine_config &config); - void rf2_gx400(machine_config &config); - void gx400(machine_config &config); - void bubsys(machine_config &config); - void hcrash(machine_config &config); - void salamand(machine_config &config); - void citybomb(machine_config &config); - void nemesis(machine_config &config); - void blkpnthr(machine_config &config); + void blkpnthr_map(address_map &map); void blkpnthr_sound_map(address_map &map); void city_sound_map(address_map &map); diff --git a/src/mame/includes/newbrain.h b/src/mame/includes/newbrain.h index 17b356e1b27..765c3f2669b 100644 --- a/src/mame/includes/newbrain.h +++ b/src/mame/includes/newbrain.h @@ -51,6 +51,13 @@ public: { } + void newbrain(machine_config &config); + void newbrain_a(machine_config &config); + void newbrain_ad(machine_config &config); + void newbrain_md(machine_config &config); + void newbrain_video(machine_config &config); + +private: uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); DECLARE_READ8_MEMBER( mreq_r ); @@ -71,14 +78,9 @@ public: DECLARE_READ_LINE_MEMBER( tdi_r ); DECLARE_WRITE_LINE_MEMBER( k1_w ); - void newbrain(machine_config &config); - void newbrain_a(machine_config &config); - void newbrain_ad(machine_config &config); - void newbrain_md(machine_config &config); - void newbrain_video(machine_config &config); void newbrain_iorq(address_map &map); void newbrain_mreq(address_map &map); -protected: + virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; virtual void machine_start() override; virtual void machine_reset() override; diff --git a/src/mame/includes/news.h b/src/mame/includes/news.h index 01622efb0f1..a50042bb49f 100644 --- a/src/mame/includes/news.h +++ b/src/mame/includes/news.h @@ -11,6 +11,9 @@ public: m_maincpu(*this, "maincpu"), m_gfxdecode(*this, "gfxdecode") { } + void news(machine_config &config); + +private: /* memory pointers */ required_shared_ptr m_bgram; required_shared_ptr m_fgram; @@ -30,6 +33,5 @@ public: uint32_t screen_update_news(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); required_device m_maincpu; required_device m_gfxdecode; - void news(machine_config &config); void news_map(address_map &map); }; diff --git a/src/mame/includes/next.h b/src/mame/includes/next.h index 22baf07a8d4..bfbf7baa4a0 100644 --- a/src/mame/includes/next.h +++ b/src/mame/includes/next.h @@ -33,6 +33,27 @@ public: fdc(*this, "fdc"), vram(*this, "vram") { } + void next_base(machine_config &config); + void next_fdc_base(machine_config &config); + void nextst(machine_config &config); + void nextsc(machine_config &config); + void nextct(machine_config &config); + void nexts2(machine_config &config); + void nextctc(machine_config &config); + void next(machine_config &config); + void nextstc(machine_config &config); + void nexts(machine_config &config); + + void init_nexts2(); + void init_next(); + void init_nextsc(); + void init_nextst(); + void init_nextct(); + void init_nextstc(); + void init_nextctc(); + void init_nexts(); + +private: required_device maincpu; required_device rtc; required_device scc; @@ -115,16 +136,6 @@ public: DECLARE_WRITE_LINE_MEMBER(vblank_w); void ncr5390(device_t *device); - void next_base(machine_config &config); - void next_fdc_base(machine_config &config); - void nextst(machine_config &config); - void nextsc(machine_config &config); - void nextct(machine_config &config); - void nexts2(machine_config &config); - void nextctc(machine_config &config); - void next(machine_config &config); - void nextstc(machine_config &config); - void nexts(machine_config &config); void next_0b_m_mem(address_map &map); void next_0b_m_nofdc_mem(address_map &map); void next_0c_c_mem(address_map &map); @@ -132,7 +143,7 @@ public: void next_2c_c_mem(address_map &map); void next_fdc_mem(address_map &map); void next_mem(address_map &map); -protected: + struct dma_slot { uint32_t start, limit, chain_start, chain_limit, current; uint8_t state; @@ -186,16 +197,6 @@ protected: void dma_check_update(int slot); void dma_check_end(int slot, bool eof); void dma_end(int slot); - -public: - void init_nexts2(); - void init_next(); - void init_nextsc(); - void init_nextst(); - void init_nextct(); - void init_nextstc(); - void init_nextctc(); - void init_nexts(); }; #endif diff --git a/src/mame/includes/ninjakd2.h b/src/mame/includes/ninjakd2.h index 4378cde15e3..eaf04a0f602 100644 --- a/src/mame/includes/ninjakd2.h +++ b/src/mame/includes/ninjakd2.h @@ -19,78 +19,90 @@ public: ninjakd2_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag), m_maincpu(*this,"maincpu"), + m_palette(*this, "palette"), + m_bg_videoram(*this, "bg_videoram"), + m_gfxdecode(*this, "gfxdecode"), m_soundcpu(*this, "soundcpu"), m_pcm(*this, "pcm"), m_pcm_region(*this, "pcm"), - m_bg_videoram(*this, "bg_videoram"), m_fg_videoram(*this, "fg_videoram"), m_spriteram(*this, "spriteram"), - m_gfxdecode(*this, "gfxdecode"), m_screen(*this, "screen"), - m_palette(*this, "palette"), m_decrypted_opcodes(*this, "decrypted_opcodes"), m_mainbank(*this, "mainbank") { } + void ninjakd2b(machine_config &config); + void ninjakd2(machine_config &config); + void ninjakd2_core(machine_config &config); + + void init_ninjakd2(); + void init_bootleg(); + + DECLARE_WRITE8_MEMBER(ninjakd2_bgvideoram_w); + DECLARE_WRITE8_MEMBER(ninjakd2_fgvideoram_w); + DECLARE_WRITE8_MEMBER(ninjakd2_bg_ctrl_w); + DECLARE_WRITE8_MEMBER(ninjakd2_sprite_overdraw_w); + + DECLARE_WRITE8_MEMBER(ninjakd2_bankselect_w); + DECLARE_WRITE8_MEMBER(ninjakd2_soundreset_w); + +protected: required_device m_maincpu; - required_device m_soundcpu; - optional_device m_pcm; - optional_memory_region m_pcm_region; + required_device m_palette; optional_shared_ptr m_bg_videoram; - required_shared_ptr m_fg_videoram; - required_shared_ptr m_spriteram; required_device m_gfxdecode; - required_device m_screen; - required_device m_palette; - optional_shared_ptr m_decrypted_opcodes; - - required_memory_bank m_mainbank; - const int16_t* m_sampledata; - int m_next_sprite_overdraw_enabled; + uint8_t m_vram_bank_mask; + int m_robokid_sprites; bool (*m_stencil_compare_function) (uint16_t pal); int m_sprites_updated; - bitmap_ind16 m_sprites_bitmap; - int m_robokid_sprites; tilemap_t* m_fg_tilemap; tilemap_t* m_bg_tilemap; - uint8_t m_vram_bank_mask; - uint8_t m_rom_bank_mask; + bitmap_ind16 m_sprites_bitmap; void video_init_common(); - DECLARE_WRITE8_MEMBER(ninjakd2_bankselect_w); - DECLARE_WRITE8_MEMBER(ninjakd2_soundreset_w); DECLARE_WRITE8_MEMBER(ninjakd2_pcm_play_w); SAMPLES_START_CB_MEMBER(ninjakd2_init_samples); - DECLARE_WRITE8_MEMBER(ninjakd2_bgvideoram_w); - DECLARE_WRITE8_MEMBER(ninjakd2_fgvideoram_w); - DECLARE_WRITE8_MEMBER(ninjakd2_bg_ctrl_w); - DECLARE_WRITE8_MEMBER(ninjakd2_sprite_overdraw_w); - void init_ninjakd2(); - void init_bootleg(); + TILE_GET_INFO_MEMBER(get_fg_tile_info); TILE_GET_INFO_MEMBER(ninjakd2_get_bg_tile_info); uint32_t screen_update_ninjakd2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); DECLARE_WRITE_LINE_MEMBER(screen_vblank_ninjakd2); + void bg_ctrl(int offset, int data, tilemap_t* tilemap); + void gfx_unscramble(); + void update_sprites(); + + void ninjakid_nopcm_sound_cpu(address_map &map); + + virtual void machine_start() override; + virtual void machine_reset() override; + virtual void video_start() override; + +private: + required_device m_soundcpu; + optional_device m_pcm; + optional_memory_region m_pcm_region; + required_shared_ptr m_fg_videoram; + required_shared_ptr m_spriteram; + required_device m_screen; + optional_shared_ptr m_decrypted_opcodes; + + required_memory_bank m_mainbank; + + const int16_t* m_sampledata; + int m_next_sprite_overdraw_enabled; + uint8_t m_rom_bank_mask; + void draw_sprites( bitmap_ind16 &bitmap); void erase_sprites( bitmap_ind16 &bitmap); - void update_sprites(); void lineswap_gfx_roms(const char *region, const int bit); - void gfx_unscramble(); - void ninjakd2b(machine_config &config); - void ninjakd2(machine_config &config); - void ninjakd2_core(machine_config &config); void decrypted_opcodes_map(address_map &map); void ninjakd2_main_cpu(address_map &map); void ninjakd2_sound_cpu(address_map &map); void ninjakd2_sound_io(address_map &map); - void ninjakid_nopcm_sound_cpu(address_map &map); -protected: - virtual void machine_start() override; - virtual void machine_reset() override; - virtual void video_start() override; }; class mnight_state : public ninjakd2_state @@ -103,9 +115,11 @@ public: void arkarea(machine_config &config); void mnight(machine_config &config); + void init_mnight(); + +private: void mnight_main_cpu(address_map &map); - void init_mnight(); TILE_GET_INFO_MEMBER(mnight_get_bg_tile_info); DECLARE_VIDEO_START(mnight); DECLARE_VIDEO_START(arkarea); @@ -122,26 +136,26 @@ public: void robokid(machine_config &config); void robokid_main_cpu(address_map &map); - DECLARE_READ8_MEMBER(motion_error_verbose_r); + void init_robokid(); + void init_robokidj(); +protected: template DECLARE_READ8_MEMBER(robokid_bg_videoram_r); template DECLARE_WRITE8_MEMBER(robokid_bg_videoram_w); template DECLARE_WRITE8_MEMBER(robokid_bg_ctrl_w); template DECLARE_WRITE8_MEMBER(robokid_bg_bank_w); + tilemap_t* m_robokid_tilemap[3]; + void video_init_banked(uint32_t vram_alloc_size); TILEMAP_MAPPER_MEMBER(robokid_bg_scan); template TILE_GET_INFO_MEMBER(robokid_get_bg_tile_info); - DECLARE_VIDEO_START(robokid); - uint32_t screen_update_robokid(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void init_robokid(); - void init_robokidj(); +private: + DECLARE_READ8_MEMBER(motion_error_verbose_r); -protected: - void video_init_banked(uint32_t vram_alloc_size); - tilemap_t* m_robokid_tilemap[3]; + DECLARE_VIDEO_START(robokid); + uint32_t screen_update_robokid(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); -private: void motion_error_kludge(uint16_t offset); uint8_t m_robokid_bg_bank[3]; std::unique_ptr m_robokid_bg_videoram[3]; @@ -156,21 +170,23 @@ public: m_pad_io(*this, "PAD%u", 1U) { } + void omegaf(machine_config &config); + +protected: + virtual void machine_start() override; + virtual void machine_reset() override; + +private: DECLARE_READ8_MEMBER(unk_r); DECLARE_READ8_MEMBER(io_protection_r); DECLARE_WRITE8_MEMBER(io_protection_w); - void omegaf(machine_config &config); void omegaf_main_cpu(address_map &map); DECLARE_VIDEO_START(omegaf); TILEMAP_MAPPER_MEMBER(omegaf_bg_scan); uint32_t screen_update_omegaf(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); -protected: - virtual void machine_start() override; - virtual void machine_reset() override; -private: required_ioport_array<2> m_dsw_io; required_ioport_array<2> m_pad_io; diff --git a/src/mame/includes/ninjaw.h b/src/mame/includes/ninjaw.h index 9449890b891..018b597ec04 100644 --- a/src/mame/includes/ninjaw.h +++ b/src/mame/includes/ninjaw.h @@ -31,6 +31,10 @@ public: m_spriteram(*this, "spriteram"), m_z80bank(*this, "z80bank") { } + void darius2(machine_config &config); + void ninjaw(machine_config &config); + +private: /* devices */ required_device m_maincpu; required_device m_subcpu; @@ -70,8 +74,6 @@ public: void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect, int primask, int x_offs, int y_offs ); void parse_control( ); uint32_t update_screen(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int xoffs, int chip); - void darius2(machine_config &config); - void ninjaw(machine_config &config); void darius2_master_map(address_map &map); void darius2_slave_map(address_map &map); void ninjaw_master_map(address_map &map); diff --git a/src/mame/includes/nitedrvr.h b/src/mame/includes/nitedrvr.h index 53d81ca695f..b5bfa8b4d0a 100644 --- a/src/mame/includes/nitedrvr.h +++ b/src/mame/includes/nitedrvr.h @@ -39,7 +39,7 @@ public: void nitedrvr(machine_config &config); -protected: +private: DECLARE_READ8_MEMBER(nitedrvr_steering_reset_r); DECLARE_WRITE8_MEMBER(nitedrvr_steering_reset_w); DECLARE_READ8_MEMBER(nitedrvr_in0_r); @@ -58,7 +58,6 @@ protected: int nitedrvr_steering(); void nitedrvr_map(address_map &map); -private: /* memory pointers */ required_shared_ptr m_videoram; required_shared_ptr m_hvc; diff --git a/src/mame/includes/niyanpai.h b/src/mame/includes/niyanpai.h index f9048c74043..edf272a87ef 100644 --- a/src/mame/includes/niyanpai.h +++ b/src/mame/includes/niyanpai.h @@ -12,11 +12,6 @@ class niyanpai_state : public driver_device { public: - enum - { - TIMER_BLITTER - }; - niyanpai_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag) , m_maincpu(*this, "maincpu"), @@ -24,6 +19,21 @@ public: m_screen(*this, "screen"), m_palette(*this, "palette") { } + void musobana(machine_config &config); + void zokumahj(machine_config &config); + void mhhonban(machine_config &config); + void niyanpai(machine_config &config); + + void init_niyanpai(); + + DECLARE_CUSTOM_INPUT_MEMBER(musobana_outcoin_flag_r); + +private: + enum + { + TIMER_BLITTER + }; + required_device m_maincpu; required_device m_tmp68301; required_device m_screen; @@ -82,9 +92,6 @@ public: DECLARE_READ16_MEMBER(musobana_inputport_0_r); DECLARE_WRITE16_MEMBER(musobana_inputport_w); - DECLARE_CUSTOM_INPUT_MEMBER(musobana_outcoin_flag_r); - - void init_niyanpai(); virtual void video_start() override; DECLARE_MACHINE_START(musobana); @@ -99,14 +106,10 @@ public: DECLARE_WRITE_LINE_MEMBER(vblank_irq); - void musobana(machine_config &config); - void zokumahj(machine_config &config); - void mhhonban(machine_config &config); - void niyanpai(machine_config &config); void mhhonban_map(address_map &map); void musobana_map(address_map &map); void niyanpai_map(address_map &map); void zokumahj_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/includes/nmk16.h b/src/mame/includes/nmk16.h index efd277820ae..064e8dad5c3 100644 --- a/src/mame/includes/nmk16.h +++ b/src/mame/includes/nmk16.h @@ -36,6 +36,68 @@ public: m_in_io(*this, "IN%u", 0U), m_sprdma_base(0x8000) { } + void vandyke(machine_config &config); + void redhawkb(machine_config &config); + void grdnstrm(machine_config &config); + void tdragon_prot(machine_config &config); + void tdragon2(machine_config &config); + void tharrier(machine_config &config); + void raphero(machine_config &config); + void tdragon(machine_config &config); + void tdragonb(machine_config &config); + void twinactn(machine_config &config); + void firehawk(machine_config &config); + void gunnail(machine_config &config); + void hachamf(machine_config &config); + void redhawki(machine_config &config); + void bjtwin(machine_config &config); + void ssmissin(machine_config &config); + void bioship(machine_config &config); + void spec2k(machine_config &config); + void macross2(machine_config &config); + void blkheart(machine_config &config); + void stagger1(machine_config &config); + void manybloc(machine_config &config); + void acrobatm(machine_config &config); + void strahl(machine_config &config); + void tdragon3h(machine_config &config); + void atombjt(machine_config &config); + void hachamf_prot(machine_config &config); + void popspops(machine_config &config); + void grdnstrmk(machine_config &config); + void macross(machine_config &config); + void mustangb(machine_config &config); + void mustang(machine_config &config); + void vandykeb(machine_config &config); + + void init_nmk(); + void init_tharrier(); + void init_vandykeb(); + void init_tdragonb(); + void init_ssmissin(); + void init_hachamf_prot(); + void init_redhawk(); + void init_tdragon_prot(); + void init_bubl2000(); + void init_banked_audiocpu(); + void init_grdnstrm(); + void init_spec2k(); + void init_redfoxwp2a(); + void init_grdnstrmg(); + void init_bjtwin(); + void init_atombjt(); + + DECLARE_VIDEO_START(gunnail); + TIMER_DEVICE_CALLBACK_MEMBER(nmk16_scanline); + uint32_t screen_update_macross(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); + + DECLARE_WRITE16_MEMBER(nmk_txvideoram_w); + DECLARE_WRITE8_MEMBER(nmk_flipscreen_w); + DECLARE_WRITE8_MEMBER(nmk_tilebank_w); + + DECLARE_WRITE8_MEMBER(macross2_sound_bank_w); + +protected: required_device m_maincpu; optional_device m_audiocpu; optional_device_array m_oki; @@ -84,7 +146,6 @@ public: DECLARE_WRITE16_MEMBER(tharrier_mcu_control_w); DECLARE_READ16_MEMBER(tharrier_mcu_r); DECLARE_WRITE16_MEMBER(macross2_sound_reset_w); - DECLARE_WRITE8_MEMBER(macross2_sound_bank_w); template DECLARE_WRITE8_MEMBER(tharrier_oki6295_bankswitch_w); DECLARE_WRITE16_MEMBER(hachamf_mainram_w); DECLARE_WRITE16_MEMBER(tdragon_mainram_w); @@ -93,37 +154,19 @@ public: DECLARE_READ16_MEMBER(afega_unknown_r); template DECLARE_WRITE16_MEMBER(afega_scroll_w); template DECLARE_WRITE16_MEMBER(nmk_bgvideoram_w); - DECLARE_WRITE16_MEMBER(nmk_txvideoram_w); DECLARE_WRITE16_MEMBER(mustang_scroll_w); DECLARE_WRITE16_MEMBER(raphero_scroll_w); template DECLARE_WRITE8_MEMBER(nmk_scroll_w); DECLARE_WRITE16_MEMBER(vandyke_scroll_w); DECLARE_WRITE16_MEMBER(vandykeb_scroll_w); DECLARE_WRITE16_MEMBER(manybloc_scroll_w); - DECLARE_WRITE8_MEMBER(nmk_flipscreen_w); - DECLARE_WRITE8_MEMBER(nmk_tilebank_w); DECLARE_WRITE8_MEMBER(bioship_bank_w); DECLARE_WRITE8_MEMBER(spec2k_oki1_banking_w); DECLARE_WRITE8_MEMBER(twinactn_oki_bank_w); DECLARE_WRITE16_MEMBER(nmk16_x0016_w); DECLARE_WRITE16_MEMBER(nmk16_bioship_x0016_w); void save_protregs(); - void init_nmk(); - void init_tharrier(); - void init_vandykeb(); - void init_tdragonb(); - void init_ssmissin(); - void init_hachamf_prot(); - void init_redhawk(); - void init_tdragon_prot(); - void init_bubl2000(); - void init_banked_audiocpu(); - void init_grdnstrm(); - void init_spec2k(); - void init_redfoxwp2a(); - void init_grdnstrmg(); - void init_bjtwin(); - void init_atombjt(); + TILEMAP_MAPPER_MEMBER(tilemap_scan_pages); template TILE_GET_INFO_MEMBER(common_get_bg_tile_info); TILE_GET_INFO_MEMBER(common_get_tx_tile_info); @@ -133,14 +176,12 @@ public: DECLARE_VIDEO_START(macross); DECLARE_VIDEO_START(bioship); DECLARE_VIDEO_START(strahl); - DECLARE_VIDEO_START(gunnail); DECLARE_VIDEO_START(macross2); DECLARE_VIDEO_START(bjtwin); DECLARE_VIDEO_START(afega); DECLARE_VIDEO_START(grdnstrm); uint32_t screen_update_tharrier(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_manybloc(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - uint32_t screen_update_macross(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_strahl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_tdragon2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_bjtwin(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); @@ -151,7 +192,6 @@ public: uint32_t screen_update_bubl2000(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); TIMER_DEVICE_CALLBACK_MEMBER(tdragon_mcu_sim); TIMER_DEVICE_CALLBACK_MEMBER(hachamf_mcu_sim); - TIMER_DEVICE_CALLBACK_MEMBER(nmk16_scanline); TIMER_DEVICE_CALLBACK_MEMBER(manybloc_scanline); void nmk16_video_init(); inline void nmk16_draw_sprite(bitmap_ind16 &bitmap, const rectangle &cliprect, uint16_t *spr); @@ -172,39 +212,7 @@ public: void decode_gfx(); void decode_tdragonb(); void decode_ssmissin(); - void vandyke(machine_config &config); - void redhawkb(machine_config &config); - void grdnstrm(machine_config &config); - void tdragon_prot(machine_config &config); - void tdragon2(machine_config &config); - void tharrier(machine_config &config); - void raphero(machine_config &config); - void tdragon(machine_config &config); - void tdragonb(machine_config &config); - void twinactn(machine_config &config); - void firehawk(machine_config &config); - void gunnail(machine_config &config); - void hachamf(machine_config &config); - void redhawki(machine_config &config); - void bjtwin(machine_config &config); - void ssmissin(machine_config &config); - void bioship(machine_config &config); - void spec2k(machine_config &config); - void macross2(machine_config &config); - void blkheart(machine_config &config); - void stagger1(machine_config &config); - void manybloc(machine_config &config); - void acrobatm(machine_config &config); - void strahl(machine_config &config); - void tdragon3h(machine_config &config); - void atombjt(machine_config &config); - void hachamf_prot(machine_config &config); - void popspops(machine_config &config); - void grdnstrmk(machine_config &config); - void macross(machine_config &config); - void mustangb(machine_config &config); - void mustang(machine_config &config); - void vandykeb(machine_config &config); + void acrobatm_map(address_map &map); void afega_map(address_map &map); void afega_sound_cpu(address_map &map); diff --git a/src/mame/includes/norautp.h b/src/mame/includes/norautp.h index 63bd01da443..a756367572f 100644 --- a/src/mame/includes/norautp.h +++ b/src/mame/includes/norautp.h @@ -30,17 +30,6 @@ public: m_lamps(*this, "lamp%u", 0U) { } - DECLARE_WRITE_LINE_MEMBER(ppi2_obf_w); - TIMER_CALLBACK_MEMBER(ppi2_ack); - DECLARE_READ8_MEMBER(test2_r); - DECLARE_WRITE8_MEMBER(mainlamps_w); - DECLARE_WRITE8_MEMBER(soundlamps_w); - DECLARE_WRITE8_MEMBER(counterlamps_w); - void init_ssa(); - void init_enc(); - void init_deb(); - DECLARE_PALETTE_INIT(norautp); - uint32_t screen_update_norautp(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void noraut_base(machine_config &config); void kimble(machine_config &config); void kimbldhl(machine_config &config); @@ -55,6 +44,20 @@ public: void dphla(machine_config &config); void drhl(machine_config &config); void norautxp(machine_config &config); + + void init_ssa(); + void init_enc(); + void init_deb(); + +private: + DECLARE_WRITE_LINE_MEMBER(ppi2_obf_w); + TIMER_CALLBACK_MEMBER(ppi2_ack); + DECLARE_READ8_MEMBER(test2_r); + DECLARE_WRITE8_MEMBER(mainlamps_w); + DECLARE_WRITE8_MEMBER(soundlamps_w); + DECLARE_WRITE8_MEMBER(counterlamps_w); + DECLARE_PALETTE_INIT(norautp); + uint32_t screen_update_norautp(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void dphl_map(address_map &map); void dphla_map(address_map &map); void dphltest_map(address_map &map); @@ -71,7 +74,6 @@ public: void nortest1_map(address_map &map); void ssjkrpkr_map(address_map &map); -protected: virtual void machine_start() override { m_lamps.resolve(); } virtual void video_start() override; diff --git a/src/mame/includes/nova2001.h b/src/mame/includes/nova2001.h index 32d80b2a3eb..596f3894ecf 100644 --- a/src/mame/includes/nova2001.h +++ b/src/mame/includes/nova2001.h @@ -15,6 +15,17 @@ public: m_bg_videoram(*this, "bg_videoram"), m_spriteram(*this, "spriteram") { } + void raiders5(machine_config &config); + void ninjakun(machine_config &config); + void nova2001(machine_config &config); + void pkunwar(machine_config &config); + + void init_raiders5(); + void init_pkunwar(); + + DECLARE_CUSTOM_INPUT_MEMBER(ninjakun_io_A002_ctrl_r); + +private: required_device m_maincpu; required_device m_gfxdecode; required_device m_palette; @@ -39,10 +50,6 @@ public: DECLARE_WRITE8_MEMBER(nova2001_flipscreen_w); DECLARE_WRITE8_MEMBER(pkunwar_flipscreen_w); - DECLARE_CUSTOM_INPUT_MEMBER(ninjakun_io_A002_ctrl_r); - - void init_raiders5(); - void init_pkunwar(); DECLARE_VIDEO_START(nova2001); DECLARE_PALETTE_INIT(nova2001); DECLARE_PALETTE_DECODER(BBGGRRII); @@ -66,10 +73,6 @@ public: void nova2001_draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect ); void pkunwar_draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect ); void lineswap_gfx_roms(const char *region, const int bit); - void raiders5(machine_config &config); - void ninjakun(machine_config &config); - void nova2001(machine_config &config); - void pkunwar(machine_config &config); void ninjakun_cpu1_map(address_map &map); void ninjakun_cpu2_map(address_map &map); void nova2001_map(address_map &map); diff --git a/src/mame/includes/novagbase.h b/src/mame/includes/novagbase.h index 0d944df9b52..a29e0cc3056 100644 --- a/src/mame/includes/novagbase.h +++ b/src/mame/includes/novagbase.h @@ -36,6 +36,11 @@ public: m_display_maxx(0) { } + TIMER_DEVICE_CALLBACK_MEMBER(display_decay_tick); + DECLARE_PALETTE_INIT(novag_lcd); + HD44780_PIXEL_UPDATE(novag_lcd_pixel_update); + +protected: // devices/pointers required_device m_maincpu; optional_device m_dac; @@ -64,16 +69,12 @@ public: u16 m_display_segmask[0x20]; // if not 0, display matrix row is a digit, mask indicates connected segments u8 m_display_decay[0x20][0x20]; // (internal use) - TIMER_DEVICE_CALLBACK_MEMBER(display_decay_tick); void display_update(); void set_display_size(int maxx, int maxy); void set_display_segmask(u32 digits, u32 mask); void display_matrix(int maxx, int maxy, u32 setx, u32 sety, bool update = true); - DECLARE_PALETTE_INIT(novag_lcd); - HD44780_PIXEL_UPDATE(novag_lcd_pixel_update); -protected: virtual void machine_start() override; virtual void machine_reset() override; }; diff --git a/src/mame/includes/nycaptor.h b/src/mame/includes/nycaptor.h index 1d2c391ebd0..6b616f23bd1 100644 --- a/src/mame/includes/nycaptor.h +++ b/src/mame/includes/nycaptor.h @@ -27,6 +27,16 @@ public: m_soundlatch2(*this, "soundlatch2"), m_soundnmi(*this, "soundnmi") { } + void nycaptor(machine_config &config); + void cyclshtg(machine_config &config); + void bronx(machine_config &config); + + void init_cyclshtg(); + void init_colt(); + void init_bronx(); + void init_nycaptor(); + +private: /* memory pointers */ required_shared_ptr m_videoram; required_shared_ptr m_scrlram; @@ -84,10 +94,6 @@ public: DECLARE_READ8_MEMBER(nycaptor_gfxctrl_r); DECLARE_WRITE8_MEMBER(nycaptor_scrlram_w); DECLARE_WRITE8_MEMBER(unk_w); - void init_cyclshtg(); - void init_colt(); - void init_bronx(); - void init_nycaptor(); TILE_GET_INFO_MEMBER(get_tile_info); virtual void machine_start() override; virtual void machine_reset() override; @@ -95,9 +101,6 @@ public: uint32_t screen_update_nycaptor(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); int nycaptor_spot( ); void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect, int pri ); - void nycaptor(machine_config &config); - void cyclshtg(machine_config &config); - void bronx(machine_config &config); void bronx_master_map(address_map &map); void bronx_slave_io_map(address_map &map); void bronx_slave_map(address_map &map); diff --git a/src/mame/includes/ob68k1a.h b/src/mame/includes/ob68k1a.h index d5e6d6128b9..9d93fb7c421 100644 --- a/src/mame/includes/ob68k1a.h +++ b/src/mame/includes/ob68k1a.h @@ -39,6 +39,9 @@ public: m_ram(*this, RAM_TAG) { } + void ob68k1a(machine_config &config); + +private: required_device m_maincpu; required_device m_dbrg; required_device m_acia0; @@ -54,7 +57,6 @@ public: DECLARE_READ8_MEMBER( pia_r ); DECLARE_WRITE8_MEMBER( pia_w ); - void ob68k1a(machine_config &config); void ob68k1a_mem(address_map &map); }; diff --git a/src/mame/includes/offtwall.h b/src/mame/includes/offtwall.h index 0a8853d035f..cb068fdb889 100644 --- a/src/mame/includes/offtwall.h +++ b/src/mame/includes/offtwall.h @@ -27,12 +27,12 @@ public: m_bankrom_base(*this, "bankrom_base") { } + void offtwall(machine_config &config); + void init_offtwall(); void init_offtwalc(); - void offtwall(machine_config &config); - -protected: +private: DECLARE_WRITE16_MEMBER(io_latch_w); DECLARE_READ16_MEMBER(bankswitch_r); DECLARE_READ16_MEMBER(bankrom_r); @@ -42,7 +42,6 @@ protected: uint32_t screen_update_offtwall(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void main_map(address_map &map); -private: required_device m_maincpu; required_device m_jsa; required_device m_vad; diff --git a/src/mame/includes/ohmygod.h b/src/mame/includes/ohmygod.h index 63ab6231bc0..c10fd682a58 100644 --- a/src/mame/includes/ohmygod.h +++ b/src/mame/includes/ohmygod.h @@ -24,11 +24,12 @@ public: m_palette(*this, "palette") { } + void ohmygod(machine_config &config); + void init_ohmygod(); void init_naname(); - void ohmygod(machine_config &config); -protected: +private: DECLARE_WRITE16_MEMBER(ohmygod_ctrl_w); DECLARE_WRITE16_MEMBER(ohmygod_videoram_w); DECLARE_WRITE16_MEMBER(ohmygod_spritebank_w); @@ -43,7 +44,6 @@ protected: void ohmygod_map(address_map &map); void oki_map(address_map &map); -private: /* memory pointers */ required_shared_ptr m_videoram; required_shared_ptr m_spriteram; diff --git a/src/mame/includes/ojankohs.h b/src/mame/includes/ojankohs.h index 56549434be3..747d3ea058b 100644 --- a/src/mame/includes/ojankohs.h +++ b/src/mame/includes/ojankohs.h @@ -31,6 +31,12 @@ public: m_dsw3(*this, "dsw3"), m_dsw4(*this, "dsw4") { } + void ojankohs(machine_config &config); + void ccasino(machine_config &config); + void ojankoc(machine_config &config); + void ojankoy(machine_config &config); + +private: /* memory pointers */ optional_shared_ptr m_videoram; optional_shared_ptr m_colorram; @@ -108,10 +114,7 @@ public: uint32_t screen_update_ojankoc(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void ojankoc_flipscreen( address_space &space, int data ); DECLARE_WRITE_LINE_MEMBER(ojankohs_adpcm_int); - void ojankohs(machine_config &config); - void ccasino(machine_config &config); - void ojankoc(machine_config &config); - void ojankoy(machine_config &config); + void ccasino_io_map(address_map &map); void ojankoc_io_map(address_map &map); void ojankoc_map(address_map &map); diff --git a/src/mame/includes/ondra.h b/src/mame/includes/ondra.h index e19db297b92..be65072d208 100644 --- a/src/mame/includes/ondra.h +++ b/src/mame/includes/ondra.h @@ -34,6 +34,9 @@ public: { } + void ondra(machine_config &config); + +private: DECLARE_READ8_MEMBER(ondra_keyboard_r); DECLARE_WRITE8_MEMBER(ondra_port_03_w); DECLARE_WRITE8_MEMBER(ondra_port_09_w); @@ -42,10 +45,9 @@ public: DECLARE_WRITE_LINE_MEMBER(vblank_irq); TIMER_CALLBACK_MEMBER(nmi_check_callback); - void ondra(machine_config &config); void ondra_io(address_map &map); void ondra_mem(address_map &map); -protected: + virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; diff --git a/src/mame/includes/oneshot.h b/src/mame/includes/oneshot.h index f85e2394ef0..a23e606c4be 100644 --- a/src/mame/includes/oneshot.h +++ b/src/mame/includes/oneshot.h @@ -19,6 +19,10 @@ public: m_gfxdecode(*this, "gfxdecode"), m_palette(*this, "palette") { } + void maddonna(machine_config &config); + void oneshot(machine_config &config); + +private: /* memory pointers */ required_shared_ptr m_sprites; required_shared_ptr m_bg_videoram; @@ -64,8 +68,6 @@ public: required_device m_oki; required_device m_gfxdecode; required_device m_palette; - void maddonna(machine_config &config); - void oneshot(machine_config &config); void oneshot_map(address_map &map); void oneshot_sound_map(address_map &map); }; diff --git a/src/mame/includes/opwolf.h b/src/mame/includes/opwolf.h index 2bf20a5c1ea..4187cb02847 100644 --- a/src/mame/includes/opwolf.h +++ b/src/mame/includes/opwolf.h @@ -39,16 +39,18 @@ public: m_msm2(*this, "msm2") { } - DECLARE_CUSTOM_INPUT_MEMBER(opwolf_gun_x_r); - DECLARE_CUSTOM_INPUT_MEMBER(opwolf_gun_y_r); - void init_opwolf(); - void init_opwolfb(); - void init_opwolfp(); void opwolf(machine_config &config); void opwolfb(machine_config &config); void opwolfp(machine_config &config); -protected: + void init_opwolf(); + void init_opwolfb(); + void init_opwolfp(); + + DECLARE_CUSTOM_INPUT_MEMBER(opwolf_gun_x_r); + DECLARE_CUSTOM_INPUT_MEMBER(opwolf_gun_y_r); + +private: DECLARE_READ16_MEMBER(cchip_r); DECLARE_WRITE16_MEMBER(cchip_w); DECLARE_READ16_MEMBER(opwolf_in_r); @@ -86,7 +88,6 @@ protected: void opwolfb_sub_z80_map(address_map &map); void opwolfp_map(address_map &map); -private: /* memory pointers */ optional_shared_ptr m_cchip_ram; diff --git a/src/mame/includes/orao.h b/src/mame/includes/orao.h index 7ef9c172730..31bb01625f8 100644 --- a/src/mame/includes/orao.h +++ b/src/mame/includes/orao.h @@ -26,17 +26,20 @@ public: m_beep(0) { } - DECLARE_READ8_MEMBER(orao_io_r); - DECLARE_WRITE8_MEMBER(orao_io_w); + void orao(machine_config &config); + void init_orao(); void init_orao103(); + +private: + DECLARE_READ8_MEMBER(orao_io_r); + DECLARE_WRITE8_MEMBER(orao_io_w); virtual void machine_reset() override; virtual void video_start() override; uint32_t screen_update_orao(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void orao(machine_config &config); void orao_mem(address_map &map); -private: + required_shared_ptr m_memory; required_shared_ptr m_video_ram; required_device m_maincpu; diff --git a/src/mame/includes/orbit.h b/src/mame/includes/orbit.h index de9b6958e67..40869199c3e 100644 --- a/src/mame/includes/orbit.h +++ b/src/mame/includes/orbit.h @@ -44,7 +44,7 @@ public: void orbit(machine_config &config); -protected: +private: DECLARE_WRITE_LINE_MEMBER(coin_lockout_w); DECLARE_WRITE8_MEMBER(orbit_playfield_w); TILE_GET_INFO_MEMBER(get_tile_info); @@ -65,7 +65,6 @@ protected: void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect ); void update_misc_flags(address_space &space, uint8_t val); -private: /* memory pointers */ required_shared_ptr m_playfield_ram; required_shared_ptr m_sprite_ram; diff --git a/src/mame/includes/orion.h b/src/mame/includes/orion.h index b08f2770f42..7c038011b23 100644 --- a/src/mame/includes/orion.h +++ b/src/mame/includes/orion.h @@ -52,6 +52,13 @@ public: , m_screen(*this, "screen") { } + void orionz80(machine_config &config); + void orion128ms(machine_config &config); + void orion128(machine_config &config); + void orionpro(machine_config &config); + void orionz80ms(machine_config &config); + +private: DECLARE_READ8_MEMBER(orion128_system_r); DECLARE_WRITE8_MEMBER(orion128_system_w); DECLARE_READ8_MEMBER(orion128_romdisk_r); @@ -87,18 +94,13 @@ public: DECLARE_WRITE8_MEMBER(orion_romdisk_portc_w); DECLARE_FLOPPY_FORMATS( orion_floppy_formats ); - void orionz80(machine_config &config); - void orion128ms(machine_config &config); - void orion128(machine_config &config); - void orionpro(machine_config &config); - void orionz80ms(machine_config &config); void orion128_io(address_map &map); void orion128_mem(address_map &map); void orionpro_io(address_map &map); void orionpro_mem(address_map &map); void orionz80_io(address_map &map); void orionz80_mem(address_map &map); -protected: + uint8_t m_orion128_video_mode; uint8_t m_orion128_video_page; uint8_t m_orion128_video_width; diff --git a/src/mame/includes/osborne1.h b/src/mame/includes/osborne1.h index 27bf0bf0d77..68691cb27ce 100644 --- a/src/mame/includes/osborne1.h +++ b/src/mame/includes/osborne1.h @@ -33,6 +33,7 @@ class osborne1_state : public driver_device public: osborne1_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag), + m_ram(*this, RAM_TAG), m_maincpu(*this, "maincpu"), m_gfxdecode(*this, "gfxdecode"), m_screen(*this, "screen"), @@ -41,7 +42,6 @@ public: m_pia1(*this, "pia_1"), m_acia(*this, "acia"), m_fdc(*this, "mb8877"), - m_ram(*this, RAM_TAG), m_ieee(*this, IEEE488_TAG), m_floppy0(*this, "mb8877:0"), m_floppy1(*this, "mb8877:1"), @@ -59,7 +59,16 @@ public: { } + void osborne1(machine_config &config); + + void init_osborne1(); + DECLARE_INPUT_CHANGED_MEMBER(reset_key); + + void osborne1nv_io(address_map &map); + required_device m_ram; + +private: DECLARE_WRITE8_MEMBER(bank_0xxx_w); DECLARE_WRITE8_MEMBER(bank_1xxx_w); DECLARE_READ8_MEMBER(bank_2xxx_3xxx_r); @@ -80,9 +89,7 @@ public: DECLARE_WRITE_LINE_MEMBER(serial_acia_irq_func); - DECLARE_INPUT_CHANGED_MEMBER(reset_key); - void init_osborne1(); virtual void machine_reset() override; virtual void video_start() override; u32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); @@ -95,17 +102,14 @@ public: required_device m_pia1; required_device m_acia; required_device m_fdc; - required_device m_ram; required_device m_ieee; required_device m_floppy0; required_device m_floppy1; - void osborne1(machine_config &config); void osborne1_io(address_map &map); void osborne1_mem(address_map &map); void osborne1_op(address_map &map); - void osborne1nv_io(address_map &map); -protected: + TIMER_CALLBACK_MEMBER(video_callback); TIMER_CALLBACK_MEMBER(acia_rxc_txc_callback); diff --git a/src/mame/includes/overdriv.h b/src/mame/includes/overdriv.h index 7d7c6e8da10..21f4fc1e168 100644 --- a/src/mame/includes/overdriv.h +++ b/src/mame/includes/overdriv.h @@ -31,6 +31,9 @@ public: , m_led(*this, "led0") { } + void overdriv(machine_config &config); + +private: DECLARE_WRITE16_MEMBER(eeprom_w); DECLARE_WRITE16_MEMBER(cpuA_ctrl_w); DECLARE_READ16_MEMBER(cpuB_ctrl_r); @@ -49,13 +52,12 @@ public: K051316_CB_MEMBER(zoom_callback_1); K051316_CB_MEMBER(zoom_callback_2); K053246_CB_MEMBER(sprite_callback); - void overdriv(machine_config &config); void overdriv_k053260_map(address_map &map); void overdriv_master_map(address_map &map); void overdriv_slave_map(address_map &map); void overdriv_sound_map(address_map &map); -protected: + virtual void machine_start() override; virtual void machine_reset() override; diff --git a/src/mame/includes/pirates.h b/src/mame/includes/pirates.h index 934258c0f86..c9e158df93a 100644 --- a/src/mame/includes/pirates.h +++ b/src/mame/includes/pirates.h @@ -20,6 +20,14 @@ public: m_fg_tileram(*this, "fg_tileram"), m_bg_tileram(*this, "bg_tileram") { } + void pirates(machine_config &config); + + void init_pirates(); + void init_genix(); + + DECLARE_CUSTOM_INPUT_MEMBER(prot_r); + +private: required_device m_maincpu; required_device m_eeprom; required_device m_oki; @@ -42,11 +50,6 @@ public: DECLARE_WRITE16_MEMBER(bg_tileram_w); DECLARE_READ16_MEMBER(genix_prot_r); - DECLARE_CUSTOM_INPUT_MEMBER(prot_r); - - void init_pirates(); - void init_genix(); - TILE_GET_INFO_MEMBER(get_tx_tile_info); TILE_GET_INFO_MEMBER(get_fg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info); @@ -60,6 +63,5 @@ public: void decrypt_p(); void decrypt_s(); void decrypt_oki(); - void pirates(machine_config &config); void pirates_map(address_map &map); }; diff --git a/src/mame/includes/pitnrun.h b/src/mame/includes/pitnrun.h index df6747eb4a9..d45b169da6e 100644 --- a/src/mame/includes/pitnrun.h +++ b/src/mame/includes/pitnrun.h @@ -16,6 +16,10 @@ public: m_videoram2(*this, "videoram2"), m_spriteram(*this, "spriteram") { } + void pitnrun_mcu(machine_config &config); + void pitnrun(machine_config &config); + +private: required_device m_maincpu; optional_device m_mcu; required_device m_gfxdecode; @@ -81,8 +85,6 @@ public: uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void spotlights(); void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect ); - void pitnrun_mcu(machine_config &config); - void pitnrun(machine_config &config); void pitnrun_map(address_map &map); void pitnrun_map_mcu(address_map &map); void pitnrun_sound_io_map(address_map &map); diff --git a/src/mame/includes/pk8000.h b/src/mame/includes/pk8000.h index 3636f234ffe..946a755f1a7 100644 --- a/src/mame/includes/pk8000.h +++ b/src/mame/includes/pk8000.h @@ -10,6 +10,13 @@ public: : driver_device(mconfig, type, tag) , m_maincpu(*this, "maincpu") { } + DECLARE_PALETTE_INIT(pk8000); + + DECLARE_READ8_MEMBER(_84_porta_r); + DECLARE_WRITE8_MEMBER(_84_porta_w); + DECLARE_WRITE8_MEMBER(_84_portc_w); + +protected: DECLARE_READ8_MEMBER(video_color_r); DECLARE_WRITE8_MEMBER(video_color_w); DECLARE_READ8_MEMBER(text_start_r); @@ -22,15 +29,9 @@ public: DECLARE_WRITE8_MEMBER(color_start_w); DECLARE_READ8_MEMBER(color_r); DECLARE_WRITE8_MEMBER(color_w); - DECLARE_READ8_MEMBER(_84_porta_r); - DECLARE_WRITE8_MEMBER(_84_porta_w); - DECLARE_WRITE8_MEMBER(_84_portc_w); - - DECLARE_PALETTE_INIT(pk8000); uint32_t video_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, uint8_t *videomem); -protected: uint8_t m_text_start; uint8_t m_chargen_start; uint8_t m_video_start; diff --git a/src/mame/includes/pk8020.h b/src/mame/includes/pk8020.h index 19cf9aeec24..3d3f4b57f49 100644 --- a/src/mame/includes/pk8020.h +++ b/src/mame/includes/pk8020.h @@ -45,6 +45,9 @@ public: m_region_gfx1(*this, "gfx1"), m_palette(*this, "palette") { } + void pk8020(machine_config &config); + +private: DECLARE_FLOPPY_FORMATS(floppy_formats); uint8_t m_color; @@ -81,10 +84,9 @@ public: DECLARE_WRITE_LINE_MEMBER(pk8020_pit_out0); DECLARE_WRITE_LINE_MEMBER(pk8020_pit_out1); - void pk8020(machine_config &config); void pk8020_io(address_map &map); void pk8020_mem(address_map &map); -protected: + required_device m_maincpu; required_device m_ppi8255_1; required_device m_ppi8255_2; diff --git a/src/mame/includes/pktgaldx.h b/src/mame/includes/pktgaldx.h index 29364294db5..ae40a7c1841 100644 --- a/src/mame/includes/pktgaldx.h +++ b/src/mame/includes/pktgaldx.h @@ -36,6 +36,12 @@ public: m_decrypted_opcodes(*this, "decrypted_opcodes") { } + void pktgaldx(machine_config &config); + void pktgaldb(machine_config &config); + + void init_pktgaldx(); + +private: optional_device m_deco104; /* memory pointers */ @@ -57,7 +63,6 @@ public: DECLARE_READ16_MEMBER(pckgaldx_unknown_r); DECLARE_READ16_MEMBER(pckgaldx_protection_r); DECLARE_WRITE16_MEMBER(pktgaldx_oki_bank_w); - void init_pktgaldx(); virtual void machine_start() override; uint32_t screen_update_pktgaldx(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_pktgaldb(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); @@ -68,8 +73,6 @@ public: DECLARE_WRITE16_MEMBER( vblank_ack_w ); DECO16IC_BANK_CB_MEMBER(bank_callback); - void pktgaldx(machine_config &config); - void pktgaldb(machine_config &config); void decrypted_opcodes_map(address_map &map); void pktgaldb_map(address_map &map); void pktgaldx_map(address_map &map); diff --git a/src/mame/includes/playch10.h b/src/mame/includes/playch10.h index f8efc7ebc0d..8f82e96bcdb 100644 --- a/src/mame/includes/playch10.h +++ b/src/mame/includes/playch10.h @@ -27,6 +27,32 @@ public: { } + void playch10(machine_config &config); + void playchnv(machine_config &config); + void playch10_hboard(machine_config &config); + + void init_playch10(); + void init_pc_gun(); + void init_pcaboard(); + void init_pcbboard(); + void init_pccboard(); + void init_pcdboard(); + void init_pcdboard_2(); + void init_pceboard(); + void init_pcfboard(); + void init_pcfboard_2(); + void init_virus(); + void init_ttoon(); + void init_pcgboard(); + void init_pcgboard_type2(); + void init_pchboard(); + void init_pciboard(); + void init_pckboard(); + void init_pc_hrz(); + + DECLARE_CUSTOM_INPUT_MEMBER(pc10_int_detect_r); + +private: DECLARE_WRITE_LINE_MEMBER(up8w_w); DECLARE_READ8_MEMBER(ram_8w_r); DECLARE_WRITE8_MEMBER(ram_8w_w); @@ -59,43 +85,17 @@ public: DECLARE_WRITE8_MEMBER(iboard_rom_switch_w); DECLARE_WRITE8_MEMBER(hboard_rom_switch_w); DECLARE_WRITE8_MEMBER(playch10_videoram_w); - DECLARE_CUSTOM_INPUT_MEMBER(pc10_int_detect_r); - - void init_playch10(); - void init_pc_gun(); - void init_pcaboard(); - void init_pcbboard(); - void init_pccboard(); - void init_pcdboard(); - void init_pcdboard_2(); - void init_pceboard(); - void init_pcfboard(); - void init_pcfboard_2(); - void init_virus(); - void init_ttoon(); - void init_pcgboard(); - void init_pcgboard_type2(); - void init_pchboard(); - void init_pciboard(); - void init_pckboard(); - void init_pc_hrz(); TILE_GET_INFO_MEMBER(get_bg_tile_info); - // machine configuration builders - void playch10(machine_config &config); - void playchnv(machine_config &config); - void playch10_hboard(machine_config &config); - void bios_io_map(address_map &map); void bios_map(address_map &map); void cart_map(address_map &map); -protected: + virtual void machine_start() override; virtual void machine_reset() override; virtual void video_start() override; -private: struct chr_bank { int writable; // 1 for RAM, 0 for ROM diff --git a/src/mame/includes/playmark.h b/src/mame/includes/playmark.h index c44829f2445..282f1c9c35c 100644 --- a/src/mame/includes/playmark.h +++ b/src/mame/includes/playmark.h @@ -27,6 +27,17 @@ public: m_ticket(*this, "ticket"), m_token(*this, "token") { } + void wbeachvl(machine_config &config); + void hrdtimes(machine_config &config); + void luckboomh(machine_config &config); + void bigtwin(machine_config &config); + void hotmind(machine_config &config); + void bigtwinb(machine_config &config); + void excelsr(machine_config &config); + + void init_pic_decode(); + +protected: /* memory pointers */ optional_shared_ptr m_bgvideoram; required_shared_ptr m_videoram1; @@ -86,7 +97,6 @@ public: DECLARE_WRITE16_MEMBER(excelsr_scroll_w); DECLARE_WRITE16_MEMBER(hrdtimes_scroll_w); DECLARE_WRITE8_MEMBER(playmark_oki_banking_w); - void init_pic_decode(); TILE_GET_INFO_MEMBER(bigtwin_get_tx_tile_info); TILE_GET_INFO_MEMBER(bigtwin_get_fg_tile_info); TILE_GET_INFO_MEMBER(wbeachvl_get_tx_tile_info); @@ -122,13 +132,7 @@ public: required_device m_palette; optional_device m_ticket; optional_device m_token; - void wbeachvl(machine_config &config); - void hrdtimes(machine_config &config); - void luckboomh(machine_config &config); - void bigtwin(machine_config &config); - void hotmind(machine_config &config); - void bigtwinb(machine_config &config); - void excelsr(machine_config &config); + void bigtwin_main_map(address_map &map); void bigtwinb_main_map(address_map &map); void excelsr_main_map(address_map &map); diff --git a/src/mame/includes/plygonet.h b/src/mame/includes/plygonet.h index 92725cb9b1a..f6ff2d98faa 100644 --- a/src/mame/includes/plygonet.h +++ b/src/mame/includes/plygonet.h @@ -36,6 +36,11 @@ public: m_dsp56k_p_8000(*this, "dsp56k_p_8000") { } + void plygonet(machine_config &config); + + void init_polygonet(); + +private: required_device m_maincpu; required_device m_audiocpu; required_device m_dsp; @@ -97,7 +102,7 @@ public: DECLARE_WRITE32_MEMBER(polygonet_ttl_ram_w); DECLARE_READ32_MEMBER(polygonet_roz_ram_r); DECLARE_WRITE32_MEMBER(polygonet_roz_ram_w); - void init_polygonet(); + TILE_GET_INFO_MEMBER(ttl_get_tile_info); TILE_GET_INFO_MEMBER(roz_get_tile_info); TILEMAP_MAPPER_MEMBER(plygonet_scan); @@ -108,7 +113,7 @@ public: uint32_t screen_update_polygonet(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); INTERRUPT_GEN_MEMBER(polygonet_interrupt); DECLARE_WRITE_LINE_MEMBER(k054539_nmi_gen); - void plygonet(machine_config &config); + void dsp_data_map(address_map &map); void dsp_program_map(address_map &map); void main_map(address_map &map); diff --git a/src/mame/includes/pmd85.h b/src/mame/includes/pmd85.h index 6f53c64ad55..26d5a7c9723 100644 --- a/src/mame/includes/pmd85.h +++ b/src/mame/includes/pmd85.h @@ -20,11 +20,6 @@ class pmd85_state : public driver_device { public: - enum - { - TIMER_CASSETTE - }; - pmd85_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag), m_maincpu(*this, "maincpu"), @@ -58,6 +53,29 @@ public: m_leds(*this, "led%u", 0U) { } + void pmd85(machine_config &config); + void pmd851(machine_config &config); + void pmd853(machine_config &config); + void pmd852a(machine_config &config); + void alfa(machine_config &config); + void c2717(machine_config &config); + void mato(machine_config &config); + + void init_mato(); + void init_pmd852a(); + void init_pmd851(); + void init_pmd853(); + void init_alfa(); + void init_c2717(); + + DECLARE_INPUT_CHANGED_MEMBER(pmd85_reset); + +private: + enum + { + TIMER_CASSETTE + }; + uint8_t m_rom_module_present; uint8_t m_ppi_port_outputs[4][3]; uint8_t m_startup_mem_map; @@ -72,12 +90,7 @@ public: DECLARE_WRITE8_MEMBER(pmd85_io_w); DECLARE_READ8_MEMBER(mato_io_r); DECLARE_WRITE8_MEMBER(mato_io_w); - void init_mato(); - void init_pmd852a(); - void init_pmd851(); - void init_pmd853(); - void init_alfa(); - void init_c2717(); + virtual void machine_reset() override; uint32_t screen_update_pmd85(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); TIMER_CALLBACK_MEMBER(pmd85_cassette_timer_callback); @@ -109,15 +122,7 @@ public: DECLARE_WRITE8_MEMBER(pmd85_ppi_3_porta_w); DECLARE_WRITE8_MEMBER(pmd85_ppi_3_portb_w); DECLARE_WRITE8_MEMBER(pmd85_ppi_3_portc_w); - DECLARE_INPUT_CHANGED_MEMBER(pmd85_reset); - void pmd85(machine_config &config); - void pmd851(machine_config &config); - void pmd853(machine_config &config); - void pmd852a(machine_config &config); - void alfa(machine_config &config); - void c2717(machine_config &config); - void mato(machine_config &config); void alfa_mem(address_map &map); void c2717_mem(address_map &map); void mato_io_map(address_map &map); @@ -126,7 +131,7 @@ public: void pmd853_mem(address_map &map); void pmd85_io_map(address_map &map); void pmd85_mem(address_map &map); -protected: + virtual void machine_start() override { m_leds.resolve(); } required_device m_maincpu; diff --git a/src/mame/includes/pocketc.h b/src/mame/includes/pocketc.h index c42ab4aa670..51e6865b246 100644 --- a/src/mame/includes/pocketc.h +++ b/src/mame/includes/pocketc.h @@ -19,11 +19,16 @@ public: pocketc_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag) { } - DECLARE_PALETTE_INIT(pocketc); + void pocketc(machine_config &config); - static const unsigned short pocketc_colortable[8][2]; +protected: void pocketc_draw_special(bitmap_ind16 &bitmap,int x, int y, const POCKETC_FIGURE fig, int color); - void pocketc(machine_config &config); + + static const unsigned short pocketc_colortable[8][2]; + +private: + DECLARE_PALETTE_INIT(pocketc); + }; #endif // MAME_INCLUDES_POCKETC_H diff --git a/src/mame/includes/pokechmp.h b/src/mame/includes/pokechmp.h index d52eced2559..d7c05861837 100644 --- a/src/mame/includes/pokechmp.h +++ b/src/mame/includes/pokechmp.h @@ -22,6 +22,11 @@ public: m_soundlatch(*this, "soundlatch") { } + void pokechmp(machine_config &config); + + void init_pokechmp(); + +private: required_shared_ptr m_videoram; tilemap_t *m_bg_tilemap; required_shared_ptr m_spriteram; @@ -31,7 +36,6 @@ public: DECLARE_WRITE8_MEMBER(pokechmp_videoram_w); DECLARE_WRITE8_MEMBER(pokechmp_flipscreen_w); DECLARE_WRITE_LINE_MEMBER(sound_irq); - void init_pokechmp(); TILE_GET_INFO_MEMBER(get_bg_tile_info); virtual void video_start() override; uint32_t screen_update_pokechmp(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); @@ -41,7 +45,6 @@ public: required_device m_gfxdecode; required_device m_palette; required_device m_soundlatch; - void pokechmp(machine_config &config); void pokechmp_map(address_map &map); void pokechmp_oki_map(address_map &map); void pokechmp_sound_map(address_map &map); diff --git a/src/mame/includes/policetr.h b/src/mame/includes/policetr.h index a8a4fabd885..4df9314d31a 100644 --- a/src/mame/includes/policetr.h +++ b/src/mame/includes/policetr.h @@ -28,17 +28,17 @@ public: m_screen(*this, "screen"), m_palette(*this, "palette") { } - DECLARE_CUSTOM_INPUT_MEMBER(bsmt_status_r); + void sshooter(machine_config &config); + void policetr(machine_config &config); void init_sshoot12(); void init_policetr(); void init_sshooter(); void init_plctr13b(); - void sshooter(machine_config &config); - void policetr(machine_config &config); + DECLARE_CUSTOM_INPUT_MEMBER(bsmt_status_r); -protected: +private: enum { TIMER_IRQ5_GEN diff --git a/src/mame/includes/poly.h b/src/mame/includes/poly.h index bcfa1421a7c..bbffab7b96a 100644 --- a/src/mame/includes/poly.h +++ b/src/mame/includes/poly.h @@ -81,6 +81,14 @@ public: static constexpr feature_type imperfect_features() { return feature::KEYBOARD; } + void poly(machine_config &config); + void poly2(machine_config &config); + + void init_poly(); + + virtual void poly_bank(address_map &map); + +private: DECLARE_READ8_MEMBER( logical_mem_r ); DECLARE_WRITE8_MEMBER( logical_mem_w ); DECLARE_READ8_MEMBER( vector_r ); @@ -103,21 +111,14 @@ public: DECLARE_READ8_MEMBER( network_r ); DECLARE_WRITE8_MEMBER( network_w ); DECLARE_WRITE_LINE_MEMBER( network_clk_w ); - void init_poly(); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - virtual void poly_bank(address_map &map); - - void poly(machine_config &config); void poly_mem(address_map &map); - void poly2(machine_config &config); -protected: virtual void machine_start() override; virtual void machine_reset() override; -private: required_device m_maincpu; required_device m_bankdev; required_device_array m_trom; @@ -157,18 +158,18 @@ public: static constexpr feature_type imperfect_features() { return feature::KEYBOARD; } + void polydev(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(drive_register_w); DECLARE_READ8_MEMBER(drive_register_r); DECLARE_WRITE_LINE_MEMBER(motor_w); DECLARE_READ8_MEMBER(fdc_inv_r); DECLARE_WRITE8_MEMBER(fdc_inv_w); - void polydev(machine_config &config); -protected: virtual void poly_bank(address_map &map) override; -private: DECLARE_FLOPPY_FORMATS(floppy_formats); required_device m_fdc; diff --git a/src/mame/includes/poly88.h b/src/mame/includes/poly88.h index e2ea8e5866f..f1f32c56713 100644 --- a/src/mame/includes/poly88.h +++ b/src/mame/includes/poly88.h @@ -38,6 +38,12 @@ public: m_line5(*this, "LINE5"), m_line6(*this, "LINE6") { } + void poly88(machine_config &config); + void poly8813(machine_config &config); + + void init_poly88(); + +private: required_shared_ptr m_video_ram; uint8_t *m_FNT; uint8_t m_intr; @@ -51,7 +57,6 @@ public: DECLARE_WRITE8_MEMBER(poly88_baud_rate_w); DECLARE_READ8_MEMBER(poly88_keyboard_r); DECLARE_WRITE8_MEMBER(poly88_intr_w); - void init_poly88(); virtual void machine_reset() override; virtual void video_start() override; uint32_t screen_update_poly88(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); @@ -64,13 +69,11 @@ public: IRQ_CALLBACK_MEMBER(poly88_irq_callback); DECLARE_SNAPSHOT_LOAD_MEMBER( poly88 ); - void poly88(machine_config &config); - void poly8813(machine_config &config); void poly8813_io(address_map &map); void poly8813_mem(address_map &map); void poly88_io(address_map &map); void poly88_mem(address_map &map); -protected: + required_device m_maincpu; required_device m_uart; required_device m_cassette; diff --git a/src/mame/includes/poly880.h b/src/mame/includes/poly880.h index 477c0bcd469..6b318952516 100644 --- a/src/mame/includes/poly880.h +++ b/src/mame/includes/poly880.h @@ -30,6 +30,12 @@ public: m_digits(*this, "digit%u", 0U) { } + void poly880(machine_config &config); + + DECLARE_INPUT_CHANGED_MEMBER( trigger_reset ); + DECLARE_INPUT_CHANGED_MEMBER( trigger_nmi ); + +private: required_device m_maincpu; required_device m_cassette; required_ioport_array<3> m_ki; @@ -43,15 +49,12 @@ public: DECLARE_WRITE8_MEMBER( pio1_pa_w ); DECLARE_READ8_MEMBER( pio1_pb_r ); DECLARE_WRITE8_MEMBER( pio1_pb_w ); - DECLARE_INPUT_CHANGED_MEMBER( trigger_reset ); - DECLARE_INPUT_CHANGED_MEMBER( trigger_nmi ); void update_display(); /* display state */ uint8_t m_digit; uint8_t m_segment; - void poly880(machine_config &config); void poly880_io(address_map &map); void poly880_mem(address_map &map); }; diff --git a/src/mame/includes/polyplay.h b/src/mame/includes/polyplay.h index 7867ed878c3..0122026b2e2 100644 --- a/src/mame/includes/polyplay.h +++ b/src/mame/includes/polyplay.h @@ -36,6 +36,12 @@ public: m_lamps(*this, "lamp%u", 1U) { } + void polyplay_zre(machine_config &config); + void polyplay_zrepp(machine_config &config); + + DECLARE_INPUT_CHANGED_MEMBER(input_changed); + +private: INTERRUPT_GEN_MEMBER(nmi_handler); /* devices */ @@ -48,19 +54,15 @@ public: DECLARE_READ8_MEMBER(pio_portb_r); DECLARE_WRITE8_MEMBER(pio_portb_w); - DECLARE_INPUT_CHANGED_MEMBER(input_changed); DECLARE_WRITE8_MEMBER(polyplay_characterram_w); DECLARE_PALETTE_INIT(polyplay); uint32_t screen_update_polyplay(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - void polyplay_zre(machine_config &config); - void polyplay_zrepp(machine_config &config); void polyplay_io_zre(address_map &map); void polyplay_io_zrepp(address_map &map); void polyplay_mem_zre(address_map &map); void polyplay_mem_zrepp(address_map &map); -protected: virtual void machine_start() override { m_lamps.resolve(); } virtual void video_start() override; diff --git a/src/mame/includes/poolshrk.h b/src/mame/includes/poolshrk.h index 6d2bb11d2b5..c8c284ec8f8 100644 --- a/src/mame/includes/poolshrk.h +++ b/src/mame/includes/poolshrk.h @@ -32,10 +32,11 @@ public: m_leds(*this, "led%u", 0U) { } - void init_poolshrk(); void poolshrk(machine_config &config); -protected: + void init_poolshrk(); + +private: DECLARE_WRITE8_MEMBER(da_latch_w); DECLARE_WRITE8_MEMBER(led_w); DECLARE_WRITE8_MEMBER(watchdog_w); @@ -55,7 +56,6 @@ protected: void poolshrk_cpu_map(address_map &map); virtual void machine_start() override { m_leds.resolve(); } -private: required_device m_maincpu; required_device m_watchdog; required_device m_gfxdecode; diff --git a/src/mame/includes/pooyan.h b/src/mame/includes/pooyan.h index e5d07cb0e87..4988429bea7 100644 --- a/src/mame/includes/pooyan.h +++ b/src/mame/includes/pooyan.h @@ -16,6 +16,9 @@ public: m_spriteram(*this, "spriteram"), m_spriteram2(*this, "spriteram2") { } + void pooyan(machine_config &config); + +private: /* devices */ required_device m_maincpu; required_device m_gfxdecode; @@ -50,6 +53,5 @@ public: void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect ); DECLARE_WRITE_LINE_MEMBER(vblank_irq); - void pooyan(machine_config &config); void main_map(address_map &map); }; diff --git a/src/mame/includes/portrait.h b/src/mame/includes/portrait.h index b48ca8220d1..b4ccb34c0bd 100644 --- a/src/mame/includes/portrait.h +++ b/src/mame/includes/portrait.h @@ -18,6 +18,11 @@ public: , m_lamps(*this, "lamp%u", 0U) { } + static constexpr feature_type unemulated_features() { return feature::CAMERA; } + + void portrait(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(ctrl_w); DECLARE_WRITE8_MEMBER(positive_scroll_w); DECLARE_WRITE8_MEMBER(negative_scroll_w); @@ -32,13 +37,9 @@ public: uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); inline void get_tile_info( tile_data &tileinfo, int tile_index, const uint8_t *source ); void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect); - void portrait(machine_config &config); void portrait_map(address_map &map); void portrait_sound_map(address_map &map); - static constexpr feature_type unemulated_features() { return feature::CAMERA; } - -protected: virtual void machine_start() override { m_lamps.resolve(); } virtual void video_start() override; diff --git a/src/mame/includes/powerins.h b/src/mame/includes/powerins.h index b96675c4367..cb13c3ff166 100644 --- a/src/mame/includes/powerins.h +++ b/src/mame/includes/powerins.h @@ -18,7 +18,11 @@ public: m_spriteram(*this, "spriteram"), m_okibank(*this, "okibank") { } + void powerinsa(machine_config &config); + void powerinsb(machine_config &config); + void powerins(machine_config &config); +private: required_device m_maincpu; required_device m_gfxdecode; required_device m_screen; @@ -53,9 +57,6 @@ public: uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect); - void powerinsa(machine_config &config); - void powerinsb(machine_config &config); - void powerins(machine_config &config); void powerins_map(address_map &map); void powerins_sound_io_map(address_map &map); void powerins_sound_map(address_map &map); diff --git a/src/mame/includes/pp01.h b/src/mame/includes/pp01.h index 89f89688646..ace44ea26a7 100644 --- a/src/mame/includes/pp01.h +++ b/src/mame/includes/pp01.h @@ -31,6 +31,9 @@ public: m_speaker(*this, "speaker"), m_ram(*this, RAM_TAG) { } + void pp01(machine_config &config); + +private: required_device m_maincpu; required_device m_pit; required_device m_speaker; @@ -63,7 +66,6 @@ public: DECLARE_READ8_MEMBER(pp01_8255_portc_r); void pp01_video_w(uint8_t block,uint16_t offset,uint8_t data,uint8_t part); void pp01_set_memory(uint8_t block, uint8_t data); - void pp01(machine_config &config); void pp01_io(address_map &map); void pp01_mem(address_map &map); }; diff --git a/src/mame/includes/prehisle.h b/src/mame/includes/prehisle.h index a575b0c0b8c..7fcf6697fb5 100644 --- a/src/mame/includes/prehisle.h +++ b/src/mame/includes/prehisle.h @@ -21,7 +21,9 @@ public: m_palette(*this, "palette"), m_soundlatch(*this, "soundlatch") { } + void prehisle(machine_config &config); +private: required_shared_ptr m_tx_vram; required_shared_ptr m_spriteram; required_shared_ptr m_fg_vram; @@ -52,7 +54,6 @@ public: required_device m_gfxdecode; required_device m_palette; required_device m_soundlatch; - void prehisle(machine_config &config); void prehisle_map(address_map &map); void prehisle_sound_io_map(address_map &map); void prehisle_sound_map(address_map &map); diff --git a/src/mame/includes/primo.h b/src/mame/includes/primo.h index 35aa9c55923..24015e70dec 100644 --- a/src/mame/includes/primo.h +++ b/src/mame/includes/primo.h @@ -48,7 +48,7 @@ public: void primoc64(machine_config &config); void primoa48(machine_config &config); -protected: +private: DECLARE_READ8_MEMBER(primo_be_1_r); DECLARE_READ8_MEMBER(primo_be_2_r); DECLARE_WRITE8_MEMBER(primo_ki_1_w); @@ -74,7 +74,6 @@ protected: void primoa_port(address_map &map); void primob_port(address_map &map); -private: required_device m_maincpu; required_device m_iec; required_device m_speaker; diff --git a/src/mame/includes/prof180x.h b/src/mame/includes/prof180x.h index 8cbc9ee7dc9..6f0be4f565d 100644 --- a/src/mame/includes/prof180x.h +++ b/src/mame/includes/prof180x.h @@ -23,6 +23,9 @@ public: { } + void prof180x(machine_config &config); + +private: required_device m_centronics; virtual void machine_start() override; @@ -45,7 +48,6 @@ public: int m_c2; int m_mm0; int m_mm1; - void prof180x(machine_config &config); void prof180x_io(address_map &map); void prof180x_mem(address_map &map); }; diff --git a/src/mame/includes/prof80.h b/src/mame/includes/prof80.h index b345a646994..7cb7c35cfe7 100644 --- a/src/mame/includes/prof80.h +++ b/src/mame/includes/prof80.h @@ -50,6 +50,9 @@ public: , m_j5(*this, "J5") { } + void prof80(machine_config &config); + +private: required_device m_maincpu; required_device m_mmu; required_device m_rtc; @@ -96,7 +99,6 @@ public: // timers emu_timer *m_floppy_motor_off_timer; - void prof80(machine_config &config); void prof80_io(address_map &map); void prof80_mem(address_map &map); void prof80_mmu(address_map &map); diff --git a/src/mame/includes/psikyo.h b/src/mame/includes/psikyo.h index d48cd304385..2c4d4400034 100644 --- a/src/mame/includes/psikyo.h +++ b/src/mame/includes/psikyo.h @@ -39,6 +39,24 @@ public: std::fill(std::begin(m_old_linescroll), std::end(m_old_linescroll), 0); } + void sngkace(machine_config &config); + void s1945jn(machine_config &config); + void gunbird(machine_config &config); + void s1945(machine_config &config); + void s1945bl(machine_config &config); + + void init_s1945a(); + void init_s1945j(); + void init_sngkace(); + void init_s1945(); + void init_s1945bl(); + void init_tengai(); + void init_gunbird(); + + DECLARE_CUSTOM_INPUT_MEMBER(z80_nmi_r); + DECLARE_CUSTOM_INPUT_MEMBER(mcu_status_r); + +private: /* memory pointers */ required_shared_ptr m_spriteram; required_shared_ptr_array m_vram; @@ -82,15 +100,7 @@ public: DECLARE_WRITE32_MEMBER(s1945bl_oki_w); template DECLARE_WRITE8_MEMBER(sound_bankswitch_w); template DECLARE_WRITE32_MEMBER(vram_w); - DECLARE_CUSTOM_INPUT_MEMBER(z80_nmi_r); - DECLARE_CUSTOM_INPUT_MEMBER(mcu_status_r); - void init_s1945a(); - void init_s1945j(); - void init_sngkace(); - void init_s1945(); - void init_s1945bl(); - void init_tengai(); - void init_gunbird(); + template TILE_GET_INFO_MEMBER(get_tile_info); virtual void machine_start() override; virtual void machine_reset() override; @@ -113,11 +123,7 @@ public: required_device m_gfxdecode; required_device m_screen; required_device m_palette; - void sngkace(machine_config &config); - void s1945jn(machine_config &config); - void gunbird(machine_config &config); - void s1945(machine_config &config); - void s1945bl(machine_config &config); + void gunbird_map(address_map &map); void gunbird_sound_io_map(address_map &map); void gunbird_sound_map(address_map &map); diff --git a/src/mame/includes/psikyo4.h b/src/mame/includes/psikyo4.h index fc1373a1324..555c180513d 100644 --- a/src/mame/includes/psikyo4.h +++ b/src/mame/includes/psikyo4.h @@ -35,6 +35,12 @@ public: m_keys(*this, "KEY.%u", 0) { } + void ps4big(machine_config &config); + void ps4small(machine_config &config); + + DECLARE_CUSTOM_INPUT_MEMBER(mahjong_ctrl_r); + +private: /* memory pointers */ required_shared_ptr m_spriteram; required_shared_ptr m_vidregs; @@ -67,7 +73,6 @@ public: DECLARE_WRITE32_MEMBER(ps4_screen2_brt_w); DECLARE_WRITE32_MEMBER(ps4_vidregs_w); DECLARE_WRITE32_MEMBER(io_select_w); - DECLARE_CUSTOM_INPUT_MEMBER(mahjong_ctrl_r); DECLARE_WRITE32_MEMBER(ps4_eeprom_w); DECLARE_READ32_MEMBER(ps4_eeprom_r); virtual void machine_start() override; @@ -77,8 +82,6 @@ public: uint32_t screen_update_psikyo4_right(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); INTERRUPT_GEN_MEMBER(psikyosh_interrupt); void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, uint32_t scr); - void ps4big(machine_config &config); - void ps4small(machine_config &config); void ps4_map(address_map &map); void ps4_ymf_map(address_map &map); }; diff --git a/src/mame/includes/psikyosh.h b/src/mame/includes/psikyosh.h index 50eb9a081f7..8c04eab5ed8 100644 --- a/src/mame/includes/psikyosh.h +++ b/src/mame/includes/psikyosh.h @@ -40,6 +40,15 @@ public: m_screen(*this, "screen"), m_palette(*this, "palette") { } + void psikyo3v1(machine_config &config); + void psikyo5(machine_config &config); + void psikyo5_240(machine_config &config); + + void init_ps3(); + void init_ps5(); + void init_mjgtaste(); + +private: /* memory pointers */ required_device m_spriteram; required_shared_ptr m_bgram; @@ -66,9 +75,6 @@ public: DECLARE_READ32_MEMBER(mjgtaste_input_r); DECLARE_WRITE32_MEMBER(psh_eeprom_w); DECLARE_READ32_MEMBER(psh_eeprom_r); - void init_ps3(); - void init_ps5(); - void init_mjgtaste(); virtual void machine_start() override; virtual void video_start() override; uint32_t screen_update_psikyosh(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); @@ -84,11 +90,8 @@ public: void psikyosh_prelineblend( bitmap_rgb32 &bitmap, const rectangle &cliprect ); void psikyosh_postlineblend( bitmap_rgb32 &bitmap, const rectangle &cliprect, uint8_t req_pri ); void psikyosh_drawgfxzoom( bitmap_rgb32 &dest_bmp,const rectangle &clip,gfx_element *gfx, - uint32_t code,uint32_t color,int flipx,int flipy,int offsx,int offsy, - int alpha, int zoomx, int zoomy, int wide, int high, uint32_t z); - void psikyo3v1(machine_config &config); - void psikyo5(machine_config &config); - void psikyo5_240(machine_config &config); - void ps3v1_map(address_map &map); - void ps5_map(address_map &map); + uint32_t code,uint32_t color,int flipx,int flipy,int offsx,int offsy, + int alpha, int zoomx, int zoomy, int wide, int high, uint32_t z); + void ps3v1_map(address_map &map); + void ps5_map(address_map &map); }; diff --git a/src/mame/includes/psion.h b/src/mame/includes/psion.h index 154600f842d..dc49589b11f 100644 --- a/src/mame/includes/psion.h +++ b/src/mame/includes/psion.h @@ -39,6 +39,17 @@ public: m_stby_pwr(1), m_ram(*this, "ram"){ } + void psion_2lines(machine_config &config); + void psion_4lines(machine_config &config); + void psionlam(machine_config &config); + void psioncm(machine_config &config); + void psionlz(machine_config &config); + void psionla(machine_config &config); + void psionp350(machine_config &config); + + DECLARE_INPUT_CHANGED_MEMBER(psion_on); + +protected: required_device m_maincpu; required_device m_lcdc; required_device m_beep; @@ -80,17 +91,9 @@ public: DECLARE_WRITE8_MEMBER( io_w ); DECLARE_READ8_MEMBER( io_r ); DECLARE_PALETTE_INIT(psion); - DECLARE_INPUT_CHANGED_MEMBER(psion_on); TIMER_DEVICE_CALLBACK_MEMBER(nmi_timer); HD44780_PIXEL_UPDATE(lz_pixel_update); - void psion_2lines(machine_config &config); - void psion_4lines(machine_config &config); - void psionlam(machine_config &config); - void psioncm(machine_config &config); - void psionlz(machine_config &config); - void psionla(machine_config &config); - void psionp350(machine_config &config); void psioncm_mem(address_map &map); void psionla_mem(address_map &map); void psionlam_mem(address_map &map); @@ -106,6 +109,9 @@ public: : psion_state(mconfig, type, tag) { } + void psion1(machine_config &config); + +private: virtual void machine_reset() override; DECLARE_READ8_MEMBER( reset_kb_counter_r ); @@ -113,7 +119,6 @@ public: DECLARE_READ8_MEMBER( switchoff_r ); HD44780_PIXEL_UPDATE(psion1_pixel_update); - void psion1(machine_config &config); void psion1_mem(address_map &map); }; diff --git a/src/mame/includes/psychic5.h b/src/mame/includes/psychic5.h index 69411e59bf2..73f43f8ff3c 100644 --- a/src/mame/includes/psychic5.h +++ b/src/mame/includes/psychic5.h @@ -27,6 +27,10 @@ public: { } + void psychic5(machine_config &config); + void bombsa(machine_config &config); + +private: required_device m_maincpu; required_device m_audiocpu; required_device m_gfxdecode; @@ -92,8 +96,6 @@ public: void change_bg_palette(int color, int lo_offs, int hi_offs); void set_background_palette_intensity(); void draw_sprites(bitmap_rgb32 &bitmap, const rectangle &cliprect); - void psychic5(machine_config &config); - void bombsa(machine_config &config); void bombsa_main_map(address_map &map); void bombsa_sound_map(address_map &map); void bombsa_soundport_map(address_map &map); diff --git a/src/mame/includes/punchout.h b/src/mame/includes/punchout.h index 07584bf8a26..90721077db9 100644 --- a/src/mame/includes/punchout.h +++ b/src/mame/includes/punchout.h @@ -33,6 +33,11 @@ public: m_armwrest_fg_videoram(*this, "armwrest_fgram") { } + void spnchout(machine_config &config); + void armwrest(machine_config &config); + void punchout(machine_config &config); + +private: required_device m_maincpu; required_device m_audiocpu; optional_device m_rtc; @@ -91,9 +96,6 @@ public: void drawbs2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void punchout_copy_top_palette(int bank); void punchout_copy_bot_palette(int bank); - void spnchout(machine_config &config); - void armwrest(machine_config &config); - void punchout(machine_config &config); void armwrest_map(address_map &map); void punchout_io_map(address_map &map); void punchout_map(address_map &map); diff --git a/src/mame/includes/px8.h b/src/mame/includes/px8.h index 4ecae90d273..b3cbf33563d 100644 --- a/src/mame/includes/px8.h +++ b/src/mame/includes/px8.h @@ -38,6 +38,9 @@ public: m_ram(*this, RAM_TAG), m_video_ram(*this, "video_ram"){ } + void px8(machine_config &config); + +private: required_device m_maincpu; required_device m_cassette; required_device m_ram; @@ -81,7 +84,6 @@ public: /* keyboard state */ int m_ksc; /* keyboard scan column */ DECLARE_PALETTE_INIT(px8); - void px8(machine_config &config); void px8_io(address_map &map); void px8_mem(address_map &map); void px8_slave_io(address_map &map); diff --git a/src/mame/includes/qix.h b/src/mame/includes/qix.h index 31f59f808ef..f3b17636e96 100644 --- a/src/mame/includes/qix.h +++ b/src/mame/includes/qix.h @@ -55,6 +55,24 @@ public: m_bank1(*this, "bank1"), m_screen(*this, "screen") { } + void mcu(machine_config &config); + void qix_base(machine_config &config); + void qix(machine_config &config); + void qix_video(machine_config &config); + void qix_audio(machine_config &config); + void zookeep(machine_config &config); + void zookeep_video(machine_config &config); + void kram3(machine_config &config); + void kram3_video(machine_config &config); + void slither(machine_config &config); + void slither_video(machine_config &config); + void slither_audio(machine_config &config); + + void init_slither(); + void init_zookeep(); + void init_kram3(); + +private: /* devices */ required_device m_maincpu; optional_device m_audiocpu; @@ -111,9 +129,7 @@ public: DECLARE_WRITE8_MEMBER(slither_addresslatch_w); DECLARE_WRITE8_MEMBER(qix_paletteram_w); DECLARE_WRITE8_MEMBER(qix_palettebank_w); - void init_slither(); - void init_zookeep(); - void init_kram3(); + virtual void machine_reset() override; DECLARE_MACHINE_START(qixmcu); DECLARE_VIDEO_START(qix); @@ -146,18 +162,7 @@ public: int kram3_decrypt(int address, int value); DECLARE_WRITE_LINE_MEMBER(kram3_lic_maincpu_changed); DECLARE_WRITE_LINE_MEMBER(kram3_lic_videocpu_changed); - void mcu(machine_config &config); - void qix_base(machine_config &config); - void qix(machine_config &config); - void qix_video(machine_config &config); - void qix_audio(machine_config &config); - void zookeep(machine_config &config); - void zookeep_video(machine_config &config); - void kram3(machine_config &config); - void kram3_video(machine_config &config); - void slither(machine_config &config); - void slither_video(machine_config &config); - void slither_audio(machine_config &config); + void audio_map(address_map &map); void kram3_main_map(address_map &map); void kram3_video_map(address_map &map); diff --git a/src/mame/includes/quasar.h b/src/mame/includes/quasar.h index 4b4a931a48c..167bf2d88d9 100644 --- a/src/mame/includes/quasar.h +++ b/src/mame/includes/quasar.h @@ -14,6 +14,9 @@ public: quasar_state(const machine_config &mconfig, device_type type, const char *tag) : cvs_state(mconfig, type, tag) { } + void quasar(machine_config &config); + +private: std::unique_ptr m_effectram; uint8_t m_effectcontrol; uint8_t m_page; @@ -32,7 +35,6 @@ public: DECLARE_PALETTE_INIT(quasar); uint32_t screen_update_quasar(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); INTERRUPT_GEN_MEMBER(quasar_interrupt); - void quasar(machine_config &config); void quasar(address_map &map); void quasar_data(address_map &map); void quasar_io(address_map &map); diff --git a/src/mame/includes/quizdna.h b/src/mame/includes/quizdna.h index dc5db132a7a..58bbb57c8d0 100644 --- a/src/mame/includes/quizdna.h +++ b/src/mame/includes/quizdna.h @@ -14,6 +14,11 @@ public: m_spriteram(*this, "spriteram"), m_generic_paletteram_8(*this, "paletteram") { } + void gakupara(machine_config &config); + void quizdna(machine_config &config); + void gekiretu(machine_config &config); + +private: required_device m_maincpu; required_device m_gfxdecode; required_device m_palette; @@ -49,9 +54,6 @@ public: uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect); - void gakupara(machine_config &config); - void quizdna(machine_config &config); - void gekiretu(machine_config &config); void gakupara_io_map(address_map &map); void gekiretu_io_map(address_map &map); void gekiretu_map(address_map &map); diff --git a/src/mame/includes/rbisland.h b/src/mame/includes/rbisland.h index 069297c167d..2fddfc4da52 100644 --- a/src/mame/includes/rbisland.h +++ b/src/mame/includes/rbisland.h @@ -34,7 +34,14 @@ public: m_cchip_irq_clear(*this, "cchip_irq_clear") { } + void jumping(machine_config &config); + void rbisland(machine_config &config); + void jumpingi(machine_config &config); + void init_jumping(); + void init_rbisland(); + +private: DECLARE_WRITE16_MEMBER(jumping_sound_w); DECLARE_READ8_MEMBER(jumping_latch_r); DECLARE_WRITE16_MEMBER(rbisland_cchip_ctrl_w); @@ -46,8 +53,6 @@ public: DECLARE_WRITE16_MEMBER(jumping_spritectrl_w); DECLARE_WRITE8_MEMBER(bankswitch_w); DECLARE_WRITE8_MEMBER(counters_w); - void init_jumping(); - void init_rbisland(); virtual void machine_start() override; DECLARE_VIDEO_START(jumping); uint32_t screen_update_rainbow(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); @@ -56,15 +61,11 @@ public: INTERRUPT_GEN_MEMBER(interrupt); TIMER_DEVICE_CALLBACK_MEMBER(cchip_irq_clear_cb); - void jumping(machine_config &config); - void rbisland(machine_config &config); - void jumpingi(machine_config &config); void jumping_map(address_map &map); void jumping_sound_map(address_map &map); void rbisland_map(address_map &map); void rbisland_sound_map(address_map &map); -private: /* memory pointers */ optional_shared_ptr m_spriteram; diff --git a/src/mame/includes/realbrk.h b/src/mame/includes/realbrk.h index fca04091437..4520fb57c57 100644 --- a/src/mame/includes/realbrk.h +++ b/src/mame/includes/realbrk.h @@ -24,6 +24,12 @@ public: m_vram_0ras(*this, "vram_0ras"), m_vram_1ras(*this, "vram_1ras") { } + void pkgnsh(machine_config &config); + void dai2kaku(machine_config &config); + void realbrk(machine_config &config); + void pkgnshdx(machine_config &config); + +private: required_device m_maincpu; required_device m_tmp68301; required_device m_gfxdecode; @@ -77,10 +83,6 @@ public: void dai2kaku_draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect, int layer); DECLARE_WRITE_LINE_MEMBER(vblank_irq); - void pkgnsh(machine_config &config); - void dai2kaku(machine_config &config); - void realbrk(machine_config &config); - void pkgnshdx(machine_config &config); void base_mem(address_map &map); void dai2kaku_mem(address_map &map); void pkgnsh_mem(address_map &map); diff --git a/src/mame/includes/redalert.h b/src/mame/includes/redalert.h index fd989b5dae8..48dec9d2606 100644 --- a/src/mame/includes/redalert.h +++ b/src/mame/includes/redalert.h @@ -45,6 +45,22 @@ public: { } + void redalert_video_common(machine_config &config); + void redalert_video(machine_config &config); + void ww3_video(machine_config &config); + void panther_video(machine_config &config); + void demoneye_video(machine_config &config); + void redalert_audio_m37b(machine_config &config); + void redalert_audio_voice(machine_config &config); + void redalert_audio(machine_config &config); + void ww3_audio(machine_config &config); + void demoneye_audio(machine_config &config); + void demoneye(machine_config &config); + void ww3(machine_config &config); + void panther(machine_config &config); + void redalert(machine_config &config); + +private: required_shared_ptr m_bitmap_videoram; required_shared_ptr m_charmap_videoram; required_shared_ptr m_video_control; @@ -87,26 +103,9 @@ public: DECLARE_WRITE8_MEMBER(demoneye_ay8910_data_w); void get_pens(pen_t *pens); void get_panther_pens(pen_t *pens); - void demoneye(machine_config &config); - void ww3(machine_config &config); - void panther(machine_config &config); - void redalert(machine_config &config); -protected: virtual void sound_start() override; - void redalert_video_common(machine_config &config); - void redalert_video(machine_config &config); - void ww3_video(machine_config &config); - void panther_video(machine_config &config); - void demoneye_video(machine_config &config); - - void redalert_audio_m37b(machine_config &config); - void redalert_audio_voice(machine_config &config); - void redalert_audio(machine_config &config); - void ww3_audio(machine_config &config); - void demoneye_audio(machine_config &config); - void redalert_main_map(address_map &map); void ww3_main_map(address_map &map); void panther_main_map(address_map &map); @@ -117,7 +116,6 @@ protected: void redalert_voice_map(address_map &map); -private: uint8_t m_ay8910_latch_1; uint8_t m_ay8910_latch_2; }; diff --git a/src/mame/includes/redclash.h b/src/mame/includes/redclash.h index 58c9bce1f9f..27b568749c0 100644 --- a/src/mame/includes/redclash.h +++ b/src/mame/includes/redclash.h @@ -28,13 +28,15 @@ public: , m_stars(*this, "stars") { } - DECLARE_INPUT_CHANGED_MEMBER(left_coin_inserted); - DECLARE_INPUT_CHANGED_MEMBER(right_coin_inserted); - void init_redclash(); void redclash(machine_config &config); void zerohour(machine_config &config); -protected: + void init_redclash(); + + DECLARE_INPUT_CHANGED_MEMBER(left_coin_inserted); + DECLARE_INPUT_CHANGED_MEMBER(right_coin_inserted); + +private: DECLARE_WRITE_LINE_MEMBER(screen_vblank_redclash); DECLARE_WRITE8_MEMBER(redclash_videoram_w); DECLARE_WRITE8_MEMBER(redclash_gfxbank_w); @@ -55,7 +57,6 @@ protected: void redclash_map(address_map &map); void zerohour_map(address_map &map); -private: required_shared_ptr m_videoram; required_shared_ptr m_spriteram; required_device m_maincpu; diff --git a/src/mame/includes/relief.h b/src/mame/includes/relief.h index bd252b645df..16886a825af 100644 --- a/src/mame/includes/relief.h +++ b/src/mame/includes/relief.h @@ -28,10 +28,11 @@ public: m_okibank(*this, "okibank") { } - void init_relief(); void relief(machine_config &config); -protected: + void init_relief(); + +private: virtual void machine_reset() override; virtual void video_start() override; virtual void update_interrupts() override; @@ -45,7 +46,6 @@ protected: void main_map(address_map &map); void oki_map(address_map &map); -private: required_device m_vad; required_device m_oki; required_device m_ym2413; diff --git a/src/mame/includes/renegade.h b/src/mame/includes/renegade.h index ea90cb32904..1238a51666d 100644 --- a/src/mame/includes/renegade.h +++ b/src/mame/includes/renegade.h @@ -26,6 +26,12 @@ public: { } + void renegade(machine_config &config); + void kuniokunb(machine_config &config); + + DECLARE_CUSTOM_INPUT_MEMBER(mcu_status_r); + +private: required_device m_maincpu; required_device m_audiocpu; optional_device m_mcu; @@ -57,7 +63,6 @@ public: DECLARE_WRITE8_MEMBER(flipscreen_w); DECLARE_WRITE8_MEMBER(scroll_lsb_w); DECLARE_WRITE8_MEMBER(scroll_msb_w); - DECLARE_CUSTOM_INPUT_MEMBER(mcu_status_r); DECLARE_WRITE8_MEMBER(adpcm_start_w); DECLARE_WRITE8_MEMBER(adpcm_addr_w); DECLARE_WRITE8_MEMBER(adpcm_stop_w); @@ -74,8 +79,7 @@ public: uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect); - void renegade(machine_config &config); - void kuniokunb(machine_config &config); + void renegade_map(address_map &map); void renegade_nomcu_map(address_map &map); void renegade_sound_map(address_map &map); diff --git a/src/mame/includes/retofinv.h b/src/mame/includes/retofinv.h index 516b0e4fa7f..8ec444170f2 100644 --- a/src/mame/includes/retofinv.h +++ b/src/mame/includes/retofinv.h @@ -24,6 +24,12 @@ public: { } + void retofinvb1_nomcu(machine_config &config); + void retofinvb_nomcu(machine_config &config); + void retofinv(machine_config &config); + void retofinvb1(machine_config &config); + +private: DECLARE_WRITE8_MEMBER(cpu2_m6000_w); DECLARE_READ8_MEMBER(cpu0_mf800_r); DECLARE_WRITE8_MEMBER(soundcommand_w); @@ -48,15 +54,11 @@ public: INTERRUPT_GEN_MEMBER(main_vblank_irq); INTERRUPT_GEN_MEMBER(sub_vblank_irq); - void retofinvb1_nomcu(machine_config &config); - void retofinvb_nomcu(machine_config &config); - void retofinv(machine_config &config); - void retofinvb1(machine_config &config); void bootleg_map(address_map &map); void main_map(address_map &map); void sound_map(address_map &map); void sub_map(address_map &map); -protected: + virtual void machine_start() override; virtual void video_start() override; diff --git a/src/mame/includes/rltennis.h b/src/mame/includes/rltennis.h index e03e12b1a7c..29ca7c09eb6 100644 --- a/src/mame/includes/rltennis.h +++ b/src/mame/includes/rltennis.h @@ -21,6 +21,9 @@ public: std::fill(std::begin(m_sample_rom_offset), std::end(m_sample_rom_offset), 0); } + void rltennis(machine_config &config); + +private: required_device m_maincpu; required_device_array m_dac; required_region_ptr_array m_samples; @@ -49,7 +52,6 @@ public: INTERRUPT_GEN_MEMBER(interrupt); TIMER_CALLBACK_MEMBER(sample_player); - void rltennis(machine_config &config); void ramdac_map(address_map &map); void rltennis_main(address_map &map); }; diff --git a/src/mame/includes/rm380z.h b/src/mame/includes/rm380z.h index 79de425e7ad..3670887ec34 100644 --- a/src/mame/includes/rm380z.h +++ b/src/mame/includes/rm380z.h @@ -48,8 +48,27 @@ Research Machines RM 380Z class rm380z_state : public driver_device { -private: +public: + rm380z_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag), + m_maincpu(*this, RM380Z_MAINCPU_TAG), + m_cassette(*this, "cassette"), + m_messram(*this, RAM_TAG), + m_fdc(*this, "wd1771"), + m_floppy0(*this, "wd1771:0"), + m_floppy1(*this, "wd1771:1") + { + } + + void rm480z(machine_config &config); + void rm380z(machine_config &config); + + void init_rm380z(); + void init_rm380z34d(); + void init_rm380z34e(); + void init_rm480z(); +private: void put_point(int charnum,int x,int y,int col); void init_graphic_chars(); @@ -96,18 +115,6 @@ private: optional_device m_floppy0; optional_device m_floppy1; -public: - rm380z_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag), - m_maincpu(*this, RM380Z_MAINCPU_TAG), - m_cassette(*this, "cassette"), - m_messram(*this, RAM_TAG), - m_fdc(*this, "wd1771"), - m_floppy0(*this, "wd1771:0"), - m_floppy1(*this, "wd1771:1") - { - } - DECLARE_WRITE8_MEMBER( port_write ); DECLARE_READ8_MEMBER( port_read ); DECLARE_WRITE8_MEMBER( port_write_1b00 ); @@ -129,10 +136,6 @@ public: void keyboard_put(u8 data); - void init_rm380z(); - void init_rm380z34d(); - void init_rm380z34e(); - void init_rm480z(); DECLARE_MACHINE_RESET(rm480z); void config_memory_map(); @@ -140,8 +143,7 @@ public: uint32_t screen_update_rm380z(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_rm480z(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); TIMER_CALLBACK_MEMBER(static_vblank_timer); - void rm480z(machine_config &config); - void rm380z(machine_config &config); + void rm380z_io(address_map &map); void rm380z_mem(address_map &map); void rm480z_io(address_map &map); diff --git a/src/mame/includes/rmnimbus.h b/src/mame/includes/rmnimbus.h index eecb79175c8..d2f83a6edb6 100644 --- a/src/mame/includes/rmnimbus.h +++ b/src/mame/includes/rmnimbus.h @@ -85,6 +85,14 @@ public: static constexpr feature_type imperfect_features() { return feature::MOUSE; } + void nimbus(machine_config &config); + + uint32_t m_debug_machine; + + void decode_subbios(device_t *device, offs_t pc, uint8_t raw_flag); + void decode_dos21(device_t *device, offs_t pc); + +private: required_device m_maincpu; required_device m_iocpu; required_device m_msm; @@ -108,7 +116,6 @@ public: bitmap_ind16 m_video_mem; - uint32_t m_debug_machine; uint8_t m_mcu_reg080; uint8_t m_iou_reg092; uint8_t m_last_playmode; @@ -232,15 +239,11 @@ public: emu_timer *m_mouse_timer; } m_nimbus_mouse; - void nimbus(machine_config &config); void nimbus_io(address_map &map); void nimbus_iocpu_io(address_map &map); void nimbus_iocpu_mem(address_map &map); void nimbus_mem(address_map &map); - void decode_subbios(device_t *device, offs_t pc, uint8_t raw_flag); - void decode_dos21(device_t *device, offs_t pc); -private: void decode_dssi_none(uint16_t ds, uint16_t si, uint8_t raw_flag); void decode_dssi_generic(uint16_t ds, uint16_t si, uint8_t raw_flag); void decode_dssi_f_fill_area(uint16_t ds, uint16_t si, uint8_t raw_flag); @@ -249,7 +252,6 @@ private: void decode_dssi_f_plonk_char(uint16_t ds, uint16_t si, uint8_t raw_flag); void decode_dssi_f_rw_sectors(uint16_t ds, uint16_t si, uint8_t raw_flag); - void debug_command(int ref, const std::vector ¶ms); void video_debug(int ref, const std::vector ¶ms); }; diff --git a/src/mame/includes/rockrage.h b/src/mame/includes/rockrage.h index 5b510da6551..6004680dcb8 100644 --- a/src/mame/includes/rockrage.h +++ b/src/mame/includes/rockrage.h @@ -27,6 +27,9 @@ public: m_soundlatch(*this, "soundlatch"), m_rombank(*this, "rombank") { } + void rockrage(machine_config &config); + +private: /* devices */ required_device m_maincpu; required_device m_audiocpu; @@ -56,7 +59,6 @@ public: K007342_CALLBACK_MEMBER(rockrage_tile_callback); K007420_CALLBACK_MEMBER(rockrage_sprite_callback); - void rockrage(machine_config &config); void rockrage_map(address_map &map); void rockrage_sound_map(address_map &map); void rockrage_vlm_map(address_map &map); diff --git a/src/mame/includes/rocnrope.h b/src/mame/includes/rocnrope.h index 4906b40d0e5..5f388114fa8 100644 --- a/src/mame/includes/rocnrope.h +++ b/src/mame/includes/rocnrope.h @@ -17,6 +17,11 @@ public: m_videoram(*this, "videoram") { } + void rocnrope(machine_config &config); + + void init_rocnrope(); + +private: // devices required_device m_maincpu; required_device m_gfxdecode; @@ -38,7 +43,6 @@ public: DECLARE_WRITE8_MEMBER(rocnrope_videoram_w); DECLARE_WRITE8_MEMBER(rocnrope_colorram_w); DECLARE_WRITE_LINE_MEMBER(flip_screen_w); - void init_rocnrope(); TILE_GET_INFO_MEMBER(get_bg_tile_info); virtual void video_start() override; @@ -46,6 +50,5 @@ public: uint32_t screen_update_rocnrope(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); DECLARE_WRITE_LINE_MEMBER(vblank_irq); void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect ); - void rocnrope(machine_config &config); void rocnrope_map(address_map &map); }; diff --git a/src/mame/includes/rohga.h b/src/mame/includes/rohga.h index 993286a5b60..14903a61c51 100644 --- a/src/mame/includes/rohga.h +++ b/src/mame/includes/rohga.h @@ -33,6 +33,19 @@ public: m_palette(*this, "palette") { } + void wizdfire(machine_config &config); + void nitrobal(machine_config &config); + void hangzo(machine_config &config); + void schmeisr(machine_config &config); + void rohga(machine_config &config); + + void init_wizdfire(); + void init_nitrobal(); + void init_schmeisr(); + void init_hangzo(); + void init_rohga(); + +private: /* devices */ required_device m_maincpu; required_device m_audiocpu; @@ -53,11 +66,7 @@ public: DECLARE_WRITE16_MEMBER(wizdfire_irq_ack_w); DECLARE_WRITE16_MEMBER(rohga_buffer_spriteram16_w); DECLARE_WRITE8_MEMBER(sound_bankswitch_w); - void init_wizdfire(); - void init_nitrobal(); - void init_schmeisr(); - void init_hangzo(); - void init_rohga(); + DECLARE_VIDEO_START(wizdfire); uint32_t screen_update_rohga(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_wizdfire(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); @@ -71,11 +80,6 @@ public: READ16_MEMBER( ioprot_r ); WRITE16_MEMBER( ioprot_w ); - void wizdfire(machine_config &config); - void nitrobal(machine_config &config); - void hangzo(machine_config &config); - void schmeisr(machine_config &config); - void rohga(machine_config &config); void hangzo_map(address_map &map); void hotb_base_map(address_map &map); void nitrobal_map(address_map &map); diff --git a/src/mame/includes/rollerg.h b/src/mame/includes/rollerg.h index 126b4e21e3a..839ee53492c 100644 --- a/src/mame/includes/rollerg.h +++ b/src/mame/includes/rollerg.h @@ -13,11 +13,6 @@ class rollerg_state : public driver_device { public: - enum - { - TIMER_NMI - }; - rollerg_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag), m_maincpu(*this, "maincpu"), @@ -27,6 +22,14 @@ public: m_k053252(*this, "k053252") { } + void rollerg(machine_config &config); + +private: + enum + { + TIMER_NMI + }; + /* misc */ int m_readzoomroms; emu_timer *m_nmi_timer; @@ -50,9 +53,8 @@ public: K051316_CB_MEMBER(zoom_callback); DECLARE_WRITE8_MEMBER(banking_callback); - void rollerg(machine_config &config); void rollerg_map(address_map &map); void rollerg_sound_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/includes/rollrace.h b/src/mame/includes/rollrace.h index 495c7b6e7b5..b5e1c038400 100644 --- a/src/mame/includes/rollrace.h +++ b/src/mame/includes/rollrace.h @@ -15,6 +15,10 @@ public: m_colorram(*this, "colorram"), m_spriteram(*this, "spriteram") { } + void rollace2(machine_config &config); + void rollrace(machine_config &config); + +private: required_device m_maincpu; required_device m_gfxdecode; required_device m_palette; @@ -58,13 +62,10 @@ public: virtual void machine_start() override; virtual void video_start() override; - uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); DECLARE_WRITE_LINE_MEMBER(vblank_irq); INTERRUPT_GEN_MEMBER(sound_timer_irq); - void rollace2(machine_config &config); - void rollrace(machine_config &config); void rollrace_map(address_map &map); void rollrace_sound_map(address_map &map); }; diff --git a/src/mame/includes/route16.h b/src/mame/includes/route16.h index 0bcca29d347..74af4b670e4 100644 --- a/src/mame/includes/route16.h +++ b/src/mame/includes/route16.h @@ -18,6 +18,16 @@ public: , m_protection_data(0) {} + void routex(machine_config &config); + void ttmahjng(machine_config &config); + void spacecho(machine_config &config); + void speakres(machine_config &config); + void stratvox(machine_config &config); + void route16(machine_config &config); + + void init_route16(); + +private: DECLARE_WRITE8_MEMBER(out0_w); DECLARE_WRITE8_MEMBER(out1_w); template DECLARE_WRITE8_MEMBER(route16_sharedram_w); @@ -31,17 +41,10 @@ public: DECLARE_WRITE8_MEMBER(stratvox_sn76477_w); DECLARE_MACHINE_START(speakres); DECLARE_MACHINE_START(ttmahjng); - void init_route16(); uint32_t screen_update_route16(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); uint32_t screen_update_ttmahjng(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - void routex(machine_config &config); - void ttmahjng(machine_config &config); - void spacecho(machine_config &config); - void speakres(machine_config &config); - void stratvox(machine_config &config); - void route16(machine_config &config); void cpu1_io_map(address_map &map); void route16_cpu1_map(address_map &map); void route16_cpu2_map(address_map &map); @@ -50,7 +53,7 @@ public: void stratvox_cpu1_map(address_map &map); void stratvox_cpu2_map(address_map &map); void ttmahjng_cpu1_map(address_map &map); -private: + required_device m_cpu1; required_device m_cpu2; optional_device m_sn; diff --git a/src/mame/includes/rpunch.h b/src/mame/includes/rpunch.h index 8dc00f0ac98..50bfc88f056 100644 --- a/src/mame/includes/rpunch.h +++ b/src/mame/includes/rpunch.h @@ -24,6 +24,16 @@ public: m_bitmapram(*this, "bitmapram"), m_spriteram(*this, "spriteram") { } + void svolley(machine_config &config); + void rpunch(machine_config &config); + void svolleybl(machine_config &config); + + void init_rabiolep(); + void init_svolley(); + + DECLARE_CUSTOM_INPUT_MEMBER(hi_bits_r); + +private: required_device m_maincpu; required_device m_audiocpu; required_device m_soundlatch; @@ -53,11 +63,8 @@ public: DECLARE_WRITE8_MEMBER(rpunch_gga_w); DECLARE_WRITE8_MEMBER(rpunch_gga_data_w); DECLARE_WRITE16_MEMBER(rpunch_ins_w); - DECLARE_CUSTOM_INPUT_MEMBER(hi_bits_r); DECLARE_WRITE8_MEMBER(upd_control_w); DECLARE_WRITE8_MEMBER(upd_data_w); - void init_rabiolep(); - void init_svolley(); TILE_GET_INFO_MEMBER(get_bg0_tile_info); TILE_GET_INFO_MEMBER(get_bg1_tile_info); virtual void machine_start() override; @@ -66,14 +73,10 @@ public: DECLARE_VIDEO_START(rpunch); DECLARE_VIDEO_START(svolley); - uint32_t screen_update_rpunch(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); TIMER_CALLBACK_MEMBER(crtc_interrupt_gen); void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, int start, int stop); void draw_bitmap(bitmap_ind16 &bitmap, const rectangle &cliprect); - void svolley(machine_config &config); - void rpunch(machine_config &config); - void svolleybl(machine_config &config); void main_map(address_map &map); void sound_map(address_map &map); }; diff --git a/src/mame/includes/runaway.h b/src/mame/includes/runaway.h index e053cf74e5c..2e26ed709f4 100644 --- a/src/mame/includes/runaway.h +++ b/src/mame/includes/runaway.h @@ -26,7 +26,7 @@ public: void qwak(machine_config &config); void runaway(machine_config &config); -protected: +private: DECLARE_READ8_MEMBER(runaway_input_r); DECLARE_WRITE8_MEMBER(runaway_irq_ack_w); DECLARE_READ8_MEMBER(earom_read); -- cgit v1.2.3