summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame
diff options
context:
space:
mode:
author Aaron Giles <aaron@aarongiles.com>2010-09-01 05:03:27 +0000
committer Aaron Giles <aaron@aarongiles.com>2010-09-01 05:03:27 +0000
commitf6b83b62c5f14751c4017cdc6b9b6c0d3a29a3c4 (patch)
tree9b52f318ea41cc4567d0b1f405432867be5f1220 /src/mame
parentce3c3205ccf83ec9898825f7a9e8583f6b4c8eb1 (diff)
Changed the MACHINE_DRIVER_* macros, as follows:
1. Renamed MACHINE_DRIVER_* to MACHINE_CONFIG_* to match the name of the object it actually describes. The MDRV_* prefix may eventually be bulk updated at some point, but not now. 2. MACHINE_CONFIG_START() now takes a driver_data_t-derived class as a required second parameter. This means that MDRV_DRIVER_DATA() is no longer required, and every "root" machine config *must* specify a driver data class (or driver_data_t itself if the driver has not yet been updated to use driver data). 3. New MACHINE_CONFIG_DERIVED() macro defines a machine_config that is derived from another machine_config. This takes the place of the very typical MACHINE_DRIVER_START()/MDRV_IMPORT_FROM() combination. 4. New MACHINE_CONFIG_FRAGMENT() macro defines a partial machine_config that can only be included in another "root" machine_config. This is also used for machine_configs that are specified as part of a device. 5. Changed MDRV_IMPORT_FROM() to MDRV_FRAGMENT_ADD() to more accurately describe what is happening. 6. Added asserts to the above three macros to ensure they are properly used. Updated all machine drivers to use the new macros. Search & replace lists below cover 99% of the changes, with just a few manual fixups. S: MACHINE_DRIVER_START\( *([a-zA-Z0-9_]+) *\)[\r\n\t ]*MDRV_DRIVER_DATA\( *([a-zA-Z0-9_]+) *\) R: MACHINE_CONFIG_START\( \1, \2 \) S: MACHINE_DRIVER_START\( *([a-zA-Z0-9_]+) *\)[\r\n\t ]*/\* driver data \*/[\r\n\t ]*MDRV_DRIVER_DATA\( *([a-zA-Z0-9_]+) *\) R: MACHINE_CONFIG_START\( \1, \2 \) S: MACHINE_DRIVER_START\( *([a-zA-Z0-9_]+) *\)[\r\n\t ]*MDRV_IMPORT_FROM\( *([a-zA-Z0-9_]+) *\) R: MACHINE_CONFIG_DERIVED\( \1, \2 \) S: MACHINE_DRIVER_START\( *([a-zA-Z0-9_]+) *\)[\r\n\t ]*/\* basic machine hardware \*/[\r\n\t ]*MDRV_IMPORT_FROM\( *([a-zA-Z0-9_]+) *\) R: MACHINE_CONFIG_DERIVED\( \1, \2 \)\r\n\r\n\t/\* basic machine hardware \*/ For all files outside of mame/drivers.... S: MACHINE_DRIVER_START R: MACHINE_CONFIG_FRAGMENT in all non-drivers For all files within mame/drivers.... S: MACHINE_DRIVER_START\( *([a-zA-Z0-9_]+) *\) R: MACHINE_CONFIG_START\( \1, driver_data_t \) S: MDRV_IMPORT_FROM R: MDRV_FRAGMENT_ADD S: MACHINE_DRIVER_END R: MACHINE_CONFIG_END S: MACHINE_DRIVER_NAME R: MACHINE_CONFIG_NAME S: MACHINE_DRIVER_EXTERN R: MACHINE_CONFIG_EXTERN Final step: run mame -valid and fix the incorrect macros at the lines where the asserts show up.
Diffstat (limited to 'src/mame')
-rw-r--r--src/mame/audio/astrof.c12
-rw-r--r--src/mame/audio/atarijsa.c36
-rw-r--r--src/mame/audio/atarijsa.h16
-rw-r--r--src/mame/audio/bzone.c4
-rw-r--r--src/mame/audio/cage.c9
-rw-r--r--src/mame/audio/cage.h4
-rw-r--r--src/mame/audio/carnival.c4
-rw-r--r--src/mame/audio/cinemat.c65
-rw-r--r--src/mame/audio/crbaloon.c4
-rw-r--r--src/mame/audio/dcs.c31
-rw-r--r--src/mame/audio/dcs.h14
-rw-r--r--src/mame/audio/depthch.c4
-rw-r--r--src/mame/audio/dkong.c24
-rw-r--r--src/mame/audio/exidy.c12
-rw-r--r--src/mame/audio/exidy440.c4
-rw-r--r--src/mame/audio/galaxian.c8
-rw-r--r--src/mame/audio/gottlieb.c8
-rw-r--r--src/mame/audio/invinco.c4
-rw-r--r--src/mame/audio/irem.c18
-rw-r--r--src/mame/audio/jedi.c4
-rw-r--r--src/mame/audio/mario.c8
-rw-r--r--src/mame/audio/mcr.c24
-rw-r--r--src/mame/audio/mcr.h12
-rw-r--r--src/mame/audio/mw8080bw.c88
-rw-r--r--src/mame/audio/n8080.c12
-rw-r--r--src/mame/audio/namco52.c4
-rw-r--r--src/mame/audio/namco54.c4
-rw-r--r--src/mame/audio/pulsar.c4
-rw-r--r--src/mame/audio/qix.c8
-rw-r--r--src/mame/audio/redalert.c26
-rw-r--r--src/mame/audio/scramble.c4
-rw-r--r--src/mame/audio/segag80r.c16
-rw-r--r--src/mame/audio/segasnd.c13
-rw-r--r--src/mame/audio/segasnd.h6
-rw-r--r--src/mame/audio/spacefb.c4
-rw-r--r--src/mame/audio/spiders.c4
-rw-r--r--src/mame/audio/taito_en.c4
-rw-r--r--src/mame/audio/taito_en.h2
-rw-r--r--src/mame/audio/taito_zm.c4
-rw-r--r--src/mame/audio/taito_zm.h2
-rw-r--r--src/mame/audio/targ.c8
-rw-r--r--src/mame/audio/timeplt.c9
-rw-r--r--src/mame/audio/turbo.c12
-rw-r--r--src/mame/audio/vicdual.c8
-rw-r--r--src/mame/audio/williams.c12
-rw-r--r--src/mame/audio/williams.h6
-rw-r--r--src/mame/audio/zaxxon.c8
-rw-r--r--src/mame/drivers/1942.c6
-rw-r--r--src/mame/drivers/1943.c6
-rw-r--r--src/mame/drivers/1945kiii.c7
-rw-r--r--src/mame/drivers/20pacgal.c8
-rw-r--r--src/mame/drivers/2mindril.c5
-rw-r--r--src/mame/drivers/39in1.c6
-rw-r--r--src/mame/drivers/3super8.c4
-rw-r--r--src/mame/drivers/40love.c14
-rw-r--r--src/mame/drivers/4enraya.c6
-rw-r--r--src/mame/drivers/4roses.c4
-rw-r--r--src/mame/drivers/5clown.c4
-rw-r--r--src/mame/drivers/8080bw.c133
-rw-r--r--src/mame/drivers/86lions.c4
-rw-r--r--src/mame/drivers/88games.c7
-rw-r--r--src/mame/drivers/ace.c7
-rw-r--r--src/mame/drivers/acefruit.c4
-rw-r--r--src/mame/drivers/acommand.c4
-rw-r--r--src/mame/drivers/actfancr.c14
-rw-r--r--src/mame/drivers/adp.c36
-rw-r--r--src/mame/drivers/aeroboto.c7
-rw-r--r--src/mame/drivers/aerofgt.c84
-rw-r--r--src/mame/drivers/airbustr.c12
-rw-r--r--src/mame/drivers/ajax.c7
-rw-r--r--src/mame/drivers/albazc.c7
-rw-r--r--src/mame/drivers/albazg.c7
-rw-r--r--src/mame/drivers/aleck64.c6
-rw-r--r--src/mame/drivers/alg.c14
-rw-r--r--src/mame/drivers/aliens.c7
-rw-r--r--src/mame/drivers/alpha68k.c68
-rw-r--r--src/mame/drivers/amaticmg.c4
-rw-r--r--src/mame/drivers/ambush.c7
-rw-r--r--src/mame/drivers/ampoker2.c10
-rw-r--r--src/mame/drivers/amspdwy.c7
-rw-r--r--src/mame/drivers/angelkds.c7
-rw-r--r--src/mame/drivers/appoooh.c21
-rw-r--r--src/mame/drivers/aquarium.c7
-rw-r--r--src/mame/drivers/arabian.c7
-rw-r--r--src/mame/drivers/arcadecl.c5
-rw-r--r--src/mame/drivers/arcadia.c4
-rw-r--r--src/mame/drivers/argus.c12
-rw-r--r--src/mame/drivers/aristmk4.c4
-rw-r--r--src/mame/drivers/aristmk5.c4
-rw-r--r--src/mame/drivers/arkanoid.c18
-rw-r--r--src/mame/drivers/armedf.c49
-rw-r--r--src/mame/drivers/artmagic.c14
-rw-r--r--src/mame/drivers/ashnojoe.c7
-rw-r--r--src/mame/drivers/asterix.c7
-rw-r--r--src/mame/drivers/asteroid.c19
-rw-r--r--src/mame/drivers/astinvad.c19
-rw-r--r--src/mame/drivers/astrocde.c72
-rw-r--r--src/mame/drivers/astrocorp.c24
-rw-r--r--src/mame/drivers/astrof.c33
-rw-r--r--src/mame/drivers/asuka.c42
-rw-r--r--src/mame/drivers/atarifb.c22
-rw-r--r--src/mame/drivers/atarig1.c7
-rw-r--r--src/mame/drivers/atarig42.c9
-rw-r--r--src/mame/drivers/atarigt.c7
-rw-r--r--src/mame/drivers/atarigx2.c7
-rw-r--r--src/mame/drivers/atarisy1.c5
-rw-r--r--src/mame/drivers/atarisy2.c10
-rw-r--r--src/mame/drivers/atarisy4.c9
-rw-r--r--src/mame/drivers/ataxx.c11
-rw-r--r--src/mame/drivers/atetris.c8
-rw-r--r--src/mame/drivers/attckufo.c7
-rw-r--r--src/mame/drivers/avalnche.c7
-rw-r--r--src/mame/drivers/aztarac.c4
-rw-r--r--src/mame/drivers/backfire.c7
-rw-r--r--src/mame/drivers/badlands.c10
-rw-r--r--src/mame/drivers/bagman.c17
-rw-r--r--src/mame/drivers/balsente.c10
-rw-r--r--src/mame/drivers/bankp.c7
-rw-r--r--src/mame/drivers/baraduke.c4
-rw-r--r--src/mame/drivers/batman.c7
-rw-r--r--src/mame/drivers/battlane.c7
-rw-r--r--src/mame/drivers/battlera.c4
-rw-r--r--src/mame/drivers/battlex.c7
-rw-r--r--src/mame/drivers/battlnts.c7
-rw-r--r--src/mame/drivers/bbusters.c12
-rw-r--r--src/mame/drivers/beaminv.c7
-rw-r--r--src/mame/drivers/beathead.c7
-rw-r--r--src/mame/drivers/beezer.c4
-rw-r--r--src/mame/drivers/berzerk.c9
-rw-r--r--src/mame/drivers/bestleag.c9
-rw-r--r--src/mame/drivers/bfcobra.c4
-rw-r--r--src/mame/drivers/bfm_sc1.c14
-rw-r--r--src/mame/drivers/bfm_sc2.c17
-rw-r--r--src/mame/drivers/bfmsys85.c4
-rw-r--r--src/mame/drivers/big10.c4
-rw-r--r--src/mame/drivers/bigevglf.c7
-rw-r--r--src/mame/drivers/bigfghtr.c5
-rw-r--r--src/mame/drivers/bigstrkb.c6
-rw-r--r--src/mame/drivers/bingoc.c4
-rw-r--r--src/mame/drivers/bingor.c4
-rw-r--r--src/mame/drivers/bionicc.c7
-rw-r--r--src/mame/drivers/bishi.c7
-rw-r--r--src/mame/drivers/bishjan.c8
-rw-r--r--src/mame/drivers/bking.c12
-rw-r--r--src/mame/drivers/blackt96.c4
-rw-r--r--src/mame/drivers/bladestl.c7
-rw-r--r--src/mame/drivers/blitz.c4
-rw-r--r--src/mame/drivers/blktiger.c12
-rw-r--r--src/mame/drivers/blmbycar.c14
-rw-r--r--src/mame/drivers/blockade.c22
-rw-r--r--src/mame/drivers/blockhl.c7
-rw-r--r--src/mame/drivers/blockout.c7
-rw-r--r--src/mame/drivers/bloodbro.c14
-rw-r--r--src/mame/drivers/blstroid.c7
-rw-r--r--src/mame/drivers/blueprnt.c7
-rw-r--r--src/mame/drivers/bmcbowl.c4
-rw-r--r--src/mame/drivers/bnstars.c4
-rw-r--r--src/mame/drivers/bogeyman.c7
-rw-r--r--src/mame/drivers/bombjack.c7
-rw-r--r--src/mame/drivers/boogwing.c7
-rw-r--r--src/mame/drivers/bottom9.c7
-rw-r--r--src/mame/drivers/boxer.c7
-rw-r--r--src/mame/drivers/brkthru.c14
-rw-r--r--src/mame/drivers/bsktball.c7
-rw-r--r--src/mame/drivers/btime.c52
-rw-r--r--src/mame/drivers/btoads.c4
-rw-r--r--src/mame/drivers/bublbobl.c24
-rw-r--r--src/mame/drivers/buggychl.c7
-rw-r--r--src/mame/drivers/buster.c4
-rw-r--r--src/mame/drivers/bwidow.c19
-rw-r--r--src/mame/drivers/bwing.c7
-rw-r--r--src/mame/drivers/bzone.c17
-rw-r--r--src/mame/drivers/cabal.c12
-rw-r--r--src/mame/drivers/cabaret.c4
-rw-r--r--src/mame/drivers/calchase.c4
-rw-r--r--src/mame/drivers/calomega.c22
-rw-r--r--src/mame/drivers/calorie.c7
-rw-r--r--src/mame/drivers/canyon.c7
-rw-r--r--src/mame/drivers/capbowl.c12
-rw-r--r--src/mame/drivers/cardline.c4
-rw-r--r--src/mame/drivers/carjmbre.c7
-rw-r--r--src/mame/drivers/carpolo.c4
-rw-r--r--src/mame/drivers/carrera.c4
-rw-r--r--src/mame/drivers/caswin.c4
-rw-r--r--src/mame/drivers/cave.c105
-rw-r--r--src/mame/drivers/cb2001.c4
-rw-r--r--src/mame/drivers/cball.c7
-rw-r--r--src/mame/drivers/cbasebal.c7
-rw-r--r--src/mame/drivers/cbuster.c7
-rw-r--r--src/mame/drivers/ccastles.c7
-rw-r--r--src/mame/drivers/cchance.c7
-rw-r--r--src/mame/drivers/cchasm.c4
-rw-r--r--src/mame/drivers/cclimber.c32
-rw-r--r--src/mame/drivers/cdi.c6
-rw-r--r--src/mame/drivers/centiped.c38
-rw-r--r--src/mame/drivers/chaknpop.c7
-rw-r--r--src/mame/drivers/cham24.c4
-rw-r--r--src/mame/drivers/champbas.c34
-rw-r--r--src/mame/drivers/champbwl.c7
-rw-r--r--src/mame/drivers/chanbara.c7
-rw-r--r--src/mame/drivers/changela.c7
-rw-r--r--src/mame/drivers/cheekyms.c7
-rw-r--r--src/mame/drivers/chihiro.c9
-rw-r--r--src/mame/drivers/chinagat.c21
-rw-r--r--src/mame/drivers/chinsan.c7
-rw-r--r--src/mame/drivers/chqflag.c7
-rw-r--r--src/mame/drivers/chsuper.c4
-rw-r--r--src/mame/drivers/cidelsa.c28
-rw-r--r--src/mame/drivers/cinemat.c141
-rw-r--r--src/mame/drivers/circus.c26
-rw-r--r--src/mame/drivers/circusc.c7
-rw-r--r--src/mame/drivers/cischeat.c28
-rw-r--r--src/mame/drivers/citycon.c7
-rw-r--r--src/mame/drivers/clayshoo.c7
-rw-r--r--src/mame/drivers/cliffhgr.c6
-rw-r--r--src/mame/drivers/cloak.c4
-rw-r--r--src/mame/drivers/cloud9.c7
-rw-r--r--src/mame/drivers/clshroad.c8
-rw-r--r--src/mame/drivers/cmmb.c4
-rw-r--r--src/mame/drivers/cninja.c42
-rw-r--r--src/mame/drivers/cntsteer.c14
-rw-r--r--src/mame/drivers/coinmstr.c24
-rw-r--r--src/mame/drivers/coinmvga.c4
-rw-r--r--src/mame/drivers/cojag.c9
-rw-r--r--src/mame/drivers/combatsc.c14
-rw-r--r--src/mame/drivers/comebaby.c4
-rw-r--r--src/mame/drivers/commando.c7
-rw-r--r--src/mame/drivers/compgolf.c7
-rw-r--r--src/mame/drivers/contra.c7
-rw-r--r--src/mame/drivers/coolpool.c17
-rw-r--r--src/mame/drivers/coolridr.c4
-rw-r--r--src/mame/drivers/cop01.c14
-rw-r--r--src/mame/drivers/copsnrob.c7
-rw-r--r--src/mame/drivers/cosmic.c39
-rw-r--r--src/mame/drivers/cps1.c48
-rw-r--r--src/mame/drivers/cps2.c17
-rw-r--r--src/mame/drivers/cps3.c4
-rw-r--r--src/mame/drivers/crbaloon.c6
-rw-r--r--src/mame/drivers/crgolf.c14
-rw-r--r--src/mame/drivers/crimfght.c7
-rw-r--r--src/mame/drivers/crospang.c14
-rw-r--r--src/mame/drivers/crshrace.c7
-rw-r--r--src/mame/drivers/crystal.c11
-rw-r--r--src/mame/drivers/cshooter.c8
-rw-r--r--src/mame/drivers/cubeqst.c4
-rw-r--r--src/mame/drivers/cubocd32.c4
-rw-r--r--src/mame/drivers/cultures.c7
-rw-r--r--src/mame/drivers/cvs.c7
-rw-r--r--src/mame/drivers/cyberbal.c12
-rw-r--r--src/mame/drivers/cybertnk.c4
-rw-r--r--src/mame/drivers/cyclemb.c4
-rw-r--r--src/mame/drivers/d9final.c4
-rw-r--r--src/mame/drivers/dacholer.c7
-rw-r--r--src/mame/drivers/dambustr.c6
-rw-r--r--src/mame/drivers/darius.c7
-rw-r--r--src/mame/drivers/darkhors.c12
-rw-r--r--src/mame/drivers/darkmist.c4
-rw-r--r--src/mame/drivers/darkseal.c4
-rw-r--r--src/mame/drivers/dassault.c7
-rw-r--r--src/mame/drivers/dblewing.c7
-rw-r--r--src/mame/drivers/dbz.c7
-rw-r--r--src/mame/drivers/dcheese.c12
-rw-r--r--src/mame/drivers/dcon.c8
-rw-r--r--src/mame/drivers/dday.c7
-rw-r--r--src/mame/drivers/ddayjlc.c7
-rw-r--r--src/mame/drivers/ddealer.c5
-rw-r--r--src/mame/drivers/ddenlovr.c151
-rw-r--r--src/mame/drivers/ddragon.c41
-rw-r--r--src/mame/drivers/ddragon3.c17
-rw-r--r--src/mame/drivers/ddribble.c7
-rw-r--r--src/mame/drivers/ddz.c4
-rw-r--r--src/mame/drivers/deadang.c4
-rw-r--r--src/mame/drivers/dec0.c45
-rw-r--r--src/mame/drivers/dec8.c63
-rw-r--r--src/mame/drivers/deco156.c14
-rw-r--r--src/mame/drivers/deco32.c28
-rw-r--r--src/mame/drivers/deco_ld.c14
-rw-r--r--src/mame/drivers/deco_mlc.c18
-rw-r--r--src/mame/drivers/decocass.c152
-rw-r--r--src/mame/drivers/deniam.c14
-rw-r--r--src/mame/drivers/deshoros.c4
-rw-r--r--src/mame/drivers/destroyr.c7
-rw-r--r--src/mame/drivers/dgpix.c4
-rw-r--r--src/mame/drivers/dietgo.c7
-rw-r--r--src/mame/drivers/discoboy.c7
-rw-r--r--src/mame/drivers/diverboy.c5
-rw-r--r--src/mame/drivers/djboy.c5
-rw-r--r--src/mame/drivers/djmain.c4
-rw-r--r--src/mame/drivers/dkong.c103
-rw-r--r--src/mame/drivers/dlair.c18
-rw-r--r--src/mame/drivers/dmndrby.c4
-rw-r--r--src/mame/drivers/docastle.c19
-rw-r--r--src/mame/drivers/dogfgt.c7
-rw-r--r--src/mame/drivers/dominob.c7
-rw-r--r--src/mame/drivers/dooyong.c66
-rw-r--r--src/mame/drivers/dorachan.c7
-rw-r--r--src/mame/drivers/dotrikun.c7
-rw-r--r--src/mame/drivers/dragrace.c7
-rw-r--r--src/mame/drivers/dreamwld.c7
-rw-r--r--src/mame/drivers/drgnmst.c5
-rw-r--r--src/mame/drivers/dribling.c7
-rw-r--r--src/mame/drivers/drmicro.c7
-rw-r--r--src/mame/drivers/drtomy.c7
-rw-r--r--src/mame/drivers/drw80pkr.c4
-rw-r--r--src/mame/drivers/dunhuang.c7
-rw-r--r--src/mame/drivers/dwarfd.c12
-rw-r--r--src/mame/drivers/dynadice.c7
-rw-r--r--src/mame/drivers/dynax.c108
-rw-r--r--src/mame/drivers/dynduke.c9
-rw-r--r--src/mame/drivers/egghunt.c7
-rw-r--r--src/mame/drivers/embargo.c7
-rw-r--r--src/mame/drivers/enigma2.c14
-rw-r--r--src/mame/drivers/eolith.c14
-rw-r--r--src/mame/drivers/eolith16.c4
-rw-r--r--src/mame/drivers/epos.c14
-rw-r--r--src/mame/drivers/eprom.c21
-rw-r--r--src/mame/drivers/equites.c27
-rw-r--r--src/mame/drivers/ertictac.c4
-rw-r--r--src/mame/drivers/esd16.c32
-rw-r--r--src/mame/drivers/esh.c4
-rw-r--r--src/mame/drivers/espial.c12
-rw-r--r--src/mame/drivers/esripsys.c4
-rw-r--r--src/mame/drivers/ettrivia.c4
-rw-r--r--src/mame/drivers/exedexes.c7
-rw-r--r--src/mame/drivers/exerion.c7
-rw-r--r--src/mame/drivers/exidy.c59
-rw-r--r--src/mame/drivers/exidy440.c15
-rw-r--r--src/mame/drivers/expro02.c9
-rw-r--r--src/mame/drivers/exprraid.c12
-rw-r--r--src/mame/drivers/exterm.c4
-rw-r--r--src/mame/drivers/exzisus.c4
-rw-r--r--src/mame/drivers/f-32.c7
-rw-r--r--src/mame/drivers/f1gp.c19
-rw-r--r--src/mame/drivers/fantland.c28
-rw-r--r--src/mame/drivers/fastfred.c14
-rw-r--r--src/mame/drivers/fastlane.c7
-rw-r--r--src/mame/drivers/fcombat.c7
-rw-r--r--src/mame/drivers/fcrash.c14
-rw-r--r--src/mame/drivers/feversoc.c4
-rw-r--r--src/mame/drivers/fgoal.c7
-rw-r--r--src/mame/drivers/finalizr.c7
-rw-r--r--src/mame/drivers/firebeat.c14
-rw-r--r--src/mame/drivers/firefox.c4
-rw-r--r--src/mame/drivers/firetrap.c14
-rw-r--r--src/mame/drivers/firetrk.c14
-rw-r--r--src/mame/drivers/fitfight.c10
-rw-r--r--src/mame/drivers/flkatck.c7
-rw-r--r--src/mame/drivers/flower.c4
-rw-r--r--src/mame/drivers/flstory.c21
-rw-r--r--src/mame/drivers/flyball.c7
-rw-r--r--src/mame/drivers/foodf.c5
-rw-r--r--src/mame/drivers/forte2.c6
-rw-r--r--src/mame/drivers/fortecar.c4
-rw-r--r--src/mame/drivers/freekick.c25
-rw-r--r--src/mame/drivers/fromanc2.c21
-rw-r--r--src/mame/drivers/fromance.c21
-rw-r--r--src/mame/drivers/funkybee.c7
-rw-r--r--src/mame/drivers/funkyjet.c7
-rw-r--r--src/mame/drivers/funworld.c41
-rw-r--r--src/mame/drivers/funybubl.c7
-rw-r--r--src/mame/drivers/fuukifg2.c7
-rw-r--r--src/mame/drivers/fuukifg3.c7
-rw-r--r--src/mame/drivers/gaelco.c28
-rw-r--r--src/mame/drivers/gaelco2.c24
-rw-r--r--src/mame/drivers/gaelco3d.c9
-rw-r--r--src/mame/drivers/gaiden.c26
-rw-r--r--src/mame/drivers/gal3.c4
-rw-r--r--src/mame/drivers/galaga.c39
-rw-r--r--src/mame/drivers/galastrm.c6
-rw-r--r--src/mame/drivers/galaxi.c13
-rw-r--r--src/mame/drivers/galaxia.c9
-rw-r--r--src/mame/drivers/galaxian.c162
-rw-r--r--src/mame/drivers/galaxold.c107
-rw-r--r--src/mame/drivers/galivan.c14
-rw-r--r--src/mame/drivers/galpani2.c4
-rw-r--r--src/mame/drivers/galpani3.c4
-rw-r--r--src/mame/drivers/galpanic.c34
-rw-r--r--src/mame/drivers/galspnbl.c7
-rw-r--r--src/mame/drivers/gamecstl.c4
-rw-r--r--src/mame/drivers/gameplan.c16
-rw-r--r--src/mame/drivers/gaplus.c14
-rw-r--r--src/mame/drivers/gatron.c4
-rw-r--r--src/mame/drivers/gauntlet.c5
-rw-r--r--src/mame/drivers/gberet.c17
-rw-r--r--src/mame/drivers/gbusters.c7
-rw-r--r--src/mame/drivers/gcpinbal.c7
-rw-r--r--src/mame/drivers/gei.c58
-rw-r--r--src/mame/drivers/ggconnie.c4
-rw-r--r--src/mame/drivers/ghosteo.c4
-rw-r--r--src/mame/drivers/gijoe.c7
-rw-r--r--src/mame/drivers/ginganin.c7
-rw-r--r--src/mame/drivers/gladiatr.c8
-rw-r--r--src/mame/drivers/glass.c7
-rw-r--r--src/mame/drivers/gng.c7
-rw-r--r--src/mame/drivers/go2000.c5
-rw-r--r--src/mame/drivers/goal92.c7
-rw-r--r--src/mame/drivers/goindol.c7
-rw-r--r--src/mame/drivers/goldnpkr.c28
-rw-r--r--src/mame/drivers/goldstar.c132
-rw-r--r--src/mame/drivers/gomoku.c4
-rw-r--r--src/mame/drivers/good.c5
-rw-r--r--src/mame/drivers/goodejan.c9
-rw-r--r--src/mame/drivers/gotcha.c7
-rw-r--r--src/mame/drivers/gottlieb.c45
-rw-r--r--src/mame/drivers/gotya.c7
-rw-r--r--src/mame/drivers/gpworld.c4
-rw-r--r--src/mame/drivers/gradius3.c7
-rw-r--r--src/mame/drivers/grchamp.c5
-rw-r--r--src/mame/drivers/gridlee.c4
-rw-r--r--src/mame/drivers/groundfx.c6
-rw-r--r--src/mame/drivers/gstream.c7
-rw-r--r--src/mame/drivers/gstriker.c13
-rw-r--r--src/mame/drivers/gsword.c8
-rw-r--r--src/mame/drivers/gticlub.c20
-rw-r--r--src/mame/drivers/guab.c4
-rw-r--r--src/mame/drivers/gumbo.c15
-rw-r--r--src/mame/drivers/gunbustr.c6
-rw-r--r--src/mame/drivers/gundealr.c7
-rw-r--r--src/mame/drivers/gunpey.c4
-rw-r--r--src/mame/drivers/gunsmoke.c7
-rw-r--r--src/mame/drivers/gyruss.c7
-rw-r--r--src/mame/drivers/halleys.c9
-rw-r--r--src/mame/drivers/hanaawas.c7
-rw-r--r--src/mame/drivers/harddriv.c147
-rw-r--r--src/mame/drivers/hcastle.c7
-rw-r--r--src/mame/drivers/hexion.c4
-rw-r--r--src/mame/drivers/higemaru.c7
-rw-r--r--src/mame/drivers/highvdeo.c28
-rw-r--r--src/mame/drivers/hikaru.c4
-rw-r--r--src/mame/drivers/himesiki.c7
-rw-r--r--src/mame/drivers/hitme.c12
-rw-r--r--src/mame/drivers/hitpoker.c4
-rw-r--r--src/mame/drivers/hnayayoi.c17
-rw-r--r--src/mame/drivers/hng64.c6
-rw-r--r--src/mame/drivers/holeland.c14
-rw-r--r--src/mame/drivers/homedata.c40
-rw-r--r--src/mame/drivers/homerun.c7
-rw-r--r--src/mame/drivers/hornet.c20
-rw-r--r--src/mame/drivers/hotblock.c7
-rw-r--r--src/mame/drivers/hotstuff.c4
-rw-r--r--src/mame/drivers/hvyunit.c4
-rw-r--r--src/mame/drivers/hyhoo.c4
-rw-r--r--src/mame/drivers/hyperspt.c17
-rw-r--r--src/mame/drivers/hyprduel.c14
-rw-r--r--src/mame/drivers/igs009.c9
-rw-r--r--src/mame/drivers/igs011.c39
-rw-r--r--src/mame/drivers/igs017.c16
-rw-r--r--src/mame/drivers/igs_m027.c4
-rw-r--r--src/mame/drivers/igspoker.c40
-rw-r--r--src/mame/drivers/ikki.c7
-rw-r--r--src/mame/drivers/ilpag.c9
-rw-r--r--src/mame/drivers/imolagp.c5
-rw-r--r--src/mame/drivers/intrscti.c4
-rw-r--r--src/mame/drivers/inufuku.c7
-rw-r--r--src/mame/drivers/iqblock.c4
-rw-r--r--src/mame/drivers/irobot.c4
-rw-r--r--src/mame/drivers/ironhors.c12
-rw-r--r--src/mame/drivers/istellar.c4
-rw-r--r--src/mame/drivers/itech32.c24
-rw-r--r--src/mame/drivers/itech8.c114
-rw-r--r--src/mame/drivers/itgambl2.c4
-rw-r--r--src/mame/drivers/itgambl3.c4
-rw-r--r--src/mame/drivers/itgamble.c16
-rw-r--r--src/mame/drivers/jack.c22
-rw-r--r--src/mame/drivers/jackal.c7
-rw-r--r--src/mame/drivers/jackie.c4
-rw-r--r--src/mame/drivers/jackpool.c4
-rw-r--r--src/mame/drivers/jailbrek.c7
-rw-r--r--src/mame/drivers/jalmah.c9
-rw-r--r--src/mame/drivers/jangou.c25
-rw-r--r--src/mame/drivers/jantotsu.c7
-rw-r--r--src/mame/drivers/jchan.c4
-rw-r--r--src/mame/drivers/jedi.c10
-rw-r--r--src/mame/drivers/jokrwild.c4
-rw-r--r--src/mame/drivers/jollyjgr.c12
-rw-r--r--src/mame/drivers/jongkyo.c7
-rw-r--r--src/mame/drivers/jpmimpct.c8
-rw-r--r--src/mame/drivers/jpmsys5.c4
-rw-r--r--src/mame/drivers/jrpacman.c4
-rw-r--r--src/mame/drivers/junofrst.c7
-rw-r--r--src/mame/drivers/kaneko16.c44
-rw-r--r--src/mame/drivers/kangaroo.c12
-rw-r--r--src/mame/drivers/karnov.c14
-rw-r--r--src/mame/drivers/kchamp.c14
-rw-r--r--src/mame/drivers/kickgoal.c14
-rw-r--r--src/mame/drivers/kingdrby.c14
-rw-r--r--src/mame/drivers/kingobox.c14
-rw-r--r--src/mame/drivers/kingpin.c6
-rw-r--r--src/mame/drivers/kinst.c6
-rw-r--r--src/mame/drivers/klax.c5
-rw-r--r--src/mame/drivers/kncljoe.c7
-rw-r--r--src/mame/drivers/koftball.c4
-rw-r--r--src/mame/drivers/koikoi.c7
-rw-r--r--src/mame/drivers/konamigq.c4
-rw-r--r--src/mame/drivers/konamigv.c19
-rw-r--r--src/mame/drivers/konamigx.c59
-rw-r--r--src/mame/drivers/konamim2.c4
-rw-r--r--src/mame/drivers/kongambl.c4
-rw-r--r--src/mame/drivers/kopunch.c7
-rw-r--r--src/mame/drivers/ksayakyu.c7
-rw-r--r--src/mame/drivers/ksys573.c9
-rw-r--r--src/mame/drivers/kungfur.c4
-rw-r--r--src/mame/drivers/kyugo.c32
-rw-r--r--src/mame/drivers/labyrunr.c7
-rw-r--r--src/mame/drivers/ladybug.c14
-rw-r--r--src/mame/drivers/ladyfrog.c12
-rw-r--r--src/mame/drivers/laserbas.c5
-rw-r--r--src/mame/drivers/laserbat.c14
-rw-r--r--src/mame/drivers/lasso.c27
-rw-r--r--src/mame/drivers/lastduel.c14
-rw-r--r--src/mame/drivers/lastfght.c7
-rw-r--r--src/mame/drivers/lazercmd.c21
-rw-r--r--src/mame/drivers/legionna.c28
-rw-r--r--src/mame/drivers/leland.c21
-rw-r--r--src/mame/drivers/lemmings.c7
-rw-r--r--src/mame/drivers/lethal.c12
-rw-r--r--src/mame/drivers/lethalj.c9
-rw-r--r--src/mame/drivers/lgp.c4
-rw-r--r--src/mame/drivers/liberate.c28
-rw-r--r--src/mame/drivers/liberatr.c9
-rw-r--r--src/mame/drivers/limenko.c8
-rw-r--r--src/mame/drivers/littlerb.c4
-rw-r--r--src/mame/drivers/lkage.c14
-rw-r--r--src/mame/drivers/lockon.c7
-rw-r--r--src/mame/drivers/looping.c5
-rw-r--r--src/mame/drivers/lordgun.c8
-rw-r--r--src/mame/drivers/lsasquad.c19
-rw-r--r--src/mame/drivers/ltcasino.c4
-rw-r--r--src/mame/drivers/luckgrln.c4
-rw-r--r--src/mame/drivers/lucky74.c4
-rw-r--r--src/mame/drivers/lvcards.c14
-rw-r--r--src/mame/drivers/lwings.c17
-rw-r--r--src/mame/drivers/m10.c24
-rw-r--r--src/mame/drivers/m107.c14
-rw-r--r--src/mame/drivers/m14.c7
-rw-r--r--src/mame/drivers/m52.c14
-rw-r--r--src/mame/drivers/m57.c9
-rw-r--r--src/mame/drivers/m58.c9
-rw-r--r--src/mame/drivers/m62.c64
-rw-r--r--src/mame/drivers/m63.c19
-rw-r--r--src/mame/drivers/m72.c69
-rw-r--r--src/mame/drivers/m79amb.c7
-rw-r--r--src/mame/drivers/m90.c48
-rw-r--r--src/mame/drivers/m92.c73
-rw-r--r--src/mame/drivers/macrossp.c12
-rw-r--r--src/mame/drivers/macs.c4
-rw-r--r--src/mame/drivers/madalien.c6
-rw-r--r--src/mame/drivers/madmotor.c7
-rw-r--r--src/mame/drivers/magic10.c28
-rw-r--r--src/mame/drivers/magicard.c4
-rw-r--r--src/mame/drivers/magicfly.c9
-rw-r--r--src/mame/drivers/magictg.c4
-rw-r--r--src/mame/drivers/magmax.c4
-rw-r--r--src/mame/drivers/mainevt.c14
-rw-r--r--src/mame/drivers/mainsnk.c6
-rw-r--r--src/mame/drivers/malzak.c12
-rw-r--r--src/mame/drivers/mappy.c43
-rw-r--r--src/mame/drivers/marineb.c37
-rw-r--r--src/mame/drivers/marinedt.c7
-rw-r--r--src/mame/drivers/mario.c21
-rw-r--r--src/mame/drivers/markham.c7
-rw-r--r--src/mame/drivers/mastboy.c4
-rw-r--r--src/mame/drivers/matmania.c14
-rw-r--r--src/mame/drivers/maxaflex.c9
-rw-r--r--src/mame/drivers/maygay1b.c4
-rw-r--r--src/mame/drivers/maygayv1.c4
-rw-r--r--src/mame/drivers/mayumi.c7
-rw-r--r--src/mame/drivers/mazerbla.c14
-rw-r--r--src/mame/drivers/mcatadv.c12
-rw-r--r--src/mame/drivers/mcr.c40
-rw-r--r--src/mame/drivers/mcr3.c37
-rw-r--r--src/mame/drivers/mcr68.c54
-rw-r--r--src/mame/drivers/meadows.c12
-rw-r--r--src/mame/drivers/mediagx.c6
-rw-r--r--src/mame/drivers/megadriv.c51
-rw-r--r--src/mame/drivers/megaplay.c5
-rw-r--r--src/mame/drivers/megasys1.c36
-rw-r--r--src/mame/drivers/megatech.c5
-rw-r--r--src/mame/drivers/megazone.c7
-rw-r--r--src/mame/drivers/meijinsn.c7
-rw-r--r--src/mame/drivers/merit.c44
-rw-r--r--src/mame/drivers/meritm.c19
-rw-r--r--src/mame/drivers/mermaid.c7
-rw-r--r--src/mame/drivers/metalmx.c7
-rw-r--r--src/mame/drivers/metlclsh.c7
-rw-r--r--src/mame/drivers/metro.c168
-rw-r--r--src/mame/drivers/mexico86.c17
-rw-r--r--src/mame/drivers/mgolf.c7
-rw-r--r--src/mame/drivers/mhavoc.c14
-rw-r--r--src/mame/drivers/micro3d.c5
-rw-r--r--src/mame/drivers/midas.c8
-rw-r--r--src/mame/drivers/midtunit.c18
-rw-r--r--src/mame/drivers/midvunit.c18
-rw-r--r--src/mame/drivers/midwunit.c6
-rw-r--r--src/mame/drivers/midxunit.c6
-rw-r--r--src/mame/drivers/midyunit.c50
-rw-r--r--src/mame/drivers/midzeus.c18
-rw-r--r--src/mame/drivers/mikie.c7
-rw-r--r--src/mame/drivers/mil4000.c4
-rw-r--r--src/mame/drivers/miniboy7.c4
-rw-r--r--src/mame/drivers/minivadr.c7
-rw-r--r--src/mame/drivers/mirage.c7
-rw-r--r--src/mame/drivers/mirax.c4
-rw-r--r--src/mame/drivers/missb2.c7
-rw-r--r--src/mame/drivers/missile.c4
-rw-r--r--src/mame/drivers/mitchell.c40
-rw-r--r--src/mame/drivers/mjkjidai.c6
-rw-r--r--src/mame/drivers/mjsister.c7
-rw-r--r--src/mame/drivers/mlanding.c4
-rw-r--r--src/mame/drivers/model1.c8
-rw-r--r--src/mame/drivers/model2.c21
-rw-r--r--src/mame/drivers/model3.c16
-rw-r--r--src/mame/drivers/mogura.c7
-rw-r--r--src/mame/drivers/mole.c7
-rw-r--r--src/mame/drivers/momoko.c7
-rw-r--r--src/mame/drivers/monzagp.c4
-rw-r--r--src/mame/drivers/moo.c19
-rw-r--r--src/mame/drivers/mosaic.c12
-rw-r--r--src/mame/drivers/mouser.c7
-rw-r--r--src/mame/drivers/mpoker.c4
-rw-r--r--src/mame/drivers/mpu4.c19
-rw-r--r--src/mame/drivers/mpu4drvr.c23
-rw-r--r--src/mame/drivers/mpu5.c4
-rw-r--r--src/mame/drivers/mquake.c4
-rw-r--r--src/mame/drivers/mrdo.c7
-rw-r--r--src/mame/drivers/mrflea.c7
-rw-r--r--src/mame/drivers/mrjong.c7
-rw-r--r--src/mame/drivers/ms32.c9
-rw-r--r--src/mame/drivers/msisaac.c7
-rw-r--r--src/mame/drivers/mugsmash.c6
-rw-r--r--src/mame/drivers/multfish.c10
-rw-r--r--src/mame/drivers/multigam.c19
-rw-r--r--src/mame/drivers/munchmo.c7
-rw-r--r--src/mame/drivers/murogem.c4
-rw-r--r--src/mame/drivers/murogmbl.c4
-rw-r--r--src/mame/drivers/mustache.c4
-rw-r--r--src/mame/drivers/mw8080bw.c154
-rw-r--r--src/mame/drivers/mwarr.c7
-rw-r--r--src/mame/drivers/mystston.c8
-rw-r--r--src/mame/drivers/mystwarr.c29
-rw-r--r--src/mame/drivers/n8080.c27
-rw-r--r--src/mame/drivers/namcofl.c4
-rw-r--r--src/mame/drivers/namcona1.c14
-rw-r--r--src/mame/drivers/namconb1.c8
-rw-r--r--src/mame/drivers/namcond1.c4
-rw-r--r--src/mame/drivers/namcops2.c9
-rw-r--r--src/mame/drivers/namcos1.c4
-rw-r--r--src/mame/drivers/namcos10.c4
-rw-r--r--src/mame/drivers/namcos11.c9
-rw-r--r--src/mame/drivers/namcos12.c4
-rw-r--r--src/mame/drivers/namcos2.c39
-rw-r--r--src/mame/drivers/namcos21.c22
-rw-r--r--src/mame/drivers/namcos22.c8
-rw-r--r--src/mame/drivers/namcos23.c27
-rw-r--r--src/mame/drivers/namcos86.c29
-rw-r--r--src/mame/drivers/naomi.c19
-rw-r--r--src/mame/drivers/naughtyb.c8
-rw-r--r--src/mame/drivers/nbmj8688.c83
-rw-r--r--src/mame/drivers/nbmj8891.c104
-rw-r--r--src/mame/drivers/nbmj8900.c9
-rw-r--r--src/mame/drivers/nbmj8991.c103
-rw-r--r--src/mame/drivers/nbmj9195.c149
-rw-r--r--src/mame/drivers/nemesis.c63
-rw-r--r--src/mame/drivers/neogeo.c7
-rw-r--r--src/mame/drivers/neptunp2.c4
-rw-r--r--src/mame/drivers/news.c7
-rw-r--r--src/mame/drivers/nightgal.c18
-rw-r--r--src/mame/drivers/ninjakd2.c24
-rw-r--r--src/mame/drivers/ninjaw.c14
-rw-r--r--src/mame/drivers/nitedrvr.c7
-rw-r--r--src/mame/drivers/niyanpai.c14
-rw-r--r--src/mame/drivers/nmg5.c31
-rw-r--r--src/mame/drivers/nmk16.c119
-rw-r--r--src/mame/drivers/norautp.c69
-rw-r--r--src/mame/drivers/nova2001.c16
-rw-r--r--src/mame/drivers/nss.c12
-rw-r--r--src/mame/drivers/nwk-tr.c9
-rw-r--r--src/mame/drivers/nycaptor.c21
-rw-r--r--src/mame/drivers/nyny.c7
-rw-r--r--src/mame/drivers/offtwall.c7
-rw-r--r--src/mame/drivers/ohmygod.c7
-rw-r--r--src/mame/drivers/ojankohs.c28
-rw-r--r--src/mame/drivers/olibochu.c7
-rw-r--r--src/mame/drivers/omegrace.c4
-rw-r--r--src/mame/drivers/oneshot.c12
-rw-r--r--src/mame/drivers/onetwo.c7
-rw-r--r--src/mame/drivers/opwolf.c14
-rw-r--r--src/mame/drivers/orbit.c7
-rw-r--r--src/mame/drivers/othello.c7
-rw-r--r--src/mame/drivers/othldrby.c7
-rw-r--r--src/mame/drivers/othunder.c7
-rw-r--r--src/mame/drivers/overdriv.c7
-rw-r--r--src/mame/drivers/pachifev.c8
-rw-r--r--src/mame/drivers/pacland.c4
-rw-r--r--src/mame/drivers/pacman.c94
-rw-r--r--src/mame/drivers/pandoras.c7
-rw-r--r--src/mame/drivers/pangofun.c4
-rw-r--r--src/mame/drivers/panicr.c4
-rw-r--r--src/mame/drivers/paradise.c25
-rw-r--r--src/mame/drivers/paranoia.c4
-rw-r--r--src/mame/drivers/parodius.c7
-rw-r--r--src/mame/drivers/pasha2.c7
-rw-r--r--src/mame/drivers/pass.c6
-rw-r--r--src/mame/drivers/pastelg.c8
-rw-r--r--src/mame/drivers/pbaction.c7
-rw-r--r--src/mame/drivers/pcat_dyn.c6
-rw-r--r--src/mame/drivers/pcat_nit.c10
-rw-r--r--src/mame/drivers/pcktgal.c9
-rw-r--r--src/mame/drivers/pcxt.c8
-rw-r--r--src/mame/drivers/pengadvb.c6
-rw-r--r--src/mame/drivers/pengo.c9
-rw-r--r--src/mame/drivers/peplus.c4
-rw-r--r--src/mame/drivers/pgm.c52
-rw-r--r--src/mame/drivers/phoenix.c18
-rw-r--r--src/mame/drivers/photon.c4
-rw-r--r--src/mame/drivers/photon2.c4
-rw-r--r--src/mame/drivers/photoply.c6
-rw-r--r--src/mame/drivers/pingpong.c9
-rw-r--r--src/mame/drivers/pinkiri8.c4
-rw-r--r--src/mame/drivers/pipedrm.c14
-rw-r--r--src/mame/drivers/pipeline.c4
-rw-r--r--src/mame/drivers/pirates.c4
-rw-r--r--src/mame/drivers/pitnrun.c4
-rw-r--r--src/mame/drivers/pkscram.c4
-rw-r--r--src/mame/drivers/pktgaldx.c14
-rw-r--r--src/mame/drivers/playch10.c14
-rw-r--r--src/mame/drivers/playmark.c35
-rw-r--r--src/mame/drivers/plygonet.c6
-rw-r--r--src/mame/drivers/pntnpuzl.c4
-rw-r--r--src/mame/drivers/pokechmp.c4
-rw-r--r--src/mame/drivers/poker72.c4
-rw-r--r--src/mame/drivers/polepos.c13
-rw-r--r--src/mame/drivers/policetr.c9
-rw-r--r--src/mame/drivers/polyplay.c4
-rw-r--r--src/mame/drivers/poo.c4
-rw-r--r--src/mame/drivers/poolshrk.c4
-rw-r--r--src/mame/drivers/pooyan.c9
-rw-r--r--src/mame/drivers/popeye.c14
-rw-r--r--src/mame/drivers/popper.c7
-rw-r--r--src/mame/drivers/portrait.c4
-rw-r--r--src/mame/drivers/powerbal.c14
-rw-r--r--src/mame/drivers/powerins.c14
-rw-r--r--src/mame/drivers/ppmast93.c4
-rw-r--r--src/mame/drivers/prehisle.c6
-rw-r--r--src/mame/drivers/progolf.c4
-rw-r--r--src/mame/drivers/psattack.c4
-rw-r--r--src/mame/drivers/psikyo.c28
-rw-r--r--src/mame/drivers/psikyo4.c13
-rw-r--r--src/mame/drivers/psikyosh.c19
-rw-r--r--src/mame/drivers/psychic5.c8
-rw-r--r--src/mame/drivers/pturn.c4
-rw-r--r--src/mame/drivers/puckpkmn.c5
-rw-r--r--src/mame/drivers/punchout.c9
-rw-r--r--src/mame/drivers/pushman.c14
-rw-r--r--src/mame/drivers/pzletime.c7
-rw-r--r--src/mame/drivers/qdrmfgp.c8
-rw-r--r--src/mame/drivers/qix.c36
-rw-r--r--src/mame/drivers/quakeat.c4
-rw-r--r--src/mame/drivers/quantum.c4
-rw-r--r--src/mame/drivers/quasar.c7
-rw-r--r--src/mame/drivers/queen.c4
-rw-r--r--src/mame/drivers/quizdna.c14
-rw-r--r--src/mame/drivers/quizo.c4
-rw-r--r--src/mame/drivers/quizpani.c4
-rw-r--r--src/mame/drivers/quizpun2.c4
-rw-r--r--src/mame/drivers/r2dtank.c4
-rw-r--r--src/mame/drivers/rabbit.c4
-rw-r--r--src/mame/drivers/raiden.c15
-rw-r--r--src/mame/drivers/raiden2.c14
-rw-r--r--src/mame/drivers/rainbow.c14
-rw-r--r--src/mame/drivers/rallyx.c31
-rw-r--r--src/mame/drivers/rampart.c5
-rw-r--r--src/mame/drivers/rastan.c7
-rw-r--r--src/mame/drivers/rbmk.c4
-rw-r--r--src/mame/drivers/rcorsair.c4
-rw-r--r--src/mame/drivers/re900.c12
-rw-r--r--src/mame/drivers/realbrk.c19
-rw-r--r--src/mame/drivers/redalert.c32
-rw-r--r--src/mame/drivers/redclash.c14
-rw-r--r--src/mame/drivers/relief.c5
-rw-r--r--src/mame/drivers/renegade.c9
-rw-r--r--src/mame/drivers/retofinv.c10
-rw-r--r--src/mame/drivers/rgum.c4
-rw-r--r--src/mame/drivers/rmhaihai.c14
-rw-r--r--src/mame/drivers/rockrage.c7
-rw-r--r--src/mame/drivers/rocnrope.c9
-rw-r--r--src/mame/drivers/rohga.c28
-rw-r--r--src/mame/drivers/rollerg.c7
-rw-r--r--src/mame/drivers/rollrace.c9
-rw-r--r--src/mame/drivers/rotaryf.c4
-rw-r--r--src/mame/drivers/roul.c4
-rw-r--r--src/mame/drivers/route16.c30
-rw-r--r--src/mame/drivers/royalmah.c100
-rw-r--r--src/mame/drivers/rpunch.c4
-rw-r--r--src/mame/drivers/runaway.c9
-rw-r--r--src/mame/drivers/rungun.c7
-rw-r--r--src/mame/drivers/safarir.c12
-rw-r--r--src/mame/drivers/sandscrp.c4
-rw-r--r--src/mame/drivers/sangho.c8
-rw-r--r--src/mame/drivers/sauro.c14
-rw-r--r--src/mame/drivers/savquest.c4
-rw-r--r--src/mame/drivers/sbasketb.c7
-rw-r--r--src/mame/drivers/sbowling.c6
-rw-r--r--src/mame/drivers/sbrkout.c4
-rw-r--r--src/mame/drivers/sbugger.c6
-rw-r--r--src/mame/drivers/scobra.c53
-rw-r--r--src/mame/drivers/scotrsht.c4
-rw-r--r--src/mame/drivers/scramble.c80
-rw-r--r--src/mame/drivers/scregg.c14
-rw-r--r--src/mame/drivers/sderby.c18
-rw-r--r--src/mame/drivers/seattle.c42
-rw-r--r--src/mame/drivers/segac2.c11
-rw-r--r--src/mame/drivers/segae.c4
-rw-r--r--src/mame/drivers/segag80r.c46
-rw-r--r--src/mame/drivers/segag80v.c39
-rw-r--r--src/mame/drivers/segahang.c66
-rw-r--r--src/mame/drivers/segald.c4
-rw-r--r--src/mame/drivers/segamsys.c4
-rw-r--r--src/mame/drivers/segaorun.c22
-rw-r--r--src/mame/drivers/segas16a.c17
-rw-r--r--src/mame/drivers/segas16b.c32
-rw-r--r--src/mame/drivers/segas18.c12
-rw-r--r--src/mame/drivers/segas24.c9
-rw-r--r--src/mame/drivers/segas32.c13
-rw-r--r--src/mame/drivers/segaxbd.c12
-rw-r--r--src/mame/drivers/segaybd.c7
-rw-r--r--src/mame/drivers/seibuspi.c24
-rw-r--r--src/mame/drivers/seicross.c9
-rw-r--r--src/mame/drivers/sengokmj.c4
-rw-r--r--src/mame/drivers/senjyo.c9
-rw-r--r--src/mame/drivers/seta.c244
-rw-r--r--src/mame/drivers/seta2.c48
-rw-r--r--src/mame/drivers/sf.c22
-rw-r--r--src/mame/drivers/sfbonus.c4
-rw-r--r--src/mame/drivers/sfcbox.c12
-rw-r--r--src/mame/drivers/sfkick.c4
-rw-r--r--src/mame/drivers/sg1000a.c6
-rw-r--r--src/mame/drivers/shadfrce.c6
-rw-r--r--src/mame/drivers/shangha3.c12
-rw-r--r--src/mame/drivers/shanghai.c12
-rw-r--r--src/mame/drivers/shangkid.c13
-rw-r--r--src/mame/drivers/shaolins.c9
-rw-r--r--src/mame/drivers/shisen.c4
-rw-r--r--src/mame/drivers/shootout.c12
-rw-r--r--src/mame/drivers/shougi.c6
-rw-r--r--src/mame/drivers/shuuz.c5
-rw-r--r--src/mame/drivers/sidearms.c18
-rw-r--r--src/mame/drivers/sidepckt.c6
-rw-r--r--src/mame/drivers/sigmab52.c4
-rw-r--r--src/mame/drivers/sigmab98.c4
-rw-r--r--src/mame/drivers/silkroad.c6
-rw-r--r--src/mame/drivers/simpl156.c31
-rw-r--r--src/mame/drivers/simpsons.c7
-rw-r--r--src/mame/drivers/skeetsht.c6
-rw-r--r--src/mame/drivers/skimaxx.c4
-rw-r--r--src/mame/drivers/skullxbo.c7
-rw-r--r--src/mame/drivers/skyarmy.c6
-rw-r--r--src/mame/drivers/skydiver.c4
-rw-r--r--src/mame/drivers/skyfox.c7
-rw-r--r--src/mame/drivers/skykid.c4
-rw-r--r--src/mame/drivers/skylncr.c4
-rw-r--r--src/mame/drivers/skyraid.c4
-rw-r--r--src/mame/drivers/slapfght.c26
-rw-r--r--src/mame/drivers/slapshot.c14
-rw-r--r--src/mame/drivers/sliver.c6
-rw-r--r--src/mame/drivers/slotcarn.c4
-rw-r--r--src/mame/drivers/sms.c9
-rw-r--r--src/mame/drivers/snesb.c7
-rw-r--r--src/mame/drivers/snk.c120
-rw-r--r--src/mame/drivers/snk6502.c33
-rw-r--r--src/mame/drivers/snk68.c12
-rw-r--r--src/mame/drivers/snookr10.c14
-rw-r--r--src/mame/drivers/snowbros.c48
-rw-r--r--src/mame/drivers/solomon.c4
-rw-r--r--src/mame/drivers/sonson.c7
-rw-r--r--src/mame/drivers/sothello.c4
-rw-r--r--src/mame/drivers/spacefb.c6
-rw-r--r--src/mame/drivers/spaceg.c7
-rw-r--r--src/mame/drivers/spbactn.c6
-rw-r--r--src/mame/drivers/spcforce.c4
-rw-r--r--src/mame/drivers/spdodgeb.c4
-rw-r--r--src/mame/drivers/speedatk.c4
-rw-r--r--src/mame/drivers/speedbal.c4
-rw-r--r--src/mame/drivers/speedspn.c4
-rw-r--r--src/mame/drivers/speglsht.c4
-rw-r--r--src/mame/drivers/spiders.c6
-rw-r--r--src/mame/drivers/splash.c12
-rw-r--r--src/mame/drivers/spoker.c6
-rw-r--r--src/mame/drivers/spool99.c12
-rw-r--r--src/mame/drivers/sprcros2.c4
-rw-r--r--src/mame/drivers/sprint2.c16
-rw-r--r--src/mame/drivers/sprint4.c4
-rw-r--r--src/mame/drivers/sprint8.c4
-rw-r--r--src/mame/drivers/spy.c7
-rw-r--r--src/mame/drivers/srmp2.c18
-rw-r--r--src/mame/drivers/srmp5.c6
-rw-r--r--src/mame/drivers/srmp6.c6
-rw-r--r--src/mame/drivers/srumbler.c4
-rw-r--r--src/mame/drivers/ssfindo.c8
-rw-r--r--src/mame/drivers/sshangha.c9
-rw-r--r--src/mame/drivers/ssingles.c11
-rw-r--r--src/mame/drivers/sslam.c12
-rw-r--r--src/mame/drivers/ssozumo.c4
-rw-r--r--src/mame/drivers/sspeedr.c4
-rw-r--r--src/mame/drivers/ssrj.c4
-rw-r--r--src/mame/drivers/sstrangr.c11
-rw-r--r--src/mame/drivers/ssv.c102
-rw-r--r--src/mame/drivers/st0016.c9
-rw-r--r--src/mame/drivers/stactics.c8
-rw-r--r--src/mame/drivers/stadhero.c4
-rw-r--r--src/mame/drivers/starcrus.c4
-rw-r--r--src/mame/drivers/starfire.c4
-rw-r--r--src/mame/drivers/starshp1.c4
-rw-r--r--src/mame/drivers/starwars.c4
-rw-r--r--src/mame/drivers/statriv2.c16
-rw-r--r--src/mame/drivers/stepstag.c4
-rw-r--r--src/mame/drivers/stfight.c4
-rw-r--r--src/mame/drivers/stlforce.c12
-rw-r--r--src/mame/drivers/strnskil.c4
-rw-r--r--src/mame/drivers/stv.c4
-rw-r--r--src/mame/drivers/sub.c6
-rw-r--r--src/mame/drivers/subs.c4
-rw-r--r--src/mame/drivers/subsino.c30
-rw-r--r--src/mame/drivers/suna16.c16
-rw-r--r--src/mame/drivers/suna8.c26
-rw-r--r--src/mame/drivers/supbtime.c14
-rw-r--r--src/mame/drivers/supdrapo.c6
-rw-r--r--src/mame/drivers/superchs.c6
-rw-r--r--src/mame/drivers/superdq.c6
-rw-r--r--src/mame/drivers/superqix.c21
-rw-r--r--src/mame/drivers/supertnk.c6
-rw-r--r--src/mame/drivers/suprgolf.c6
-rw-r--r--src/mame/drivers/suprloco.c4
-rw-r--r--src/mame/drivers/suprnova.c4
-rw-r--r--src/mame/drivers/suprridr.c4
-rw-r--r--src/mame/drivers/suprslam.c5
-rw-r--r--src/mame/drivers/surpratk.c7
-rw-r--r--src/mame/drivers/system1.c57
-rw-r--r--src/mame/drivers/system16.c115
-rw-r--r--src/mame/drivers/tagteam.c4
-rw-r--r--src/mame/drivers/tail2nos.c7
-rw-r--r--src/mame/drivers/taito_b.c126
-rw-r--r--src/mame/drivers/taito_f2.c181
-rw-r--r--src/mame/drivers/taito_f3.c35
-rw-r--r--src/mame/drivers/taito_h.c21
-rw-r--r--src/mame/drivers/taito_l.c73
-rw-r--r--src/mame/drivers/taito_o.c6
-rw-r--r--src/mame/drivers/taito_x.c24
-rw-r--r--src/mame/drivers/taito_z.c70
-rw-r--r--src/mame/drivers/taitoair.c7
-rw-r--r--src/mame/drivers/taitogn.c6
-rw-r--r--src/mame/drivers/taitojc.c8
-rw-r--r--src/mame/drivers/taitopjc.c4
-rw-r--r--src/mame/drivers/taitosj.c14
-rw-r--r--src/mame/drivers/taitotz.c4
-rw-r--r--src/mame/drivers/taitowlf.c4
-rw-r--r--src/mame/drivers/tank8.c4
-rw-r--r--src/mame/drivers/tankbatt.c4
-rw-r--r--src/mame/drivers/tankbust.c4
-rw-r--r--src/mame/drivers/taotaido.c4
-rw-r--r--src/mame/drivers/targeth.c4
-rw-r--r--src/mame/drivers/tatsumi.c16
-rw-r--r--src/mame/drivers/tattack.c4
-rw-r--r--src/mame/drivers/taxidrvr.c4
-rw-r--r--src/mame/drivers/tbowl.c4
-rw-r--r--src/mame/drivers/tceptor.c4
-rw-r--r--src/mame/drivers/tcl.c4
-rw-r--r--src/mame/drivers/tecmo.c18
-rw-r--r--src/mame/drivers/tecmo16.c15
-rw-r--r--src/mame/drivers/tecmosys.c4
-rw-r--r--src/mame/drivers/tehkanwc.c4
-rw-r--r--src/mame/drivers/tempest.c4
-rw-r--r--src/mame/drivers/terracre.c12
-rw-r--r--src/mame/drivers/tetrisp2.c20
-rw-r--r--src/mame/drivers/tgtpanic.c4
-rw-r--r--src/mame/drivers/thayers.c4
-rw-r--r--src/mame/drivers/thedeep.c4
-rw-r--r--src/mame/drivers/thepit.c14
-rw-r--r--src/mame/drivers/thief.c12
-rw-r--r--src/mame/drivers/thoop2.c4
-rw-r--r--src/mame/drivers/thunderj.c7
-rw-r--r--src/mame/drivers/thunderx.c14
-rw-r--r--src/mame/drivers/tiamc1.c4
-rw-r--r--src/mame/drivers/tickee.c17
-rw-r--r--src/mame/drivers/tigeroad.c9
-rw-r--r--src/mame/drivers/timelimt.c10
-rw-r--r--src/mame/drivers/timeplt.c19
-rw-r--r--src/mame/drivers/timetrv.c4
-rw-r--r--src/mame/drivers/tmaster.c18
-rw-r--r--src/mame/drivers/tmmjprd.c9
-rw-r--r--src/mame/drivers/tmnt.c84
-rw-r--r--src/mame/drivers/tnzs.c55
-rw-r--r--src/mame/drivers/toaplan1.c48
-rw-r--r--src/mame/drivers/toaplan2.c138
-rw-r--r--src/mame/drivers/toki.c8
-rw-r--r--src/mame/drivers/tokyocop.c4
-rw-r--r--src/mame/drivers/tomcat.c4
-rw-r--r--src/mame/drivers/toobin.c7
-rw-r--r--src/mame/drivers/topspeed.c7
-rw-r--r--src/mame/drivers/toratora.c7
-rw-r--r--src/mame/drivers/tourtabl.c4
-rw-r--r--src/mame/drivers/toypop.c11
-rw-r--r--src/mame/drivers/tp84.c9
-rw-r--r--src/mame/drivers/trackfld.c39
-rw-r--r--src/mame/drivers/travrusa.c15
-rw-r--r--src/mame/drivers/triforce.c9
-rw-r--r--src/mame/drivers/triplhnt.c4
-rw-r--r--src/mame/drivers/truco.c4
-rw-r--r--src/mame/drivers/trucocl.c4
-rw-r--r--src/mame/drivers/trvmadns.c4
-rw-r--r--src/mame/drivers/trvquest.c8
-rw-r--r--src/mame/drivers/tryout.c4
-rw-r--r--src/mame/drivers/tsamurai.c12
-rw-r--r--src/mame/drivers/ttchamp.c4
-rw-r--r--src/mame/drivers/tubep.c13
-rw-r--r--src/mame/drivers/tugboat.c4
-rw-r--r--src/mame/drivers/tumbleb.c81
-rw-r--r--src/mame/drivers/tumblep.c7
-rw-r--r--src/mame/drivers/tunhunt.c6
-rw-r--r--src/mame/drivers/turbo.c21
-rw-r--r--src/mame/drivers/turrett.c4
-rw-r--r--src/mame/drivers/tutankhm.c9
-rw-r--r--src/mame/drivers/twin16.c23
-rw-r--r--src/mame/drivers/twincobr.c9
-rw-r--r--src/mame/drivers/twinkle.c4
-rw-r--r--src/mame/drivers/twins.c8
-rw-r--r--src/mame/drivers/tx1.c12
-rw-r--r--src/mame/drivers/uapce.c4
-rw-r--r--src/mame/drivers/ultraman.c7
-rw-r--r--src/mame/drivers/ultratnk.c4
-rw-r--r--src/mame/drivers/ultrsprt.c4
-rw-r--r--src/mame/drivers/undrfire.c12
-rw-r--r--src/mame/drivers/unico.c12
-rw-r--r--src/mame/drivers/upscope.c4
-rw-r--r--src/mame/drivers/usgames.c9
-rw-r--r--src/mame/drivers/vamphalf.c83
-rw-r--r--src/mame/drivers/vaportra.c7
-rw-r--r--src/mame/drivers/vastar.c6
-rw-r--r--src/mame/drivers/vball.c4
-rw-r--r--src/mame/drivers/vcombat.c8
-rw-r--r--src/mame/drivers/vega.c4
-rw-r--r--src/mame/drivers/vegaeo.c4
-rw-r--r--src/mame/drivers/vegas.c44
-rw-r--r--src/mame/drivers/vendetta.c12
-rw-r--r--src/mame/drivers/vertigo.c6
-rw-r--r--src/mame/drivers/vicdual.c149
-rw-r--r--src/mame/drivers/victory.c6
-rw-r--r--src/mame/drivers/videopin.c4
-rw-r--r--src/mame/drivers/videopkr.c24
-rw-r--r--src/mame/drivers/vigilant.c12
-rw-r--r--src/mame/drivers/vindictr.c7
-rw-r--r--src/mame/drivers/viper.c4
-rw-r--r--src/mame/drivers/vmetal.c7
-rw-r--r--src/mame/drivers/volfied.c7
-rw-r--r--src/mame/drivers/vp101.c4
-rw-r--r--src/mame/drivers/vpoker.c4
-rw-r--r--src/mame/drivers/vroulet.c4
-rw-r--r--src/mame/drivers/vsnes.c28
-rw-r--r--src/mame/drivers/vulgus.c4
-rw-r--r--src/mame/drivers/wallc.c4
-rw-r--r--src/mame/drivers/wardner.c4
-rw-r--r--src/mame/drivers/warpwarp.c18
-rw-r--r--src/mame/drivers/warriorb.c14
-rw-r--r--src/mame/drivers/wc90.c10
-rw-r--r--src/mame/drivers/wc90b.c4
-rw-r--r--src/mame/drivers/wecleman.c8
-rw-r--r--src/mame/drivers/welltris.c11
-rw-r--r--src/mame/drivers/wgp.c12
-rw-r--r--src/mame/drivers/wheelfir.c5
-rw-r--r--src/mame/drivers/williams.c85
-rw-r--r--src/mame/drivers/wink.c4
-rw-r--r--src/mame/drivers/wiping.c4
-rw-r--r--src/mame/drivers/witch.c4
-rw-r--r--src/mame/drivers/wiz.c19
-rw-r--r--src/mame/drivers/wldarrow.c4
-rw-r--r--src/mame/drivers/wolfpack.c4
-rw-r--r--src/mame/drivers/wrally.c4
-rw-r--r--src/mame/drivers/wwfsstar.c6
-rw-r--r--src/mame/drivers/wwfwfest.c9
-rw-r--r--src/mame/drivers/xain.c9
-rw-r--r--src/mame/drivers/xexex.c7
-rw-r--r--src/mame/drivers/xmen.c14
-rw-r--r--src/mame/drivers/xorworld.c4
-rw-r--r--src/mame/drivers/xtheball.c4
-rw-r--r--src/mame/drivers/xxmissio.c4
-rw-r--r--src/mame/drivers/xybots.c7
-rw-r--r--src/mame/drivers/xyonix.c6
-rw-r--r--src/mame/drivers/yiear.c7
-rw-r--r--src/mame/drivers/yunsun16.c14
-rw-r--r--src/mame/drivers/yunsung8.c7
-rw-r--r--src/mame/drivers/zac2650.c4
-rw-r--r--src/mame/drivers/zaccaria.c4
-rw-r--r--src/mame/drivers/zaxxon.c34
-rw-r--r--src/mame/drivers/zerozone.c7
-rw-r--r--src/mame/drivers/zn.c90
-rw-r--r--src/mame/drivers/zodiack.c12
-rw-r--r--src/mame/drivers/zr107.c8
-rw-r--r--src/mame/includes/20pacgal.h2
-rw-r--r--src/mame/includes/astrof.h6
-rw-r--r--src/mame/includes/bzone.h2
-rw-r--r--src/mame/includes/cidelsa.h6
-rw-r--r--src/mame/includes/cinemat.h32
-rw-r--r--src/mame/includes/crbaloon.h2
-rw-r--r--src/mame/includes/crgolf.h2
-rw-r--r--src/mame/includes/dkong.h10
-rw-r--r--src/mame/includes/exidy.h6
-rw-r--r--src/mame/includes/exidy440.h6
-rw-r--r--src/mame/includes/galaxian.h4
-rw-r--r--src/mame/includes/galaxold.h2
-rw-r--r--src/mame/includes/gameplan.h6
-rw-r--r--src/mame/includes/gottlieb.h4
-rw-r--r--src/mame/includes/iremz80.h6
-rw-r--r--src/mame/includes/jedi.h4
-rw-r--r--src/mame/includes/leland.h4
-rw-r--r--src/mame/includes/madalien.h2
-rw-r--r--src/mame/includes/mario.h4
-rw-r--r--src/mame/includes/megadriv.h22
-rw-r--r--src/mame/includes/mw8080bw.h48
-rw-r--r--src/mame/includes/mystston.h2
-rw-r--r--src/mame/includes/n8080.h6
-rw-r--r--src/mame/includes/qix.h10
-rw-r--r--src/mame/includes/redalert.h14
-rw-r--r--src/mame/includes/segag80r.h8
-rw-r--r--src/mame/includes/segamsys.h2
-rw-r--r--src/mame/includes/spacefb.h2
-rw-r--r--src/mame/includes/spiders.h2
-rw-r--r--src/mame/includes/stactics.h2
-rw-r--r--src/mame/includes/targ.h4
-rw-r--r--src/mame/includes/timeplt.h4
-rw-r--r--src/mame/includes/turbo.h6
-rw-r--r--src/mame/includes/vicdual.h12
-rw-r--r--src/mame/includes/zaxxon.h4
-rw-r--r--src/mame/machine/asic65.c4
-rw-r--r--src/mame/machine/asic65.h2
-rw-r--r--src/mame/machine/namco50.c4
-rw-r--r--src/mame/machine/namco51.c4
-rw-r--r--src/mame/machine/namco53.c4
-rw-r--r--src/mame/machine/pcshare.c4
-rw-r--r--src/mame/video/20pacgal.c4
-rw-r--r--src/mame/video/cidelsa.c12
-rw-r--r--src/mame/video/crgolf.c4
-rw-r--r--src/mame/video/exidy440.c8
-rw-r--r--src/mame/video/gameplan.c13
-rw-r--r--src/mame/video/jedi.c4
-rw-r--r--src/mame/video/leland.c10
-rw-r--r--src/mame/video/madalien.c4
-rw-r--r--src/mame/video/mystston.c4
-rw-r--r--src/mame/video/qix.c12
-rw-r--r--src/mame/video/redalert.c24
-rw-r--r--src/mame/video/stactics.c4
1150 files changed, 6702 insertions, 10371 deletions
diff --git a/src/mame/audio/astrof.c b/src/mame/audio/astrof.c
index ec8503a634f..a25660796da 100644
--- a/src/mame/audio/astrof.c
+++ b/src/mame/audio/astrof.c
@@ -149,12 +149,12 @@ static const samples_interface astrof_samples_interface =
-MACHINE_DRIVER_START( astrof_audio )
+MACHINE_CONFIG_FRAGMENT( astrof_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(astrof_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -170,9 +170,9 @@ WRITE8_HANDLER( spfghmk2_audio_w )
}
-MACHINE_DRIVER_START( spfghmk2_audio )
+MACHINE_CONFIG_FRAGMENT( spfghmk2_audio )
/* nothing yet */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -234,9 +234,9 @@ static const sn76477_interface tomahawk_sn76477_interface =
};
-MACHINE_DRIVER_START( tomahawk_audio )
+MACHINE_CONFIG_FRAGMENT( tomahawk_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("snsnd", SN76477, 0)
MDRV_SOUND_CONFIG(tomahawk_sn76477_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/atarijsa.c b/src/mame/audio/atarijsa.c
index a7d1084ae8a..9c0bf76b4f0 100644
--- a/src/mame/audio/atarijsa.c
+++ b/src/mame/audio/atarijsa.c
@@ -803,7 +803,7 @@ static const ym2151_interface ym2151_config =
*************************************/
/* Used by Blasteroids */
-MACHINE_DRIVER_START( jsa_i_stereo )
+MACHINE_CONFIG_FRAGMENT( jsa_i_stereo )
/* basic machine hardware */
MDRV_CPU_ADD("jsa", M6502, JSA_MASTER_CLOCK/2)
@@ -817,38 +817,36 @@ MACHINE_DRIVER_START( jsa_i_stereo )
MDRV_SOUND_CONFIG(ym2151_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.60)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Used by Xybots */
-MACHINE_DRIVER_START( jsa_i_stereo_swapped )
+MACHINE_CONFIG_DERIVED( jsa_i_stereo_swapped, jsa_i_stereo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jsa_i_stereo)
/* sound hardware */
MDRV_SOUND_REPLACE("ymsnd", YM2151, JSA_MASTER_CLOCK)
MDRV_SOUND_CONFIG(ym2151_config)
MDRV_SOUND_ROUTE(0, "rspeaker", 0.60)
MDRV_SOUND_ROUTE(1, "lspeaker", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Used by Toobin', Vindicators */
-MACHINE_DRIVER_START( jsa_i_stereo_pokey )
+MACHINE_CONFIG_DERIVED( jsa_i_stereo_pokey, jsa_i_stereo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jsa_i_stereo)
/* sound hardware */
MDRV_SOUND_ADD("pokey", POKEY, JSA_MASTER_CLOCK/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Used by Escape from the Planet of the Robot Monsters */
-MACHINE_DRIVER_START( jsa_i_mono_speech )
+MACHINE_CONFIG_FRAGMENT( jsa_i_mono_speech )
/* basic machine hardware */
MDRV_CPU_ADD("jsa", M6502, JSA_MASTER_CLOCK/2)
@@ -865,11 +863,11 @@ MACHINE_DRIVER_START( jsa_i_mono_speech )
MDRV_SOUND_ADD("tms", TMS5220C, JSA_MASTER_CLOCK*2/11) /* potentially JSA_MASTER_CLOCK/9 as well */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Used by Cyberball 2072, STUN Runner, Skull & Crossbones, ThunderJaws, Hydra, Pit Fighter */
-MACHINE_DRIVER_START( jsa_ii_mono )
+MACHINE_CONFIG_FRAGMENT( jsa_ii_mono )
/* basic machine hardware */
MDRV_CPU_ADD("jsa", M6502, JSA_MASTER_CLOCK/2)
@@ -886,35 +884,33 @@ MACHINE_DRIVER_START( jsa_ii_mono )
MDRV_OKIM6295_ADD("adpcm", JSA_MASTER_CLOCK/3, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Used by Batman, Guardians of the 'Hood, Road Riot 4WD, Steel Talons */
-MACHINE_DRIVER_START( jsa_iii_mono )
+MACHINE_CONFIG_DERIVED( jsa_iii_mono, jsa_ii_mono )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jsa_ii_mono)
MDRV_CPU_MODIFY("jsa")
MDRV_CPU_PROGRAM_MAP(atarijsa3_map)
MDRV_DEVICE_MODIFY("adpcm")
MDRV_DEVICE_ADDRESS_MAP(0, jsa3_oki_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Used by Off the Wall */
-MACHINE_DRIVER_START( jsa_iii_mono_noadpcm )
+MACHINE_CONFIG_DERIVED( jsa_iii_mono_noadpcm, jsa_iii_mono )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jsa_iii_mono)
/* sound hardware */
MDRV_DEVICE_REMOVE("adpcm")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Used by Space Lords, Moto Frenzy, Road Riot's Revenge Rally */
-MACHINE_DRIVER_START( jsa_iiis_stereo )
+MACHINE_CONFIG_FRAGMENT( jsa_iiis_stereo )
/* basic machine hardware */
MDRV_CPU_ADD("jsa", M6502, JSA_MASTER_CLOCK/2)
@@ -936,7 +932,7 @@ MACHINE_DRIVER_START( jsa_iiis_stereo )
MDRV_OKIM6295_ADD("adpcmr", JSA_MASTER_CLOCK/3, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.75)
MDRV_DEVICE_ADDRESS_MAP(0, jsa3_oki2_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/audio/atarijsa.h b/src/mame/audio/atarijsa.h
index 3756ab1249c..c347fd8f359 100644
--- a/src/mame/audio/atarijsa.h
+++ b/src/mame/audio/atarijsa.h
@@ -9,14 +9,14 @@ void atarijsa_init(running_machine *machine, const char *testport, int testmask)
void atarijsa_reset(void);
-MACHINE_DRIVER_EXTERN( jsa_i_stereo );
-MACHINE_DRIVER_EXTERN( jsa_i_stereo_swapped );
-MACHINE_DRIVER_EXTERN( jsa_i_stereo_pokey );
-MACHINE_DRIVER_EXTERN( jsa_i_mono_speech );
-MACHINE_DRIVER_EXTERN( jsa_ii_mono );
-MACHINE_DRIVER_EXTERN( jsa_iii_mono );
-MACHINE_DRIVER_EXTERN( jsa_iii_mono_noadpcm );
-MACHINE_DRIVER_EXTERN( jsa_iiis_stereo );
+MACHINE_CONFIG_EXTERN( jsa_i_stereo );
+MACHINE_CONFIG_EXTERN( jsa_i_stereo_swapped );
+MACHINE_CONFIG_EXTERN( jsa_i_stereo_pokey );
+MACHINE_CONFIG_EXTERN( jsa_i_mono_speech );
+MACHINE_CONFIG_EXTERN( jsa_ii_mono );
+MACHINE_CONFIG_EXTERN( jsa_iii_mono );
+MACHINE_CONFIG_EXTERN( jsa_iii_mono_noadpcm );
+MACHINE_CONFIG_EXTERN( jsa_iiis_stereo );
/* Board-specific port definitions */
diff --git a/src/mame/audio/bzone.c b/src/mame/audio/bzone.c
index 20e17ea91be..eb218e91dd5 100644
--- a/src/mame/audio/bzone.c
+++ b/src/mame/audio/bzone.c
@@ -407,7 +407,7 @@ WRITE8_DEVICE_HANDLER( bzone_sounds_w )
}
-MACHINE_DRIVER_START( bzone_audio )
+MACHINE_CONFIG_FRAGMENT( bzone_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -419,4 +419,4 @@ MACHINE_DRIVER_START( bzone_audio )
MDRV_SOUND_CONFIG_DISCRETE(bzone)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0 / BZ_FINAL_GAIN)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/cage.c b/src/mame/audio/cage.c
index acb9a0021ef..724bd44fe64 100644
--- a/src/mame/audio/cage.c
+++ b/src/mame/audio/cage.c
@@ -647,7 +647,7 @@ ADDRESS_MAP_END
*
*************************************/
-MACHINE_DRIVER_START( cage )
+MACHINE_CONFIG_FRAGMENT( cage )
/* basic machine hardware */
MDRV_CPU_ADD("cage", TMS32031, 33868800)
@@ -680,12 +680,11 @@ MACHINE_DRIVER_START( cage )
MDRV_SOUND_ADD("dac2", DMADAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
#endif
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( cage_seattle )
- MDRV_IMPORT_FROM(cage)
+MACHINE_CONFIG_DERIVED( cage_seattle, cage )
MDRV_CPU_MODIFY("cage")
MDRV_CPU_PROGRAM_MAP(cage_map_seattle)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/cage.h b/src/mame/audio/cage.h
index 0126ddaceaf..cfb2b8f10fb 100644
--- a/src/mame/audio/cage.h
+++ b/src/mame/audio/cage.h
@@ -7,8 +7,8 @@
#define CAGE_IRQ_REASON_DATA_READY (1)
#define CAGE_IRQ_REASON_BUFFER_EMPTY (2)
-MACHINE_DRIVER_EXTERN( cage );
-MACHINE_DRIVER_EXTERN( cage_seattle );
+MACHINE_CONFIG_EXTERN( cage );
+MACHINE_CONFIG_EXTERN( cage_seattle );
void cage_init(running_machine *machine, offs_t speedup);
void cage_set_irq_handler(void (*irqhandler)(running_machine *, int));
diff --git a/src/mame/audio/carnival.c b/src/mame/audio/carnival.c
index 89df81e2c9e..e27fbccf431 100644
--- a/src/mame/audio/carnival.c
+++ b/src/mame/audio/carnival.c
@@ -296,7 +296,7 @@ static ADDRESS_MAP_START( carnival_audio_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
-MACHINE_DRIVER_START( carnival_audio )
+MACHINE_CONFIG_FRAGMENT( carnival_audio )
MDRV_CPU_ADD("audiocpu", I8039, 3579545)
MDRV_CPU_PROGRAM_MAP(carnival_audio_map)
MDRV_CPU_IO_MAP(carnival_audio_io_map)
@@ -309,4 +309,4 @@ MACHINE_DRIVER_START( carnival_audio )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(carnival_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/cinemat.c b/src/mame/audio/cinemat.c
index 84e8fd7dc15..e4219cbef85 100644
--- a/src/mame/audio/cinemat.c
+++ b/src/mame/audio/cinemat.c
@@ -209,7 +209,7 @@ static MACHINE_RESET( spacewar )
generic_init(machine, spacewar_sound_w);
}
-MACHINE_DRIVER_START( spacewar_sound )
+MACHINE_CONFIG_FRAGMENT( spacewar_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(spacewar)
@@ -218,7 +218,7 @@ MACHINE_DRIVER_START( spacewar_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(spacewar_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -265,7 +265,7 @@ static MACHINE_RESET( barrier )
generic_init(machine, barrier_sound_w);
}
-MACHINE_DRIVER_START( barrier_sound )
+MACHINE_CONFIG_FRAGMENT( barrier_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(barrier)
@@ -274,7 +274,7 @@ MACHINE_DRIVER_START( barrier_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(barrier_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -326,7 +326,7 @@ static MACHINE_RESET( speedfrk )
generic_init(machine, speedfrk_sound_w);
}
-MACHINE_DRIVER_START( speedfrk_sound )
+MACHINE_CONFIG_FRAGMENT( speedfrk_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(speedfrk)
@@ -335,7 +335,7 @@ MACHINE_DRIVER_START( speedfrk_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(speedfrk_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -403,7 +403,7 @@ static MACHINE_RESET( starhawk )
generic_init(machine, starhawk_sound_w);
}
-MACHINE_DRIVER_START( starhawk_sound )
+MACHINE_CONFIG_FRAGMENT( starhawk_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(starhawk)
@@ -412,7 +412,7 @@ MACHINE_DRIVER_START( starhawk_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(starhawk_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -474,7 +474,7 @@ static MACHINE_RESET( sundance )
generic_init(machine, sundance_sound_w);
}
-MACHINE_DRIVER_START( sundance_sound )
+MACHINE_CONFIG_FRAGMENT( sundance_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(sundance)
@@ -483,7 +483,7 @@ MACHINE_DRIVER_START( sundance_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(sundance_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -564,7 +564,7 @@ static MACHINE_RESET( tailg )
generic_init(machine, tailg_sound_w);
}
-MACHINE_DRIVER_START( tailg_sound )
+MACHINE_CONFIG_FRAGMENT( tailg_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(tailg)
@@ -573,7 +573,7 @@ MACHINE_DRIVER_START( tailg_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(tailg_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -634,7 +634,7 @@ static MACHINE_RESET( warrior )
generic_init(machine, warrior_sound_w);
}
-MACHINE_DRIVER_START( warrior_sound )
+MACHINE_CONFIG_FRAGMENT( warrior_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(warrior)
@@ -643,7 +643,7 @@ MACHINE_DRIVER_START( warrior_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(warrior_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -730,7 +730,7 @@ static MACHINE_RESET( armora )
generic_init(machine, armora_sound_w);
}
-MACHINE_DRIVER_START( armora_sound )
+MACHINE_CONFIG_FRAGMENT( armora_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(armora)
@@ -739,7 +739,7 @@ MACHINE_DRIVER_START( armora_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(armora_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -823,7 +823,7 @@ static MACHINE_RESET( ripoff )
generic_init(machine, ripoff_sound_w);
}
-MACHINE_DRIVER_START( ripoff_sound )
+MACHINE_CONFIG_FRAGMENT( ripoff_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(ripoff)
@@ -832,7 +832,7 @@ MACHINE_DRIVER_START( ripoff_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(ripoff_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -937,7 +937,7 @@ static MACHINE_RESET( starcas )
generic_init(machine, starcas_sound_w);
}
-MACHINE_DRIVER_START( starcas_sound )
+MACHINE_CONFIG_FRAGMENT( starcas_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(starcas)
@@ -946,7 +946,7 @@ MACHINE_DRIVER_START( starcas_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(starcas_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1074,7 +1074,7 @@ static MACHINE_RESET( solarq )
generic_init(machine, solarq_sound_w);
}
-MACHINE_DRIVER_START( solarq_sound )
+MACHINE_CONFIG_FRAGMENT( solarq_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(solarq)
@@ -1083,7 +1083,7 @@ MACHINE_DRIVER_START( solarq_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(solarq_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1210,7 +1210,7 @@ static MACHINE_RESET( boxingb )
generic_init(machine, boxingb_sound_w);
}
-MACHINE_DRIVER_START( boxingb_sound )
+MACHINE_CONFIG_FRAGMENT( boxingb_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(boxingb)
@@ -1219,7 +1219,7 @@ MACHINE_DRIVER_START( boxingb_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(boxingb_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1324,7 +1324,7 @@ static MACHINE_RESET( wotw )
generic_init(machine, wotw_sound_w);
}
-MACHINE_DRIVER_START( wotw_sound )
+MACHINE_CONFIG_FRAGMENT( wotw_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(wotw)
@@ -1333,7 +1333,7 @@ MACHINE_DRIVER_START( wotw_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(wotw_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1438,7 +1438,7 @@ static MACHINE_RESET( wotwc )
generic_init(machine, wotwc_sound_w);
}
-MACHINE_DRIVER_START( wotwc_sound )
+MACHINE_CONFIG_FRAGMENT( wotwc_sound )
MDRV_MACHINE_START(generic)
MDRV_MACHINE_RESET(wotwc)
@@ -1447,7 +1447,7 @@ MACHINE_DRIVER_START( wotwc_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(wotwc_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1585,7 +1585,7 @@ static const z80_daisy_config daisy_chain[] =
};
-MACHINE_DRIVER_START( demon_sound )
+MACHINE_CONFIG_FRAGMENT( demon_sound )
/* basic machine hardware */
MDRV_CPU_ADD("audiocpu", Z80, 3579545)
@@ -1611,7 +1611,7 @@ MACHINE_DRIVER_START( demon_sound )
MDRV_SOUND_ADD("ay3", AY8910, 3579545)
MDRV_SOUND_CONFIG(demon_ay8910_interface_3)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1639,7 +1639,6 @@ static MACHINE_RESET( qb3_sound )
}
-MACHINE_DRIVER_START( qb3_sound )
- MDRV_IMPORT_FROM(demon_sound)
+MACHINE_CONFIG_DERIVED( qb3_sound, demon_sound )
MDRV_MACHINE_RESET(qb3_sound)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/crbaloon.c b/src/mame/audio/crbaloon.c
index 3320ce92547..deccbab5bf7 100644
--- a/src/mame/audio/crbaloon.c
+++ b/src/mame/audio/crbaloon.c
@@ -167,7 +167,7 @@ static const sn76477_interface crbaloon_sn76477_interface =
-MACHINE_DRIVER_START( crbaloon_audio )
+MACHINE_CONFIG_FRAGMENT( crbaloon_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -178,4 +178,4 @@ MACHINE_DRIVER_START( crbaloon_audio )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(crbaloon)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/dcs.c b/src/mame/audio/dcs.c
index 62d9b8f1b92..610a4518fcc 100644
--- a/src/mame/audio/dcs.c
+++ b/src/mame/audio/dcs.c
@@ -608,7 +608,7 @@ static const adsp21xx_config adsp_config =
*************************************/
/* Basic DCS system with ADSP-2105 and 2k of SRAM (T-unit, V-unit, Killer Instinct) */
-MACHINE_DRIVER_START( dcs_audio_2k )
+MACHINE_CONFIG_FRAGMENT( dcs_audio_2k )
MDRV_CPU_ADD("dcs", ADSP2105, XTAL_10MHz)
MDRV_CPU_CONFIG(adsp_config)
MDRV_CPU_PROGRAM_MAP(dcs_2k_program_map)
@@ -621,26 +621,24 @@ MACHINE_DRIVER_START( dcs_audio_2k )
MDRV_SOUND_ADD("dac", DMADAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Basic DCS system with ADSP-2105 and 2k of SRAM, using a UART for communications (X-unit) */
-MACHINE_DRIVER_START( dcs_audio_2k_uart )
- MDRV_IMPORT_FROM(dcs_audio_2k)
+MACHINE_CONFIG_DERIVED( dcs_audio_2k_uart, dcs_audio_2k )
MDRV_CPU_MODIFY("dcs")
MDRV_CPU_DATA_MAP(dcs_2k_uart_data_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Basic DCS system with ADSP-2105 and 8k of SRAM (Wolf-unit) */
-MACHINE_DRIVER_START( dcs_audio_8k )
- MDRV_IMPORT_FROM(dcs_audio_2k)
+MACHINE_CONFIG_DERIVED( dcs_audio_8k, dcs_audio_2k )
MDRV_CPU_MODIFY("dcs")
MDRV_CPU_PROGRAM_MAP(dcs_8k_program_map)
MDRV_CPU_DATA_MAP(dcs_8k_data_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -650,7 +648,7 @@ MACHINE_DRIVER_END
*
*************************************/
-MACHINE_DRIVER_START( dcs2_audio_2115 )
+MACHINE_CONFIG_FRAGMENT( dcs2_audio_2115 )
MDRV_CPU_ADD("dcs2", ADSP2115, XTAL_16MHz)
MDRV_CPU_CONFIG(adsp_config)
MDRV_CPU_PROGRAM_MAP(dcs2_2115_program_map)
@@ -668,16 +666,15 @@ MACHINE_DRIVER_START( dcs2_audio_2115 )
MDRV_SOUND_ADD("dac2", DMADAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( dcs2_audio_2104 )
- MDRV_IMPORT_FROM(dcs2_audio_2115)
+MACHINE_CONFIG_DERIVED( dcs2_audio_2104, dcs2_audio_2115 )
MDRV_CPU_REPLACE("dcs2", ADSP2104, XTAL_16MHz)
MDRV_CPU_CONFIG(adsp_config)
MDRV_CPU_PROGRAM_MAP(dcs2_2104_program_map)
MDRV_CPU_DATA_MAP(dcs2_2104_data_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -687,7 +684,7 @@ MACHINE_DRIVER_END
*
*************************************/
-MACHINE_DRIVER_START( dcs2_audio_dsio )
+MACHINE_CONFIG_FRAGMENT( dcs2_audio_dsio )
MDRV_CPU_ADD("dsio", ADSP2181, XTAL_32MHz)
MDRV_CPU_CONFIG(adsp_config)
MDRV_CPU_PROGRAM_MAP(dsio_program_map)
@@ -701,7 +698,7 @@ MACHINE_DRIVER_START( dcs2_audio_dsio )
MDRV_SOUND_ADD("dac2", DMADAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -711,7 +708,7 @@ MACHINE_DRIVER_END
*
*************************************/
-MACHINE_DRIVER_START( dcs2_audio_denver )
+MACHINE_CONFIG_FRAGMENT( dcs2_audio_denver )
MDRV_CPU_ADD("denver", ADSP2181, XTAL_33_333MHz)
MDRV_CPU_CONFIG(adsp_config)
MDRV_CPU_PROGRAM_MAP(denver_program_map)
@@ -737,7 +734,7 @@ MACHINE_DRIVER_START( dcs2_audio_denver )
MDRV_SOUND_ADD("dac6", DMADAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/dcs.h b/src/mame/audio/dcs.h
index 72558e4521d..edd08346283 100644
--- a/src/mame/audio/dcs.h
+++ b/src/mame/audio/dcs.h
@@ -4,13 +4,13 @@
****************************************************************************/
-MACHINE_DRIVER_EXTERN( dcs_audio_2k );
-MACHINE_DRIVER_EXTERN( dcs_audio_2k_uart );
-MACHINE_DRIVER_EXTERN( dcs_audio_8k );
-MACHINE_DRIVER_EXTERN( dcs2_audio_2115 );
-MACHINE_DRIVER_EXTERN( dcs2_audio_2104 );
-MACHINE_DRIVER_EXTERN( dcs2_audio_dsio );
-MACHINE_DRIVER_EXTERN( dcs2_audio_denver );
+MACHINE_CONFIG_EXTERN( dcs_audio_2k );
+MACHINE_CONFIG_EXTERN( dcs_audio_2k_uart );
+MACHINE_CONFIG_EXTERN( dcs_audio_8k );
+MACHINE_CONFIG_EXTERN( dcs2_audio_2115 );
+MACHINE_CONFIG_EXTERN( dcs2_audio_2104 );
+MACHINE_CONFIG_EXTERN( dcs2_audio_dsio );
+MACHINE_CONFIG_EXTERN( dcs2_audio_denver );
void dcs_init(running_machine *machine);
void dcs2_init(running_machine *machine, int dram_in_mb, offs_t polling_offset);
diff --git a/src/mame/audio/depthch.c b/src/mame/audio/depthch.c
index 9227c832f07..1ab9bf4f051 100644
--- a/src/mame/audio/depthch.c
+++ b/src/mame/audio/depthch.c
@@ -36,11 +36,11 @@ static const samples_interface depthch_samples_interface =
};
-MACHINE_DRIVER_START( depthch_audio )
+MACHINE_CONFIG_FRAGMENT( depthch_audio )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(depthch_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* sample IDs - must match sample file name table above */
diff --git a/src/mame/audio/dkong.c b/src/mame/audio/dkong.c
index a791a412f37..85dcddc280d 100644
--- a/src/mame/audio/dkong.c
+++ b/src/mame/audio/dkong.c
@@ -1312,7 +1312,7 @@ const tms5110_interface tms_interface = {
*
*************************************/
-MACHINE_DRIVER_START( dkong2b_audio )
+MACHINE_CONFIG_FRAGMENT( dkong2b_audio )
MDRV_SOUND_START( dkong )
@@ -1350,21 +1350,17 @@ MACHINE_DRIVER_START( dkong2b_audio )
MDRV_SOUND_CONFIG_DISCRETE(dkong2b)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( radarscp_audio )
-
- MDRV_IMPORT_FROM( dkong2b_audio )
+MACHINE_CONFIG_DERIVED( radarscp_audio, dkong2b_audio )
MDRV_SOUND_MODIFY("discrete")
MDRV_SOUND_CONFIG_DISCRETE(radarscp)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.7)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( radarscp1_audio )
- MDRV_IMPORT_FROM( radarscp_audio )
+MACHINE_CONFIG_DERIVED( radarscp1_audio, radarscp_audio )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_IO_MAP(radarscp1_sound_io_map)
@@ -1381,9 +1377,9 @@ MACHINE_DRIVER_START( radarscp1_audio )
MDRV_DEVICE_CONFIG(tms_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( dkongjr_audio )
+MACHINE_CONFIG_FRAGMENT( dkongjr_audio )
/* sound latches */
@@ -1418,9 +1414,9 @@ MACHINE_DRIVER_START( dkongjr_audio )
MDRV_SOUND_CONFIG_DISCRETE(dkongjr)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( dkong3_audio )
+MACHINE_CONFIG_FRAGMENT( dkong3_audio )
MDRV_CPU_ADD("n2a03a", N2A03,N2A03_DEFAULTCLOCK)
MDRV_CPU_PROGRAM_MAP(dkong3_sound1_map)
@@ -1444,6 +1440,6 @@ MACHINE_DRIVER_START( dkong3_audio )
MDRV_SOUND_CONFIG(nes_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/exidy.c b/src/mame/audio/exidy.c
index 98fc5773481..93ca7262e3c 100644
--- a/src/mame/audio/exidy.c
+++ b/src/mame/audio/exidy.c
@@ -833,7 +833,7 @@ static ADDRESS_MAP_START( venture_audio_map, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END
-MACHINE_DRIVER_START( venture_audio )
+MACHINE_CONFIG_FRAGMENT( venture_audio )
MDRV_CPU_ADD("audiocpu", M6502, 3579545/4)
MDRV_CPU_PROGRAM_MAP(venture_audio_map)
@@ -847,7 +847,7 @@ MACHINE_DRIVER_START( venture_audio )
MDRV_SOUND_ADD("custom", EXIDY_VENTURE, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -897,7 +897,7 @@ static ADDRESS_MAP_START( cvsd_iomap, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
-MACHINE_DRIVER_START( mtrap_cvsd_audio )
+MACHINE_CONFIG_FRAGMENT( mtrap_cvsd_audio )
MDRV_CPU_ADD("cvsdcpu", Z80, CVSD_Z80_CLOCK)
MDRV_CPU_PROGRAM_MAP(cvsd_map)
@@ -906,7 +906,7 @@ MACHINE_DRIVER_START( mtrap_cvsd_audio )
/* audio hardware */
MDRV_SOUND_ADD("cvsd", MC3417, CVSD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1060,7 +1060,7 @@ static ADDRESS_MAP_START( victory_audio_map, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END
-MACHINE_DRIVER_START( victory_audio )
+MACHINE_CONFIG_FRAGMENT( victory_audio )
MDRV_CPU_ADD("audiocpu", M6502, VICTORY_AUDIO_CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(victory_audio_map)
@@ -1075,4 +1075,4 @@ MACHINE_DRIVER_START( victory_audio )
MDRV_SOUND_ADD("tms", TMS5220, 640000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/exidy440.c b/src/mame/audio/exidy440.c
index ba57f0d5bde..9297f231592 100644
--- a/src/mame/audio/exidy440.c
+++ b/src/mame/audio/exidy440.c
@@ -939,7 +939,7 @@ DEFINE_LEGACY_SOUND_DEVICE(EXIDY440, exidy440_sound);
*
*************************************/
-MACHINE_DRIVER_START( exidy440_audio )
+MACHINE_CONFIG_FRAGMENT( exidy440_audio )
MDRV_CPU_ADD("audiocpu", M6809, EXIDY440_AUDIO_CLOCK)
MDRV_CPU_PROGRAM_MAP(exidy440_audio_map)
@@ -962,4 +962,4 @@ MACHINE_DRIVER_START( exidy440_audio )
// MDRV_SOUND_ADD("cvsd4", MC3417, EXIDY440_MC3417_CLOCK)
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/galaxian.c b/src/mame/audio/galaxian.c
index eed536b7e75..86b2995156c 100644
--- a/src/mame/audio/galaxian.c
+++ b/src/mame/audio/galaxian.c
@@ -479,7 +479,7 @@ WRITE8_DEVICE_HANDLER( galaxian_sound_w )
*
*************************************/
-MACHINE_DRIVER_START( galaxian_audio )
+MACHINE_CONFIG_FRAGMENT( galaxian_audio )
MDRV_SOUND_START(galaxian)
@@ -487,9 +487,9 @@ MACHINE_DRIVER_START( galaxian_audio )
MDRV_SOUND_CONFIG_DISCRETE(galaxian)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( mooncrst_audio )
+MACHINE_CONFIG_FRAGMENT( mooncrst_audio )
MDRV_SOUND_START(galaxian)
@@ -497,4 +497,4 @@ MACHINE_DRIVER_START( mooncrst_audio )
MDRV_SOUND_CONFIG_DISCRETE(mooncrst)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/gottlieb.c b/src/mame/audio/gottlieb.c
index d6e7b6d69bd..cba512b1158 100644
--- a/src/mame/audio/gottlieb.c
+++ b/src/mame/audio/gottlieb.c
@@ -326,7 +326,7 @@ ADDRESS_MAP_END
*
*************************************/
-MACHINE_DRIVER_START( gottlieb_soundrev1 )
+MACHINE_CONFIG_FRAGMENT( gottlieb_soundrev1 )
MDRV_SOUND_START(gottlieb1)
MDRV_RIOT6532_ADD("riot", SOUND1_CLOCK/4, gottlieb_riot6532_intf)
@@ -337,7 +337,7 @@ MACHINE_DRIVER_START( gottlieb_soundrev1 )
/* sound hardware */
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -575,7 +575,7 @@ ADDRESS_MAP_END
*
*************************************/
-MACHINE_DRIVER_START( gottlieb_soundrev2 )
+MACHINE_CONFIG_FRAGMENT( gottlieb_soundrev2 )
/* audio CPUs */
MDRV_CPU_ADD("audiocpu", M6502, SOUND2_CLOCK/4)
MDRV_CPU_PROGRAM_MAP(gottlieb_audio2_map)
@@ -600,7 +600,7 @@ MACHINE_DRIVER_START( gottlieb_soundrev2 )
MDRV_SOUND_ADD("spsnd", SP0250, SOUND2_SPEECH_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/invinco.c b/src/mame/audio/invinco.c
index 01f2c378e93..961a5cf630b 100644
--- a/src/mame/audio/invinco.c
+++ b/src/mame/audio/invinco.c
@@ -42,11 +42,11 @@ static const samples_interface invinco_samples_interface =
};
-MACHINE_DRIVER_START( invinco_audio )
+MACHINE_CONFIG_FRAGMENT( invinco_audio )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(invinco_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* sample IDs - must match sample file name table above */
diff --git a/src/mame/audio/irem.c b/src/mame/audio/irem.c
index d4e3732a29b..a53d7f532e4 100644
--- a/src/mame/audio/irem.c
+++ b/src/mame/audio/irem.c
@@ -390,7 +390,7 @@ ADDRESS_MAP_END
*
*************************************/
-static MACHINE_DRIVER_START( irem_audio_base )
+static MACHINE_CONFIG_FRAGMENT( irem_audio_base )
MDRV_SOUND_START(irem_audio)
@@ -416,9 +416,9 @@ static MACHINE_DRIVER_START( irem_audio_base )
MDRV_SOUND_ADD("msm2", MSM5205, XTAL_384kHz) /* verified on pcb */
MDRV_SOUND_CONFIG(irem_msm5205_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( m52_sound_c_audio )
+MACHINE_CONFIG_FRAGMENT( m52_sound_c_audio )
MDRV_SOUND_START(irem_audio)
@@ -446,21 +446,19 @@ MACHINE_DRIVER_START( m52_sound_c_audio )
MDRV_SOUND_CONFIG_DISCRETE(m52_sound_c)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( m52_large_audio ) /* 10 yard fight */
- MDRV_IMPORT_FROM(irem_audio_base)
+MACHINE_CONFIG_DERIVED( m52_large_audio, irem_audio_base ) /* 10 yard fight */
/* basic machine hardware */
MDRV_CPU_MODIFY("iremsound")
MDRV_CPU_PROGRAM_MAP(m52_large_sound_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( m62_audio )
- MDRV_IMPORT_FROM(irem_audio_base)
+MACHINE_CONFIG_DERIVED( m62_audio, irem_audio_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("iremsound")
MDRV_CPU_PROGRAM_MAP(m62_sound_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/jedi.c b/src/mame/audio/jedi.c
index a0a5a4003ed..d6196cbc6a3 100644
--- a/src/mame/audio/jedi.c
+++ b/src/mame/audio/jedi.c
@@ -200,7 +200,7 @@ ADDRESS_MAP_END
*
*************************************/
-MACHINE_DRIVER_START( jedi_audio )
+MACHINE_CONFIG_FRAGMENT( jedi_audio )
MDRV_CPU_ADD("audiocpu", M6502, JEDI_AUDIO_CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(audio_map)
@@ -227,4 +227,4 @@ MACHINE_DRIVER_START( jedi_audio )
MDRV_SOUND_ADD("tms", TMS5220, JEDI_TMS5220_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/mario.c b/src/mame/audio/mario.c
index bfa90c96710..b8071e42e49 100644
--- a/src/mame/audio/mario.c
+++ b/src/mame/audio/mario.c
@@ -683,7 +683,7 @@ static const ay8910_interface ay8910_config =
*
*************************************/
-MACHINE_DRIVER_START( mario_audio )
+MACHINE_CONFIG_FRAGMENT( mario_audio )
#if USE_8039
MDRV_CPU_ADD("audiocpu", I8039, I8035_CLOCK) /* 730 kHz */
@@ -701,9 +701,9 @@ MACHINE_DRIVER_START( mario_audio )
MDRV_SOUND_CONFIG_DISCRETE(mario)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( masao_audio )
+MACHINE_CONFIG_FRAGMENT( masao_audio )
MDRV_CPU_ADD("audiocpu", Z80,24576000/16) /* ???? */
MDRV_CPU_PROGRAM_MAP(masao_sound_map)
@@ -717,5 +717,5 @@ MACHINE_DRIVER_START( masao_audio )
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/mcr.c b/src/mame/audio/mcr.c
index d64350e2808..dde7699709b 100644
--- a/src/mame/audio/mcr.c
+++ b/src/mame/audio/mcr.c
@@ -462,7 +462,7 @@ ADDRESS_MAP_END
/********* machine driver ***********/
-MACHINE_DRIVER_START(mcr_ssio)
+MACHINE_CONFIG_FRAGMENT(mcr_ssio)
MDRV_CPU_ADD("ssiocpu", Z80, SSIO_CLOCK/2/4)
MDRV_CPU_PROGRAM_MAP(ssio_map)
MDRV_CPU_PERIODIC_INT(ssio_14024_clock, SSIO_CLOCK/2/16/10)
@@ -475,7 +475,7 @@ MACHINE_DRIVER_START(mcr_ssio)
MDRV_SOUND_ADD("ssio.2", AY8910, SSIO_CLOCK/2/4)
MDRV_SOUND_CONFIG(ssio_ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.33)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -593,7 +593,7 @@ static const pia6821_interface csdeluxe_pia_intf =
/********* machine driver ***********/
-MACHINE_DRIVER_START(chip_squeak_deluxe)
+MACHINE_CONFIG_FRAGMENT(chip_squeak_deluxe)
MDRV_CPU_ADD("csdcpu", M68000, CSDELUXE_CLOCK/2)
MDRV_CPU_PROGRAM_MAP(csdeluxe_map)
@@ -602,9 +602,9 @@ MACHINE_DRIVER_START(chip_squeak_deluxe)
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("csddac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START(chip_squeak_deluxe_stereo)
+MACHINE_CONFIG_FRAGMENT(chip_squeak_deluxe_stereo)
MDRV_CPU_ADD("csdcpu", M68000, CSDELUXE_CLOCK/2)
MDRV_CPU_PROGRAM_MAP(csdeluxe_map)
@@ -613,7 +613,7 @@ MACHINE_DRIVER_START(chip_squeak_deluxe_stereo)
MDRV_SOUND_ADD("csddac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -712,7 +712,7 @@ static const pia6821_interface soundsgood_pia_intf =
/********* machine driver ***********/
-MACHINE_DRIVER_START(sounds_good)
+MACHINE_CONFIG_FRAGMENT(sounds_good)
MDRV_CPU_ADD("sgcpu", M68000, SOUNDSGOOD_CLOCK/2)
MDRV_CPU_PROGRAM_MAP(soundsgood_map)
@@ -721,7 +721,7 @@ MACHINE_DRIVER_START(sounds_good)
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("sgdac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -814,7 +814,7 @@ static const pia6821_interface turbocs_pia_intf =
/********* machine driver ***********/
-MACHINE_DRIVER_START(turbo_chip_squeak)
+MACHINE_CONFIG_FRAGMENT(turbo_chip_squeak)
MDRV_CPU_ADD("tcscpu", M6809E, TURBOCS_CLOCK)
MDRV_CPU_PROGRAM_MAP(turbocs_map)
@@ -823,7 +823,7 @@ MACHINE_DRIVER_START(turbo_chip_squeak)
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("tcsdac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -975,7 +975,7 @@ static const pia6821_interface squawkntalk_pia1_intf =
/********* machine driver ***********/
-MACHINE_DRIVER_START(squawk_n_talk)
+MACHINE_CONFIG_FRAGMENT(squawk_n_talk)
MDRV_CPU_ADD("sntcpu", M6802, SQUAWKTALK_CLOCK)
MDRV_CPU_PROGRAM_MAP(squawkntalk_map)
@@ -989,4 +989,4 @@ MACHINE_DRIVER_START(squawk_n_talk)
/* the board also supports an AY-8912 and/or an 8-bit DAC, neither of */
/* which are populated on the Discs of Tron board */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/mcr.h b/src/mame/audio/mcr.h
index e765c2cc659..87f11e469d6 100644
--- a/src/mame/audio/mcr.h
+++ b/src/mame/audio/mcr.h
@@ -63,9 +63,9 @@ void squawkntalk_reset_w(running_machine *machine, int state);
/************ External definitions ***************/
-MACHINE_DRIVER_EXTERN( mcr_ssio );
-MACHINE_DRIVER_EXTERN( chip_squeak_deluxe );
-MACHINE_DRIVER_EXTERN( chip_squeak_deluxe_stereo );
-MACHINE_DRIVER_EXTERN( sounds_good );
-MACHINE_DRIVER_EXTERN( turbo_chip_squeak );
-MACHINE_DRIVER_EXTERN( squawk_n_talk );
+MACHINE_CONFIG_EXTERN( mcr_ssio );
+MACHINE_CONFIG_EXTERN( chip_squeak_deluxe );
+MACHINE_CONFIG_EXTERN( chip_squeak_deluxe_stereo );
+MACHINE_CONFIG_EXTERN( sounds_good );
+MACHINE_CONFIG_EXTERN( turbo_chip_squeak );
+MACHINE_CONFIG_EXTERN( squawk_n_talk );
diff --git a/src/mame/audio/mw8080bw.c b/src/mame/audio/mw8080bw.c
index 90d9373c05f..3e11dafaa0a 100644
--- a/src/mame/audio/mw8080bw.c
+++ b/src/mame/audio/mw8080bw.c
@@ -153,14 +153,14 @@ static const samples_interface seawolf_samples_interface =
};
-MACHINE_DRIVER_START( seawolf_audio )
+MACHINE_CONFIG_FRAGMENT( seawolf_audio )
MDRV_SOUND_START(samples)
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(seawolf_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.6)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_HANDLER( seawolf_audio_w )
@@ -214,7 +214,7 @@ static const samples_interface gunfight_samples_interface =
};
-MACHINE_DRIVER_START( gunfight_audio )
+MACHINE_CONFIG_FRAGMENT( gunfight_audio )
MDRV_SOUND_START(samples)
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
@@ -226,7 +226,7 @@ MACHINE_DRIVER_START( gunfight_audio )
MDRV_SOUND_ADD("samples2", SAMPLES, 0)
MDRV_SOUND_CONFIG(gunfight_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_HANDLER( gunfight_audio_w )
@@ -323,12 +323,12 @@ static DISCRETE_SOUND_START(tornbase)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( tornbase_audio )
+MACHINE_CONFIG_FRAGMENT( tornbase_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(tornbase)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_DEVICE_HANDLER( tornbase_audio_w )
@@ -367,9 +367,9 @@ WRITE8_DEVICE_HANDLER( tornbase_audio_w )
*
*************************************/
-MACHINE_DRIVER_START( zzzap_audio )
+MACHINE_CONFIG_FRAGMENT( zzzap_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_HANDLER( zzzap_audio_1_w )
@@ -569,12 +569,12 @@ static DISCRETE_SOUND_START(maze)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( maze_audio )
+MACHINE_CONFIG_FRAGMENT( maze_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(maze)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
void maze_write_discrete(running_device *device, UINT8 maze_tone_timing_state)
@@ -815,13 +815,13 @@ static DISCRETE_SOUND_START(boothill)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( boothill_audio )
+MACHINE_CONFIG_FRAGMENT( boothill_audio )
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(boothill)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_DEVICE_HANDLER( boothill_audio_w )
@@ -1045,12 +1045,12 @@ static DISCRETE_SOUND_START(checkmat)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( checkmat_audio )
+MACHINE_CONFIG_FRAGMENT( checkmat_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(checkmat)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.4)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_DEVICE_HANDLER( checkmat_audio_w )
@@ -1256,12 +1256,12 @@ static DISCRETE_SOUND_START(desertgu)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( desertgu_audio )
+MACHINE_CONFIG_FRAGMENT( desertgu_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(desertgu)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.8)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_DEVICE_HANDLER( desertgu_audio_1_w )
@@ -1523,12 +1523,12 @@ static DISCRETE_SOUND_START(dplay)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( dplay_audio )
+MACHINE_CONFIG_FRAGMENT( dplay_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(dplay)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.8)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_DEVICE_HANDLER( dplay_audio_w )
@@ -1572,7 +1572,7 @@ static const samples_interface gmissile_samples_interface =
};
-MACHINE_DRIVER_START( gmissile_audio )
+MACHINE_CONFIG_FRAGMENT( gmissile_audio )
MDRV_SOUND_START(samples)
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
@@ -1584,7 +1584,7 @@ MACHINE_DRIVER_START( gmissile_audio )
MDRV_SOUND_ADD("samples2", SAMPLES, 0)
MDRV_SOUND_CONFIG(gmissile_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.9)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_HANDLER( gmissile_audio_1_w )
@@ -1671,7 +1671,7 @@ static const samples_interface m4_samples_interface =
};
-MACHINE_DRIVER_START( m4_audio )
+MACHINE_CONFIG_FRAGMENT( m4_audio )
MDRV_SOUND_START(samples)
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
@@ -1683,7 +1683,7 @@ MACHINE_DRIVER_START( m4_audio )
MDRV_SOUND_ADD("samples2", SAMPLES, 0)
MDRV_SOUND_CONFIG(m4_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_HANDLER( m4_audio_1_w )
@@ -1933,7 +1933,7 @@ static const samples_interface clowns_samples_interface =
};
-MACHINE_DRIVER_START( clowns_audio )
+MACHINE_CONFIG_FRAGMENT( clowns_audio )
MDRV_SOUND_START(samples)
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -1945,7 +1945,7 @@ MACHINE_DRIVER_START( clowns_audio )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(clowns)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_HANDLER( clowns_audio_1_w )
@@ -2307,13 +2307,13 @@ DISCRETE_GAIN(NODE_RELATIVE(SPACWALK_SPRINGBOARD_HIT1_SND, _num - 1),
DISCRETE_OUTPUT(NODE_90, 11000)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( spacwalk_audio )
+MACHINE_CONFIG_FRAGMENT( spacwalk_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(spacwalk)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_DEVICE_HANDLER( spacwalk_audio_1_w )
{
@@ -2538,13 +2538,13 @@ static DISCRETE_SOUND_START(shuffle)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( shuffle_audio )
+MACHINE_CONFIG_FRAGMENT( shuffle_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(shuffle)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_DEVICE_HANDLER( shuffle_audio_1_w )
@@ -2603,12 +2603,12 @@ static DISCRETE_SOUND_START(dogpatch)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( dogpatch_audio )
+MACHINE_CONFIG_FRAGMENT( dogpatch_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(dogpatch)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_HANDLER( dogpatch_audio_w )
@@ -3136,7 +3136,7 @@ static DISCRETE_SOUND_START(spcenctr)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( spcenctr_audio )
+MACHINE_CONFIG_FRAGMENT( spcenctr_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("snsnd", SN76477, 0)
@@ -3146,7 +3146,7 @@ MACHINE_DRIVER_START( spcenctr_audio )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(spcenctr)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -3222,14 +3222,14 @@ static const samples_interface phantom2_samples_interface =
};
-MACHINE_DRIVER_START( phantom2_audio )
+MACHINE_CONFIG_FRAGMENT( phantom2_audio )
MDRV_SOUND_START(samples)
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(phantom2_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_HANDLER( phantom2_audio_1_w )
@@ -3352,13 +3352,13 @@ static DISCRETE_SOUND_START(bowler)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( bowler_audio )
+MACHINE_CONFIG_FRAGMENT( bowler_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(bowler)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_DEVICE_HANDLER( bowler_audio_1_w )
@@ -3503,7 +3503,7 @@ static const samples_interface invaders_samples_interface =
/* left in for all games that hack into invaders samples for audio */
-MACHINE_DRIVER_START( invaders_samples_audio )
+MACHINE_CONFIG_FRAGMENT( invaders_samples_audio )
MDRV_SOUND_START(samples)
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -3515,7 +3515,7 @@ MACHINE_DRIVER_START( invaders_samples_audio )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(invaders_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* nodes - inputs */
@@ -4072,7 +4072,7 @@ static DISCRETE_SOUND_START(invaders)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( invaders_audio )
+MACHINE_CONFIG_FRAGMENT( invaders_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("snsnd", SN76477, 0)
@@ -4082,7 +4082,7 @@ MACHINE_DRIVER_START( invaders_audio )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(invaders)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_DEVICE_HANDLER( invaders_audio_1_w )
@@ -4482,12 +4482,12 @@ static DISCRETE_SOUND_START(blueshrk)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( blueshrk_audio )
+MACHINE_CONFIG_FRAGMENT( blueshrk_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(blueshrk)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_DEVICE_HANDLER( blueshrk_audio_w )
@@ -4700,7 +4700,7 @@ static DISCRETE_SOUND_START(invad2ct)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( invad2ct_audio )
+MACHINE_CONFIG_FRAGMENT( invad2ct_audio )
MDRV_SPEAKER_STANDARD_STEREO("spk1", "spk2")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
@@ -4715,7 +4715,7 @@ MACHINE_DRIVER_START( invad2ct_audio )
MDRV_SOUND_ADD("sn2", SN76477, 0)
MDRV_SOUND_CONFIG(invad2ct_p2_sn76477_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "spk2", 0.3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_DEVICE_HANDLER( invad2ct_audio_1_w )
diff --git a/src/mame/audio/n8080.c b/src/mame/audio/n8080.c
index af34c8a52de..9f03e7c13ed 100644
--- a/src/mame/audio/n8080.c
+++ b/src/mame/audio/n8080.c
@@ -585,7 +585,7 @@ static ADDRESS_MAP_START( helifire_sound_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
-MACHINE_DRIVER_START( spacefev_sound )
+MACHINE_CONFIG_FRAGMENT( spacefev_sound )
/* basic machine hardware */
MDRV_CPU_ADD("audiocpu", I8035, 6000000)
@@ -603,10 +603,10 @@ MACHINE_DRIVER_START( spacefev_sound )
MDRV_SOUND_ADD("snsnd", SN76477, 0)
MDRV_SOUND_CONFIG(spacefev_sn76477_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( sheriff_sound )
+MACHINE_CONFIG_FRAGMENT( sheriff_sound )
/* basic machine hardware */
MDRV_CPU_ADD("audiocpu", I8035, 6000000)
@@ -622,10 +622,10 @@ MACHINE_DRIVER_START( sheriff_sound )
MDRV_SOUND_ADD("snsnd", SN76477, 0)
MDRV_SOUND_CONFIG(sheriff_sn76477_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( helifire_sound )
+MACHINE_CONFIG_FRAGMENT( helifire_sound )
/* basic machine hardware */
MDRV_CPU_ADD("audiocpu", I8035, 6000000)
@@ -639,4 +639,4 @@ MACHINE_DRIVER_START( helifire_sound )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/namco52.c b/src/mame/audio/namco52.c
index 56919988acb..804795646db 100644
--- a/src/mame/audio/namco52.c
+++ b/src/mame/audio/namco52.c
@@ -182,10 +182,10 @@ static ADDRESS_MAP_START( namco_52xx_map_io, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( namco_52xx )
+static MACHINE_CONFIG_FRAGMENT( namco_52xx )
MDRV_CPU_ADD("mcu", MB8843, DERIVED_CLOCK(1,1)) /* parent clock, internally divided by 6 */
MDRV_CPU_IO_MAP(namco_52xx_map_io)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( namco_52xx )
diff --git a/src/mame/audio/namco54.c b/src/mame/audio/namco54.c
index b62527a4fa9..d542d1272c0 100644
--- a/src/mame/audio/namco54.c
+++ b/src/mame/audio/namco54.c
@@ -146,10 +146,10 @@ static ADDRESS_MAP_START( namco_54xx_map_io, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( namco_54xx )
+static MACHINE_CONFIG_FRAGMENT( namco_54xx )
MDRV_CPU_ADD("mcu", MB8844, DERIVED_CLOCK(1,1)) /* parent clock, internally divided by 6 */
MDRV_CPU_IO_MAP(namco_54xx_map_io)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( namco_54xx )
diff --git a/src/mame/audio/pulsar.c b/src/mame/audio/pulsar.c
index d1379113584..4b9a498a729 100644
--- a/src/mame/audio/pulsar.c
+++ b/src/mame/audio/pulsar.c
@@ -59,11 +59,11 @@ static const samples_interface pulsar_samples_interface =
};
-MACHINE_DRIVER_START( pulsar_audio )
+MACHINE_CONFIG_FRAGMENT( pulsar_audio )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(pulsar_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* sample IDs - must match sample file name table above */
diff --git a/src/mame/audio/qix.c b/src/mame/audio/qix.c
index 0bc2a562013..bc973bd5107 100644
--- a/src/mame/audio/qix.c
+++ b/src/mame/audio/qix.c
@@ -239,7 +239,7 @@ static const pia6821_interface slithersnd_pia_0_intf =
*
*************************************/
-MACHINE_DRIVER_START( qix_audio )
+MACHINE_CONFIG_FRAGMENT( qix_audio )
MDRV_CPU_ADD("audiocpu", M6802, SOUND_CLOCK_OSC/2) /* 0.92 MHz */
MDRV_CPU_PROGRAM_MAP(audio_map)
@@ -253,10 +253,10 @@ MACHINE_DRIVER_START( qix_audio )
MDRV_SOUND_CONFIG_DISCRETE(qix)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( slither_audio )
+MACHINE_CONFIG_FRAGMENT( slither_audio )
MDRV_PIA6821_ADD("sndpia0", slithersnd_pia_0_intf)
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -266,4 +266,4 @@ MACHINE_DRIVER_START( slither_audio )
MDRV_SOUND_ADD("sn2", SN76489, SLITHER_CLOCK_OSC/4/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/redalert.c b/src/mame/audio/redalert.c
index 60a9418ab15..0a7bc922804 100644
--- a/src/mame/audio/redalert.c
+++ b/src/mame/audio/redalert.c
@@ -217,7 +217,7 @@ static SOUND_START( redalert )
*
*************************************/
-static MACHINE_DRIVER_START( redalert_audio_m37b )
+static MACHINE_CONFIG_FRAGMENT( redalert_audio_m37b )
MDRV_CPU_ADD("audiocpu", M6502, REDALERT_AUDIO_CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(redalert_audio_map)
@@ -229,7 +229,7 @@ static MACHINE_DRIVER_START( redalert_audio_m37b )
MDRV_SOUND_ROUTE(1, "mono", 0.50)
/* channel C is used a noise source and is not connected to a speaker */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
@@ -237,7 +237,7 @@ MACHINE_DRIVER_END
*
*************************************/
-static MACHINE_DRIVER_START( redalert_audio_voice )
+static MACHINE_CONFIG_FRAGMENT( redalert_audio_voice )
MDRV_CPU_ADD("voice", I8085A, REDALERT_VOICE_CPU_CLOCK)
MDRV_CPU_CONFIG(redalert_voice_i8085_config)
@@ -245,7 +245,7 @@ static MACHINE_DRIVER_START( redalert_audio_voice )
MDRV_SOUND_ADD("cvsd", HC55516, REDALERT_HC55516_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
@@ -253,16 +253,16 @@ MACHINE_DRIVER_END
*
*************************************/
-MACHINE_DRIVER_START( redalert_audio )
+MACHINE_CONFIG_FRAGMENT( redalert_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM( redalert_audio_m37b )
- MDRV_IMPORT_FROM( redalert_audio_voice )
+ MDRV_FRAGMENT_ADD( redalert_audio_m37b )
+ MDRV_FRAGMENT_ADD( redalert_audio_voice )
MDRV_SOUND_START( redalert )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
@@ -270,15 +270,15 @@ MACHINE_DRIVER_END
*
*************************************/
-MACHINE_DRIVER_START( ww3_audio )
+MACHINE_CONFIG_FRAGMENT( ww3_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM( redalert_audio_m37b )
+ MDRV_FRAGMENT_ADD( redalert_audio_m37b )
MDRV_SOUND_START( redalert_audio )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
@@ -405,7 +405,7 @@ static SOUND_START( demoneye )
*
*************************************/
-MACHINE_DRIVER_START( demoneye_audio )
+MACHINE_CONFIG_FRAGMENT( demoneye_audio )
MDRV_CPU_ADD("audiocpu", M6802, DEMONEYE_AUDIO_CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(demoneye_audio_map)
@@ -423,4 +423,4 @@ MACHINE_DRIVER_START( demoneye_audio )
MDRV_SOUND_ADD("ay2", AY8910, DEMONEYE_AY8910_CLOCK)
MDRV_SOUND_CONFIG(demoneye_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/scramble.c b/src/mame/audio/scramble.c
index b0d8b80aafc..05e8344db64 100644
--- a/src/mame/audio/scramble.c
+++ b/src/mame/audio/scramble.c
@@ -338,7 +338,7 @@ static const tms5110_interface ad2083_tms5110_interface =
-MACHINE_DRIVER_START( ad2083_audio )
+MACHINE_CONFIG_FRAGMENT( ad2083_audio )
MDRV_CPU_ADD("audiocpu", Z80, 14318000/8) /* 1.78975 MHz */
MDRV_CPU_PROGRAM_MAP(ad2083_sound_map)
@@ -361,4 +361,4 @@ MACHINE_DRIVER_START( ad2083_audio )
MDRV_SOUND_ADD("tms", TMS5110A, AD2083_TMS5110_CLOCK)
MDRV_SOUND_CONFIG(ad2083_tms5110_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/segag80r.c b/src/mame/audio/segag80r.c
index 01047395fa5..968472b424c 100644
--- a/src/mame/audio/segag80r.c
+++ b/src/mame/audio/segag80r.c
@@ -208,7 +208,7 @@ static const samples_interface astrob_samples_interface =
};
-MACHINE_DRIVER_START( astrob_sound_board )
+MACHINE_CONFIG_FRAGMENT( astrob_sound_board )
MDRV_SOUND_START(astrob)
@@ -216,7 +216,7 @@ MACHINE_DRIVER_START( astrob_sound_board )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(astrob_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -436,7 +436,7 @@ static const ppi8255_interface ppi8255_005_intf =
};
-MACHINE_DRIVER_START( 005_sound_board )
+MACHINE_CONFIG_FRAGMENT( 005_sound_board )
MDRV_PPI8255_ADD( "ppi8255", ppi8255_005_intf )
@@ -449,7 +449,7 @@ MACHINE_DRIVER_START( 005_sound_board )
MDRV_SOUND_ADD("005", 005, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -673,7 +673,7 @@ static const samples_interface spaceod_samples_interface =
};
-MACHINE_DRIVER_START( spaceod_sound_board )
+MACHINE_CONFIG_FRAGMENT( spaceod_sound_board )
/* sound hardware */
MDRV_SOUND_START(spaceod)
@@ -681,7 +681,7 @@ MACHINE_DRIVER_START( spaceod_sound_board )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(spaceod_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -840,7 +840,7 @@ static const ppi8255_interface monsterb_ppi_intf =
};
-MACHINE_DRIVER_START( monsterb_sound_board )
+MACHINE_CONFIG_FRAGMENT( monsterb_sound_board )
MDRV_PPI8255_ADD( "ppi8255", monsterb_ppi_intf )
@@ -863,7 +863,7 @@ MACHINE_DRIVER_START( monsterb_sound_board )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/segasnd.c b/src/mame/audio/segasnd.c
index 9de9f94f297..567e9f01ea6 100644
--- a/src/mame/audio/segasnd.c
+++ b/src/mame/audio/segasnd.c
@@ -275,7 +275,7 @@ static const struct sp0250_interface sp0250_interface =
*
*************************************/
-MACHINE_DRIVER_START( sega_speech_board )
+MACHINE_CONFIG_FRAGMENT( sega_speech_board )
/* CPU for the speech board */
MDRV_CPU_ADD("audiocpu", I8035, SPEECH_MASTER_CLOCK) /* divide by 15 in CPU */
@@ -286,7 +286,7 @@ MACHINE_DRIVER_START( sega_speech_board )
MDRV_SOUND_ADD("speech", SP0250, SPEECH_MASTER_CLOCK)
MDRV_SOUND_CONFIG(sp0250_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -915,7 +915,7 @@ ADDRESS_MAP_END
*
*************************************/
-MACHINE_DRIVER_START( sega_universal_sound_board )
+MACHINE_CONFIG_FRAGMENT( sega_universal_sound_board )
/* CPU for the usb board */
MDRV_CPU_ADD("usbcpu", I8035, USB_MASTER_CLOCK) /* divide by 15 in CPU */
@@ -927,13 +927,12 @@ MACHINE_DRIVER_START( sega_universal_sound_board )
/* sound hardware */
MDRV_SOUND_ADD("usbsnd", USB, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( sega_universal_sound_board_rom )
- MDRV_IMPORT_FROM( sega_universal_sound_board )
+MACHINE_CONFIG_DERIVED( sega_universal_sound_board_rom, sega_universal_sound_board )
/* CPU for the usb board */
MDRV_CPU_MODIFY("usbcpu")
MDRV_CPU_PROGRAM_MAP(usb_map_rom)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/segasnd.h b/src/mame/audio/segasnd.h
index dc4d5d9f8be..cd17b92bc4b 100644
--- a/src/mame/audio/segasnd.h
+++ b/src/mame/audio/segasnd.h
@@ -4,15 +4,15 @@
*************************************************************************/
-MACHINE_DRIVER_EXTERN( sega_speech_board );
+MACHINE_CONFIG_EXTERN( sega_speech_board );
WRITE8_HANDLER( sega_speech_data_w );
WRITE8_HANDLER( sega_speech_control_w );
-MACHINE_DRIVER_EXTERN( sega_universal_sound_board );
-MACHINE_DRIVER_EXTERN( sega_universal_sound_board_rom );
+MACHINE_CONFIG_EXTERN( sega_universal_sound_board );
+MACHINE_CONFIG_EXTERN( sega_universal_sound_board_rom );
void sega_usb_reset(running_machine *machine, UINT8 t1_clock_mask);
diff --git a/src/mame/audio/spacefb.c b/src/mame/audio/spacefb.c
index 0a12b7b8c52..d0231b445bf 100644
--- a/src/mame/audio/spacefb.c
+++ b/src/mame/audio/spacefb.c
@@ -86,7 +86,7 @@ static const samples_interface spacefb_samples_interface =
};
-MACHINE_DRIVER_START( spacefb_audio )
+MACHINE_CONFIG_FRAGMENT( spacefb_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("dac", DAC, 0)
@@ -95,4 +95,4 @@ MACHINE_DRIVER_START( spacefb_audio )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(spacefb_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/spiders.c b/src/mame/audio/spiders.c
index e71839447b5..ef8fcb5c9a9 100644
--- a/src/mame/audio/spiders.c
+++ b/src/mame/audio/spiders.c
@@ -200,10 +200,10 @@ WRITE8_DEVICE_HANDLER( spiders_audio_ctrl_w )
}
-MACHINE_DRIVER_START( spiders_audio )
+MACHINE_CONFIG_FRAGMENT( spiders_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(spiders)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/taito_en.c b/src/mame/audio/taito_en.c
index e2890421f4c..b9957a95686 100644
--- a/src/mame/audio/taito_en.c
+++ b/src/mame/audio/taito_en.c
@@ -271,7 +271,7 @@ static const es5505_interface es5505_taito_f3_config =
NULL /* irq */
};
-MACHINE_DRIVER_START( taito_f3_sound )
+MACHINE_CONFIG_FRAGMENT( taito_f3_sound )
MDRV_TIMER_ADD("timer_68681", taito_en_timer_callback)
MDRV_SOUND_RESET( taito_f3_soundsystem_reset )
@@ -284,4 +284,4 @@ MACHINE_DRIVER_START( taito_f3_sound )
MDRV_SOUND_CONFIG(es5505_taito_f3_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/taito_en.h b/src/mame/audio/taito_en.h
index c649ceaedaa..0c6088744e6 100644
--- a/src/mame/audio/taito_en.h
+++ b/src/mame/audio/taito_en.h
@@ -3,4 +3,4 @@
SOUND_RESET( taito_f3_soundsystem_reset );
-MACHINE_DRIVER_EXTERN( taito_f3_sound );
+MACHINE_CONFIG_EXTERN( taito_f3_sound );
diff --git a/src/mame/audio/taito_zm.c b/src/mame/audio/taito_zm.c
index aeab834b43c..28c7f6a58b4 100644
--- a/src/mame/audio/taito_zm.c
+++ b/src/mame/audio/taito_zm.c
@@ -50,7 +50,7 @@ static const zsg2_interface zsg2_taito_config =
"zsg2" /* sample region */
};
-MACHINE_DRIVER_START( taito_zoom_sound )
+MACHINE_CONFIG_FRAGMENT( taito_zoom_sound )
MDRV_CPU_ADD("mn10200", MN10200, 25000000/2)
MDRV_CPU_PROGRAM_MAP(taitozoom_map)
MDRV_CPU_IO_MAP(taitozoom_io_map)
@@ -61,4 +61,4 @@ MACHINE_DRIVER_START( taito_zoom_sound )
MDRV_SOUND_CONFIG(zsg2_taito_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/taito_zm.h b/src/mame/audio/taito_zm.h
index 522398cb511..f9c34c60712 100644
--- a/src/mame/audio/taito_zm.h
+++ b/src/mame/audio/taito_zm.h
@@ -1 +1 @@
-MACHINE_DRIVER_EXTERN( taito_zoom_sound );
+MACHINE_CONFIG_EXTERN( taito_zoom_sound );
diff --git a/src/mame/audio/targ.c b/src/mame/audio/targ.c
index fecd46b1179..01236dfd187 100644
--- a/src/mame/audio/targ.c
+++ b/src/mame/audio/targ.c
@@ -197,7 +197,7 @@ static const samples_interface targ_samples_interface =
};
-MACHINE_DRIVER_START( spectar_audio )
+MACHINE_CONFIG_FRAGMENT( spectar_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -207,10 +207,10 @@ MACHINE_DRIVER_START( spectar_audio )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( targ_audio )
+MACHINE_CONFIG_FRAGMENT( targ_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -220,4 +220,4 @@ MACHINE_DRIVER_START( targ_audio )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/timeplt.c b/src/mame/audio/timeplt.c
index 4fdfcb80d58..91a21fd5e66 100644
--- a/src/mame/audio/timeplt.c
+++ b/src/mame/audio/timeplt.c
@@ -187,7 +187,7 @@ static const ay8910_interface timeplt_ay8910_interface =
*
*************************************/
-MACHINE_DRIVER_START( timeplt_sound )
+MACHINE_CONFIG_FRAGMENT( timeplt_sound )
/* basic machine hardware */
MDRV_CPU_ADD("tpsound",Z80,MASTER_CLOCK/8)
@@ -222,13 +222,12 @@ MACHINE_DRIVER_START( timeplt_sound )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_SOUND_ADD("filter.1.2", FILTER_RC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( locomotn_sound )
- MDRV_IMPORT_FROM(timeplt_sound)
+MACHINE_CONFIG_DERIVED( locomotn_sound, timeplt_sound )
/* basic machine hardware */
MDRV_CPU_MODIFY("tpsound")
MDRV_CPU_PROGRAM_MAP(locomotn_sound_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/turbo.c b/src/mame/audio/turbo.c
index 5df10c8b259..61ed9df4af7 100644
--- a/src/mame/audio/turbo.c
+++ b/src/mame/audio/turbo.c
@@ -193,7 +193,7 @@ static const samples_interface turbo_samples_interface =
};
-MACHINE_DRIVER_START( turbo_samples )
+MACHINE_CONFIG_FRAGMENT( turbo_samples )
/* this is the cockpit speaker configuration */
MDRV_SPEAKER_ADD("fspeaker", 0.0, 0.0, 1.0) /* front */
@@ -238,7 +238,7 @@ MACHINE_DRIVER_START( turbo_samples )
/* channel 9 = OSEL -> OCAR.W/WM */
MDRV_SOUND_ROUTE(9, "bspeaker", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
Cockpit: CN2 1+2 -> FRONT
@@ -451,7 +451,7 @@ static const samples_interface subroc3d_samples_interface =
};
-MACHINE_DRIVER_START( subroc3d_samples )
+MACHINE_CONFIG_FRAGMENT( subroc3d_samples )
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MDRV_SOUND_ADD("samples", SAMPLES, 0)
@@ -488,7 +488,7 @@ MACHINE_DRIVER_START( subroc3d_samples )
/* PROLOGUE sound in channel 11 */
MDRV_SOUND_ROUTE(11, "lspeaker", 0.25)
MDRV_SOUND_ROUTE(11, "rspeaker", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -606,12 +606,12 @@ static const samples_interface buckrog_samples_interface =
};
-MACHINE_DRIVER_START( buckrog_samples )
+MACHINE_CONFIG_FRAGMENT( buckrog_samples )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(buckrog_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/vicdual.c b/src/mame/audio/vicdual.c
index 227e3aadca6..20934a59a16 100644
--- a/src/mame/audio/vicdual.c
+++ b/src/mame/audio/vicdual.c
@@ -119,7 +119,7 @@ static const samples_interface frogs_samples_interface =
};
-MACHINE_DRIVER_START( frogs_audio )
+MACHINE_CONFIG_FRAGMENT( frogs_audio )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(frogs_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
@@ -127,7 +127,7 @@ MACHINE_DRIVER_START( frogs_audio )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(frogs)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static TIMER_CALLBACK( frogs_croak_callback )
@@ -453,12 +453,12 @@ static DISCRETE_SOUND_START(headon)
DISCRETE_SOUND_END
-MACHINE_DRIVER_START( headon_audio )
+MACHINE_CONFIG_FRAGMENT( headon_audio )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(headon)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
WRITE8_HANDLER( headon_audio_w )
{
diff --git a/src/mame/audio/williams.c b/src/mame/audio/williams.c
index 34a1c3aa4a4..61383ef4a3a 100644
--- a/src/mame/audio/williams.c
+++ b/src/mame/audio/williams.c
@@ -193,7 +193,7 @@ static const ym2151_interface adpcm_ym2151_interface =
MACHINE DRIVERS
****************************************************************************/
-MACHINE_DRIVER_START( williams_cvsd_sound )
+MACHINE_CONFIG_FRAGMENT( williams_cvsd_sound )
MDRV_CPU_ADD("cvsdcpu", M6809E, CVSD_MASTER_CLOCK)
MDRV_CPU_PROGRAM_MAP(williams_cvsd_map)
@@ -210,10 +210,10 @@ MACHINE_DRIVER_START( williams_cvsd_sound )
MDRV_SOUND_ADD("cvsd", HC55516, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( williams_narc_sound )
+MACHINE_CONFIG_FRAGMENT( williams_narc_sound )
MDRV_CPU_ADD("narc1cpu", M6809E, NARC_MASTER_CLOCK)
MDRV_CPU_PROGRAM_MAP(williams_narc_master_map)
@@ -238,10 +238,10 @@ MACHINE_DRIVER_START( williams_narc_sound )
MDRV_SOUND_ADD("cvsd", HC55516, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.60)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( williams_adpcm_sound )
+MACHINE_CONFIG_FRAGMENT( williams_adpcm_sound )
MDRV_CPU_ADD("adpcm", M6809E, ADPCM_MASTER_CLOCK)
MDRV_CPU_PROGRAM_MAP(williams_adpcm_map)
@@ -256,7 +256,7 @@ MACHINE_DRIVER_START( williams_adpcm_sound )
MDRV_OKIM6295_ADD("oki", ADPCM_MASTER_CLOCK/8, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/audio/williams.h b/src/mame/audio/williams.h
index 67b3ca1fcc2..dc66bbf1584 100644
--- a/src/mame/audio/williams.h
+++ b/src/mame/audio/williams.h
@@ -4,9 +4,9 @@
****************************************************************************/
-MACHINE_DRIVER_EXTERN( williams_cvsd_sound );
-MACHINE_DRIVER_EXTERN( williams_adpcm_sound );
-MACHINE_DRIVER_EXTERN( williams_narc_sound );
+MACHINE_CONFIG_EXTERN( williams_cvsd_sound );
+MACHINE_CONFIG_EXTERN( williams_adpcm_sound );
+MACHINE_CONFIG_EXTERN( williams_narc_sound );
void williams_cvsd_init(running_machine *machine);
void williams_cvsd_data_w(running_machine *machine, int data);
diff --git a/src/mame/audio/zaxxon.c b/src/mame/audio/zaxxon.c
index 05eec27cbf6..4f5d98c4e39 100644
--- a/src/mame/audio/zaxxon.c
+++ b/src/mame/audio/zaxxon.c
@@ -97,11 +97,11 @@ static const samples_interface zaxxon_samples_interface =
};
-MACHINE_DRIVER_START( zaxxon_samples )
+MACHINE_CONFIG_FRAGMENT( zaxxon_samples )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(zaxxon_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -209,11 +209,11 @@ static const samples_interface congo_samples_interface =
};
-MACHINE_DRIVER_START( congo_samples )
+MACHINE_CONFIG_FRAGMENT( congo_samples )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(congo_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/1942.c b/src/mame/drivers/1942.c
index 6044e73c9b4..b8ebff15512 100644
--- a/src/mame/drivers/1942.c
+++ b/src/mame/drivers/1942.c
@@ -253,9 +253,7 @@ static MACHINE_RESET( 1942 )
state->scroll[1] = 0;
}
-static MACHINE_DRIVER_START( 1942 )
-
- MDRV_DRIVER_DATA(_1942_state)
+static MACHINE_CONFIG_START( 1942, _1942_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CPU_CLOCK) /* 4 MHz ??? */
@@ -291,7 +289,7 @@ static MACHINE_DRIVER_START( 1942 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MDRV_SOUND_ADD("ay2", AY8910, AUDIO_CLOCK) /* 1.5 MHz */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/1943.c b/src/mame/drivers/1943.c
index f92e00d1b47..c1cc233a784 100644
--- a/src/mame/drivers/1943.c
+++ b/src/mame/drivers/1943.c
@@ -257,9 +257,7 @@ static MACHINE_RESET( 1943 )
state->bg2_on = 0;
}
-static MACHINE_DRIVER_START( 1943 )
-
- MDRV_DRIVER_DATA(_1943_state)
+static MACHINE_CONFIG_START( 1943, _1943_state )
// basic machine hardware
MDRV_CPU_ADD("maincpu", Z80, XTAL_24MHz/4) /* verified on pcb */
@@ -300,7 +298,7 @@ static MACHINE_DRIVER_START( 1943 )
MDRV_SOUND_ROUTE(1, "mono", 0.15)
MDRV_SOUND_ROUTE(2, "mono", 0.15)
MDRV_SOUND_ROUTE(3, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/1945kiii.c b/src/mame/drivers/1945kiii.c
index 150ab3fe6d6..09924e03bbc 100644
--- a/src/mame/drivers/1945kiii.c
+++ b/src/mame/drivers/1945kiii.c
@@ -251,10 +251,7 @@ static MACHINE_START( 1945kiii )
{
}
-static MACHINE_DRIVER_START( k3 )
-
- /* driver data */
- MDRV_DRIVER_DATA(k3_state)
+static MACHINE_CONFIG_START( k3, k3_state )
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK)
MDRV_CPU_PROGRAM_MAP(k3_map)
@@ -282,7 +279,7 @@ static MACHINE_DRIVER_START( k3 )
MDRV_OKIM6295_ADD("oki2", MASTER_CLOCK/16, OKIM6295_PIN7_HIGH) /* dividers? */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/20pacgal.c b/src/mame/drivers/20pacgal.c
index 2a7c6a259fc..0c1b279e382 100644
--- a/src/mame/drivers/20pacgal.c
+++ b/src/mame/drivers/20pacgal.c
@@ -330,9 +330,7 @@ static MACHINE_RESET( 20pacgal )
state->game_selected = 0;
}
-static MACHINE_DRIVER_START( 20pacgal )
-
- MDRV_DRIVER_DATA(_20pacgal_state)
+static MACHINE_CONFIG_START( 20pacgal, _20pacgal_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, MAIN_CPU_CLOCK)
@@ -346,7 +344,7 @@ static MACHINE_DRIVER_START( 20pacgal )
MDRV_EEPROM_ADD("eeprom", _20pacgal_eeprom_intf)
/* video hardware */
- MDRV_IMPORT_FROM(20pacgal_video)
+ MDRV_FRAGMENT_ADD(20pacgal_video)
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -357,7 +355,7 @@ static MACHINE_DRIVER_START( 20pacgal )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/2mindril.c b/src/mame/drivers/2mindril.c
index ea2cab5a03b..eb5c47253ca 100644
--- a/src/mame/drivers/2mindril.c
+++ b/src/mame/drivers/2mindril.c
@@ -444,8 +444,7 @@ static MACHINE_RESET( drill )
state->shutter_sensor = 0;
}
-static MACHINE_DRIVER_START( drill )
- MDRV_DRIVER_DATA(_2mindril_state)
+static MACHINE_CONFIG_START( drill, _2mindril_state )
MDRV_CPU_ADD("maincpu", M68000, 16000000 )
MDRV_CPU_PROGRAM_MAP(drill_map)
@@ -474,7 +473,7 @@ static MACHINE_DRIVER_START( drill )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( 2mindril )
diff --git a/src/mame/drivers/39in1.c b/src/mame/drivers/39in1.c
index 9c79fe10416..b2a399e14f9 100644
--- a/src/mame/drivers/39in1.c
+++ b/src/mame/drivers/39in1.c
@@ -1584,9 +1584,7 @@ static MACHINE_START(39in1)
pxa255_start(machine);
}
-static MACHINE_DRIVER_START( 39in1 )
-
- MDRV_DRIVER_DATA( _39in1_state )
+static MACHINE_CONFIG_START( 39in1, _39in1_state )
MDRV_CPU_ADD("maincpu", PXA255, 200000000)
MDRV_CPU_PROGRAM_MAP(39in1_map)
@@ -1613,7 +1611,7 @@ static MACHINE_DRIVER_START( 39in1 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ADD("dac2", DMADAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( 39in1 )
// main program, encrypted
diff --git a/src/mame/drivers/3super8.c b/src/mame/drivers/3super8.c
index 65bc2d76422..5c961c4623f 100644
--- a/src/mame/drivers/3super8.c
+++ b/src/mame/drivers/3super8.c
@@ -64,7 +64,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( 3super8 )
+static MACHINE_CONFIG_START( 3super8, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,24000000/4) /* 6 MHz */
MDRV_CPU_PROGRAM_MAP(map)
@@ -89,7 +89,7 @@ static MACHINE_DRIVER_START( 3super8 )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/40love.c b/src/mame/drivers/40love.c
index 47e0ca58e7a..67af4111454 100644
--- a/src/mame/drivers/40love.c
+++ b/src/mame/drivers/40love.c
@@ -1119,10 +1119,7 @@ static MACHINE_RESET( undoukai )
}
}
-static MACHINE_DRIVER_START( 40love )
-
- /* driver data */
- MDRV_DRIVER_DATA(buggychl_state)
+static MACHINE_CONFIG_START( 40love, buggychl_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,8000000/2) /* OK */
@@ -1177,12 +1174,9 @@ static MACHINE_DRIVER_START( 40love )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( undoukai )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(buggychl_state)
+static MACHINE_CONFIG_START( undoukai, buggychl_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,8000000/2)
@@ -1236,7 +1230,7 @@ static MACHINE_DRIVER_START( undoukai )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************************************/
diff --git a/src/mame/drivers/4enraya.c b/src/mame/drivers/4enraya.c
index 160b4d46e27..bb10d16b011 100644
--- a/src/mame/drivers/4enraya.c
+++ b/src/mame/drivers/4enraya.c
@@ -163,9 +163,7 @@ static MACHINE_RESET( 4enraya )
state->last_snd_ctrl = 0;
}
-static MACHINE_DRIVER_START( 4enraya )
-
- MDRV_DRIVER_DATA(_4enraya_state)
+static MACHINE_CONFIG_START( 4enraya, _4enraya_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,8000000/2)
@@ -193,7 +191,7 @@ static MACHINE_DRIVER_START( 4enraya )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, 8000000/4 /* guess */)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/4roses.c b/src/mame/drivers/4roses.c
index c12b8538e2d..a9ea9ae5728 100644
--- a/src/mame/drivers/4roses.c
+++ b/src/mame/drivers/4roses.c
@@ -379,7 +379,7 @@ static const mc6845_interface mc6845_intf =
* Machine Drivers *
**************************/
-static MACHINE_DRIVER_START( 4roses )
+static MACHINE_CONFIG_START( 4roses, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz, guess */
MDRV_CPU_PROGRAM_MAP(4roses_map)
@@ -411,7 +411,7 @@ static MACHINE_DRIVER_START( 4roses )
MDRV_SOUND_ADD("ay8910", AY8910, MASTER_CLOCK/8) /* 2MHz, guess */
MDRV_SOUND_CONFIG(ay8910_intf)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/5clown.c b/src/mame/drivers/5clown.c
index 052fa9897a0..d2494d638bb 100644
--- a/src/mame/drivers/5clown.c
+++ b/src/mame/drivers/5clown.c
@@ -1027,7 +1027,7 @@ static const ay8910_interface ay8910_config =
* Machine Drivers *
*************************/
-static MACHINE_DRIVER_START( fclown )
+static MACHINE_CONFIG_START( fclown, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/8) /* guess, seems ok */
@@ -1069,7 +1069,7 @@ static MACHINE_DRIVER_START( fclown )
MDRV_OKIM6295_ADD("oki6295", MASTER_CLOCK/12, OKIM6295_PIN7_LOW) /* guess, seems ok; pin7 guessed, seems ok */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/8080bw.c b/src/mame/drivers/8080bw.c
index ff5f7680fb7..3dd027fb51f 100644
--- a/src/mame/drivers/8080bw.c
+++ b/src/mame/drivers/8080bw.c
@@ -379,10 +379,9 @@ INPUT_PORTS_END
/* same as regular invaders, but with a color board added */
-static MACHINE_DRIVER_START( invadpt2 )
+static MACHINE_CONFIG_DERIVED( invadpt2, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(invadpt2_io_map)
MDRV_MACHINE_START(extra_8080bw)
@@ -398,9 +397,9 @@ static MACHINE_DRIVER_START( invadpt2 )
MDRV_VIDEO_UPDATE(invadpt2)
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
/* */
@@ -438,10 +437,9 @@ static INPUT_PORTS_START( spcewars )
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( spcewars )
+static MACHINE_CONFIG_DERIVED( spcewars, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(spcewars_io_map)
MDRV_MACHINE_START(extra_8080bw)
@@ -450,13 +448,13 @@ static MACHINE_DRIVER_START( spcewars )
MDRV_MB14241_ADD("mb14241")
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
/* extra audio channel */
MDRV_SOUND_ADD("speaker", SPEAKER, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
/* */
@@ -513,14 +511,13 @@ static INPUT_PORTS_START( astropal )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( astropal )
+static MACHINE_CONFIG_DERIVED( astropal, invaders )
/* basic machine hardware */
- MDRV_IMPORT_FROM(invaders)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(astropal_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
/* */
@@ -563,10 +560,9 @@ static INPUT_PORTS_START( cosmo )
PORT_DIPUNKNOWN_DIPLOC( 0x80, 0x80, "SW1:8" ) /* must be HIGH normally or the joystick won't work */
INPUT_PORTS_END
-static MACHINE_DRIVER_START( cosmo )
+static MACHINE_CONFIG_DERIVED( cosmo, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(cosmo_map)
MDRV_CPU_IO_MAP(cosmo_io_map)
@@ -576,9 +572,9 @@ static MACHINE_DRIVER_START( cosmo )
MDRV_VIDEO_UPDATE(cosmo)
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
/* */
@@ -686,10 +682,9 @@ static INPUT_PORTS_START( invrvnge )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( invrvnge )
+static MACHINE_CONFIG_DERIVED( invrvnge, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(invrvnge_io_map)
@@ -697,9 +692,9 @@ static MACHINE_DRIVER_START( invrvnge )
MDRV_MB14241_ADD("mb14241")
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
@@ -792,10 +787,9 @@ static INPUT_PORTS_START( lrescue )
PORT_DIPUNUSED_DIPLOC( 0x80, 0x00, "SW1:8" )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( lrescue )
+static MACHINE_CONFIG_DERIVED( lrescue, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(lrescue_io_map)
MDRV_MACHINE_START(extra_8080bw)
@@ -817,7 +811,7 @@ static MACHINE_DRIVER_START( lrescue )
MDRV_SOUND_ADD("speaker", SPEAKER, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
@@ -940,10 +934,9 @@ static INPUT_PORTS_START( rollingc )
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( rollingc )
+static MACHINE_CONFIG_DERIVED( rollingc, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(rollingc_map)
MDRV_CPU_IO_MAP(rollingc_io_map)
@@ -955,9 +948,9 @@ static MACHINE_DRIVER_START( rollingc )
MDRV_VIDEO_UPDATE(rollingc)
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1055,10 +1048,9 @@ static MACHINE_RESET( schaser )
MACHINE_RESET_CALL(mw8080bw);
}
-static MACHINE_DRIVER_START( schaser )
+static MACHINE_CONFIG_DERIVED( schaser, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_REPLACE("maincpu",I8080,1996800) /* 19.968MHz / 10 */
MDRV_CPU_PROGRAM_MAP(schaser_map)
MDRV_CPU_IO_MAP(schaser_io_map)
@@ -1083,7 +1075,7 @@ static MACHINE_DRIVER_START( schaser )
MDRV_SOUND_CONFIG_DISCRETE(schaser)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
@@ -1126,10 +1118,9 @@ static INPUT_PORTS_START( schasercv )
PORT_DIPUNKNOWN_DIPLOC( 0x80, 0x00, "SW1:8" )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( schasercv )
+static MACHINE_CONFIG_DERIVED( schasercv, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(schaser_map)
MDRV_CPU_IO_MAP(schasercv_io_map)
@@ -1142,12 +1133,12 @@ static MACHINE_DRIVER_START( schasercv )
MDRV_VIDEO_UPDATE(schasercv)
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
MDRV_SOUND_ADD("speaker", SPEAKER, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
@@ -1218,10 +1209,9 @@ static INPUT_PORTS_START( sflush )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( sflush )
+static MACHINE_CONFIG_DERIVED( sflush, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_REPLACE("maincpu",M6800,2000000) /* ?? */
MDRV_CPU_PROGRAM_MAP(sflush_map)
MDRV_CPU_VBLANK_INT_HACK(irq0_line_pulse,2)
@@ -1233,7 +1223,7 @@ static MACHINE_DRIVER_START( sflush )
/* video hardware */
MDRV_VIDEO_UPDATE(sflush)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
@@ -1326,10 +1316,9 @@ static INPUT_PORTS_START( lupin3a )
PORT_DIPSETTING( 0x80, DEF_STR( On ) )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( lupin3 )
+static MACHINE_CONFIG_DERIVED( lupin3, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(lupin3_io_map)
MDRV_MACHINE_START(extra_8080bw)
@@ -1341,14 +1330,13 @@ static MACHINE_DRIVER_START( lupin3 )
MDRV_VIDEO_UPDATE(indianbt)
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lupin3a )
+static MACHINE_CONFIG_DERIVED( lupin3a, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(schaser_map)
MDRV_CPU_IO_MAP(lupin3_io_map)
@@ -1361,9 +1349,9 @@ static MACHINE_DRIVER_START( lupin3a )
MDRV_VIDEO_UPDATE(lupin3)
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
@@ -1464,10 +1452,9 @@ static INPUT_PORTS_START( polaris )
PORT_ADJUSTER( 90, "Sub Volume VR3" )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( polaris )
+static MACHINE_CONFIG_DERIVED( polaris, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_REPLACE("maincpu",I8080,1996800) /* 19.968MHz / 10 */
MDRV_CPU_PROGRAM_MAP(schaser_map)
MDRV_CPU_IO_MAP(polaris_io_map)
@@ -1488,7 +1475,7 @@ static MACHINE_DRIVER_START( polaris )
MDRV_SOUND_CONFIG_DISCRETE(polaris)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
@@ -1593,10 +1580,9 @@ static INPUT_PORTS_START( ballbomb )
PORT_DIPUNKNOWN_DIPLOC( 0x80, 0x00, "SW1:8" )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( ballbomb )
+static MACHINE_CONFIG_DERIVED( ballbomb, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(ballbomb_io_map)
MDRV_MACHINE_START(extra_8080bw)
@@ -1608,9 +1594,9 @@ static MACHINE_DRIVER_START( ballbomb )
MDRV_VIDEO_UPDATE(ballbomb)
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
@@ -1670,19 +1656,18 @@ static INPUT_PORTS_START( yosakdon )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( yosakdon )
+static MACHINE_CONFIG_DERIVED( yosakdon, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(yosakdon_map)
MDRV_CPU_IO_MAP(yosakdon_io_map)
MDRV_MACHINE_START(extra_8080bw)
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
@@ -1768,10 +1753,9 @@ static ADDRESS_MAP_START( indianbt_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( indianbt )
+static MACHINE_CONFIG_DERIVED( indianbt, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(indianbt_io_map)
MDRV_MACHINE_START(extra_8080bw)
@@ -1783,13 +1767,13 @@ static MACHINE_DRIVER_START( indianbt )
MDRV_VIDEO_UPDATE(indianbt)
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(indianbt)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************/
/* */
@@ -1842,10 +1826,9 @@ static INPUT_PORTS_START( steelwkr )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( steelwkr )
+static MACHINE_CONFIG_DERIVED( steelwkr, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(steelwkr_io_map)
MDRV_MACHINE_START(extra_8080bw)
@@ -1857,9 +1840,9 @@ static MACHINE_DRIVER_START( steelwkr )
MDRV_VIDEO_UPDATE(invadpt2)
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*****************************************************
@@ -1978,10 +1961,9 @@ static ADDRESS_MAP_START( shuttlei_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( shuttlei )
+static MACHINE_CONFIG_DERIVED( shuttlei, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(shuttlei_map)
MDRV_CPU_IO_MAP(shuttlei_io_map)
@@ -1993,9 +1975,9 @@ static MACHINE_DRIVER_START( shuttlei )
MDRV_VIDEO_UPDATE(shuttlei)
/* sound hardware */
- MDRV_IMPORT_FROM(invaders_samples_audio)
+ MDRV_FRAGMENT_ADD(invaders_samples_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2088,10 +2070,9 @@ static INPUT_PORTS_START( darthvdr )
INVADERS_CAB_TYPE_PORT
INPUT_PORTS_END
-static MACHINE_DRIVER_START( darthvdr )
+static MACHINE_CONFIG_DERIVED( darthvdr, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(darthvdr_map)
MDRV_CPU_IO_MAP(darthvdr_io_map)
@@ -2100,7 +2081,7 @@ static MACHINE_DRIVER_START( darthvdr )
MDRV_MACHINE_START(darthvdr)
MDRV_MACHINE_RESET(darthvdr)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
@@ -2161,10 +2142,9 @@ static INPUT_PORTS_START( vortex )
PORT_DIPSETTING( 0x80, DEF_STR( 1C_1C ) )
INPUT_PORTS_END
-MACHINE_DRIVER_START( vortex )
+MACHINE_CONFIG_DERIVED( vortex, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(vortex_io_map)
MDRV_MACHINE_START(extra_8080bw)
@@ -2178,9 +2158,9 @@ MACHINE_DRIVER_START( vortex )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(invaders_audio)
+ MDRV_FRAGMENT_ADD(invaders_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* decrypt function for vortex */
static DRIVER_INIT( vortex )
@@ -2368,14 +2348,13 @@ static ADDRESS_MAP_START( modelr_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
-MACHINE_DRIVER_START( modelr )
+MACHINE_CONFIG_DERIVED( modelr, invaders )
/* basic machine hardware */
- MDRV_IMPORT_FROM(invaders)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(modelr_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( searthin )
diff --git a/src/mame/drivers/86lions.c b/src/mame/drivers/86lions.c
index b6471b143d8..e73da9c73d4 100644
--- a/src/mame/drivers/86lions.c
+++ b/src/mame/drivers/86lions.c
@@ -353,7 +353,7 @@ static PALETTE_INIT( lions )
}
}
-static MACHINE_DRIVER_START( lions )
+static MACHINE_CONFIG_START( lions, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CLOCK/4) /* 3 MHz.(guess) */
MDRV_CPU_PROGRAM_MAP(lions_map)
@@ -383,7 +383,7 @@ static MACHINE_DRIVER_START( lions )
MDRV_SOUND_ADD("aysnd", AY8910, MAIN_CLOCK/8) /* 1.5 MHz.(guess) */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( 86lions )
diff --git a/src/mame/drivers/88games.c b/src/mame/drivers/88games.c
index 31b7bdc59e5..bd8d5e9b3e5 100644
--- a/src/mame/drivers/88games.c
+++ b/src/mame/drivers/88games.c
@@ -375,10 +375,7 @@ static const k051316_interface _88games_k051316_intf =
_88games_zoom_callback
};
-static MACHINE_DRIVER_START( 88games )
-
- /* driver data */
- MDRV_DRIVER_DATA(_88games_state)
+static MACHINE_CONFIG_START( 88games, _88games_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI, 3000000) /* ? */
@@ -422,7 +419,7 @@ static MACHINE_DRIVER_START( 88games )
MDRV_SOUND_ADD("upd2", UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ace.c b/src/mame/drivers/ace.c
index a0c50e8a9f4..7f2007ab8a2 100644
--- a/src/mame/drivers/ace.c
+++ b/src/mame/drivers/ace.c
@@ -343,10 +343,7 @@ static MACHINE_RESET( ace )
state->objpos[i] = 0;
}
-static MACHINE_DRIVER_START( ace )
-
- /* driver data */
- MDRV_DRIVER_DATA(ace_state)
+static MACHINE_CONFIG_START( ace, ace_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, MASTER_CLOCK/9) /* 2 MHz ? */
@@ -372,7 +369,7 @@ static MACHINE_DRIVER_START( ace )
/* sound hardware */
/* ???? */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/acefruit.c b/src/mame/drivers/acefruit.c
index 27d6ea49bb1..b6adc3ec458 100644
--- a/src/mame/drivers/acefruit.c
+++ b/src/mame/drivers/acefruit.c
@@ -547,7 +547,7 @@ static GFXDECODE_START( acefruit )
GFXDECODE_ENTRY( "gfx1", 0x1800, charlayout, 8, 4 )
GFXDECODE_END
-static MACHINE_DRIVER_START( acefruit )
+static MACHINE_CONFIG_START( acefruit, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 2500000) /* 2.5MHz */
@@ -572,7 +572,7 @@ static MACHINE_DRIVER_START( acefruit )
MDRV_VIDEO_UPDATE(acefruit)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT( sidewndr )
{
diff --git a/src/mame/drivers/acommand.c b/src/mame/drivers/acommand.c
index c28d2ef4cbe..10023eebb95 100644
--- a/src/mame/drivers/acommand.c
+++ b/src/mame/drivers/acommand.c
@@ -558,7 +558,7 @@ static INTERRUPT_GEN( acommand_irq )
}
}
-static MACHINE_DRIVER_START( acommand )
+static MACHINE_CONFIG_START( acommand, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,12000000)
@@ -588,7 +588,7 @@ static MACHINE_DRIVER_START( acommand )
MDRV_OKIM6295_ADD("oki2", 2112000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/actfancr.c b/src/mame/drivers/actfancr.c
index 4c2f74dbc90..44b356fa5df 100644
--- a/src/mame/drivers/actfancr.c
+++ b/src/mame/drivers/actfancr.c
@@ -316,10 +316,7 @@ static MACHINE_RESET( triothep )
/******************************************************************************/
-static MACHINE_DRIVER_START( actfancr )
-
- /* driver data */
- MDRV_DRIVER_DATA(actfancr_state)
+static MACHINE_CONFIG_START( actfancr, actfancr_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",H6280,21477200/3) /* Should be accurate */
@@ -362,12 +359,9 @@ static MACHINE_DRIVER_START( actfancr )
MDRV_OKIM6295_ADD("oki", 1024188, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.85)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( triothep )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(actfancr_state)
+static MACHINE_CONFIG_START( triothep, actfancr_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",H6280,XTAL_21_4772MHz/3) /* XIN=21.4772Mhz, verified on pcb */
@@ -410,7 +404,7 @@ static MACHINE_DRIVER_START( triothep )
MDRV_OKIM6295_ADD("oki", XTAL_1_056MHz, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.85)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/adp.c b/src/mame/drivers/adp.c
index a74beabde9a..40492d87398 100644
--- a/src/mame/drivers/adp.c
+++ b/src/mame/drivers/adp.c
@@ -632,10 +632,7 @@ static const ay8910_interface ay8910_config =
static const hd63484_interface adp_hd63484_intf = { 0 };
static const hd63484_interface skattva_hd63484_intf = { 1 }; // skattva hd63484 hack. to be removed once the video controller emulation is complete!
-static MACHINE_DRIVER_START( quickjac )
-
- /* driver data */
- MDRV_DRIVER_DATA(adp_state)
+static MACHINE_CONFIG_START( quickjac, adp_state )
MDRV_CPU_ADD("maincpu", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(quickjac_mem)
@@ -665,12 +662,9 @@ static MACHINE_DRIVER_START( quickjac )
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( skattv )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(adp_state)
+static MACHINE_CONFIG_START( skattv, adp_state )
MDRV_CPU_ADD("maincpu", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(skattv_mem)
@@ -700,19 +694,15 @@ static MACHINE_DRIVER_START( skattv )
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( skattva )
- MDRV_IMPORT_FROM( skattv )
+static MACHINE_CONFIG_DERIVED( skattva, skattv )
MDRV_DEVICE_REMOVE("hd63484")
MDRV_HD63484_ADD("hd63484", skattva_hd63484_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( backgamn )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(adp_state)
+static MACHINE_CONFIG_START( backgamn, adp_state )
MDRV_CPU_ADD("maincpu", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(backgamn_mem)
@@ -741,22 +731,20 @@ static MACHINE_DRIVER_START( backgamn )
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( funland )
- MDRV_IMPORT_FROM( skattv )
+static MACHINE_CONFIG_DERIVED( funland, skattv )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(funland_mem)
MDRV_PALETTE_LENGTH(0x100)
MDRV_PALETTE_INIT(all_black)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fstation )
- MDRV_IMPORT_FROM( skattv )
+static MACHINE_CONFIG_DERIVED( fstation, skattv )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(fstation_mem)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( quickjac )
diff --git a/src/mame/drivers/aeroboto.c b/src/mame/drivers/aeroboto.c
index 71dd36fc857..f70afcd48ff 100644
--- a/src/mame/drivers/aeroboto.c
+++ b/src/mame/drivers/aeroboto.c
@@ -252,10 +252,7 @@ static MACHINE_RESET( formatz )
state->sy = 0;
}
-static MACHINE_DRIVER_START( formatz )
-
- /* driver data */
- MDRV_DRIVER_DATA(aeroboto_state)
+static MACHINE_CONFIG_START( formatz, aeroboto_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, XTAL_10MHz/8) /* verified on pcb */
@@ -294,7 +291,7 @@ static MACHINE_DRIVER_START( formatz )
MDRV_SOUND_ADD("ay2", AY8910, XTAL_10MHz/16) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/aerofgt.c b/src/mame/drivers/aerofgt.c
index de661cbdbda..7056a6ac92e 100644
--- a/src/mame/drivers/aerofgt.c
+++ b/src/mame/drivers/aerofgt.c
@@ -1327,10 +1327,7 @@ static MACHINE_RESET( aerofgt )
memory_set_bank(machine, "bank1", 0); /* needed by spinlbrk */
}
-static MACHINE_DRIVER_START( pspikes )
-
- /* driver data */
- MDRV_DRIVER_DATA(aerofgt_state)
+static MACHINE_CONFIG_START( pspikes, aerofgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,XTAL_20MHz/2) /* verified on pcb */
@@ -1368,12 +1365,9 @@ static MACHINE_DRIVER_START( pspikes )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( spikes91 )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(aerofgt_state)
+static MACHINE_CONFIG_START( spikes91, aerofgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,20000000/2) /* 10 MHz (?) */
@@ -1404,13 +1398,10 @@ static MACHINE_DRIVER_START( spikes91 )
1x OKI M5205 (sound)(ic145)
2x LM324N (sound)(ic152, ic153)
*/
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pspikesb )
- /* driver data */
- MDRV_DRIVER_DATA(aerofgt_state)
+static MACHINE_CONFIG_START( pspikesb, aerofgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,20000000/2) /* 10 MHz (?) */
@@ -1438,12 +1429,9 @@ static MACHINE_DRIVER_START( pspikesb )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pspikesc )
-
- /* driver data */
- MDRV_DRIVER_DATA(aerofgt_state)
+static MACHINE_CONFIG_START( pspikesc, aerofgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,20000000/2) /* 10 MHz (?) */
@@ -1471,12 +1459,9 @@ static MACHINE_DRIVER_START( pspikesc )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( karatblz )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(aerofgt_state)
+static MACHINE_CONFIG_START( karatblz, aerofgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,20000000/2) /* 10 MHz (?) */
@@ -1513,12 +1498,9 @@ static MACHINE_DRIVER_START( karatblz )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( spinlbrk )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(aerofgt_state)
+static MACHINE_CONFIG_START( spinlbrk, aerofgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,XTAL_20MHz/2) /* verified on pcb */
@@ -1555,12 +1537,9 @@ static MACHINE_DRIVER_START( spinlbrk )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( turbofrc )
-
- /* driver data */
- MDRV_DRIVER_DATA(aerofgt_state)
+static MACHINE_CONFIG_START( turbofrc, aerofgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,XTAL_20MHz/2) /* verified on pcb */
@@ -1597,12 +1576,9 @@ static MACHINE_DRIVER_START( turbofrc )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( aerofgtb )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(aerofgt_state)
+static MACHINE_CONFIG_START( aerofgtb, aerofgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,20000000/2) /* 10 MHz (?) */
@@ -1640,12 +1616,9 @@ static MACHINE_DRIVER_START( aerofgtb )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( aerofgt )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(aerofgt_state)
+static MACHINE_CONFIG_START( aerofgt, aerofgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,XTAL_20MHz/2) /* verified on pcb */
@@ -1683,12 +1656,9 @@ static MACHINE_DRIVER_START( aerofgt )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( aerfboot )
-
- /* driver data */
- MDRV_DRIVER_DATA(aerofgt_state)
+static MACHINE_CONFIG_START( aerfboot, aerofgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,20000000/2) /* 10 MHz (?) */
@@ -1720,12 +1690,9 @@ static MACHINE_DRIVER_START( aerfboot )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( aerfboo2 )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(aerofgt_state)
+static MACHINE_CONFIG_START( aerfboo2, aerofgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,20000000/2) /* 10 MHz (?) */
@@ -1754,12 +1721,9 @@ static MACHINE_DRIVER_START( aerfboo2 )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( wbbc97 )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(aerofgt_state)
+static MACHINE_CONFIG_START( wbbc97, aerofgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,20000000/2) /* 10 MHz (?) */
@@ -1795,7 +1759,7 @@ static MACHINE_DRIVER_START( wbbc97 )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/airbustr.c b/src/mame/drivers/airbustr.c
index 4d70fa5aefe..6ffe1b8402e 100644
--- a/src/mame/drivers/airbustr.c
+++ b/src/mame/drivers/airbustr.c
@@ -630,10 +630,7 @@ static const kaneko_pandora_interface airbustr_pandora_config =
0, 0 /* x_offs, y_offs */
};
-static MACHINE_DRIVER_START( airbustr )
-
- /* driver data */
- MDRV_DRIVER_DATA(airbustr_state)
+static MACHINE_CONFIG_START( airbustr, airbustr_state )
/* basic machine hardware */
MDRV_CPU_ADD("master", Z80, 6000000) // ???
@@ -685,12 +682,11 @@ static MACHINE_DRIVER_START( airbustr )
MDRV_OKIM6295_ADD("oki", 12000000/4, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( airbustrb )
- MDRV_IMPORT_FROM(airbustr)
+static MACHINE_CONFIG_DERIVED( airbustrb, airbustr )
MDRV_WATCHDOG_TIME_INIT(SEC(0)) // no protection device or watchdog
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/ajax.c b/src/mame/drivers/ajax.c
index 4fb2ac10b4d..3e30f9a3273 100644
--- a/src/mame/drivers/ajax.c
+++ b/src/mame/drivers/ajax.c
@@ -205,10 +205,7 @@ static const k051316_interface ajax_k051316_intf =
ajax_zoom_callback
};
-static MACHINE_DRIVER_START( ajax )
-
- /* driver data */
- MDRV_DRIVER_DATA(ajax_state)
+static MACHINE_CONFIG_START( ajax, ajax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI, 3000000) /* 12/4 MHz*/
@@ -262,7 +259,7 @@ static MACHINE_DRIVER_START( ajax )
MDRV_SOUND_CONFIG(k007232_interface_2)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/albazc.c b/src/mame/drivers/albazc.c
index 35c3e0fe808..edf4197f4fa 100644
--- a/src/mame/drivers/albazc.c
+++ b/src/mame/drivers/albazc.c
@@ -259,10 +259,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( hanaroku )
-
- /* driver data */
- MDRV_DRIVER_DATA(albazc_state)
+static MACHINE_CONFIG_START( hanaroku, albazc_state )
MDRV_CPU_ADD("maincpu", Z80,6000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(hanaroku_map)
@@ -289,7 +286,7 @@ static MACHINE_DRIVER_START( hanaroku )
MDRV_SOUND_ADD("aysnd", AY8910, 1500000) /* ? MHz */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( hanaroku )
diff --git a/src/mame/drivers/albazg.c b/src/mame/drivers/albazg.c
index ae860e9d17c..db60c41eaf2 100644
--- a/src/mame/drivers/albazg.c
+++ b/src/mame/drivers/albazg.c
@@ -395,10 +395,7 @@ static MACHINE_RESET( yumefuda )
state->prot_lock = 0;
}
-static MACHINE_DRIVER_START( yumefuda )
-
- /* driver data */
- MDRV_DRIVER_DATA(albazg_state)
+static MACHINE_CONFIG_START( yumefuda, albazg_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80 , MASTER_CLOCK/2) /* xtal is 12 Mhz, unknown divider*/
@@ -437,7 +434,7 @@ static MACHINE_DRIVER_START( yumefuda )
MDRV_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK/16) /* guessed to use the same xtal as the crtc */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************************/
diff --git a/src/mame/drivers/aleck64.c b/src/mame/drivers/aleck64.c
index 2fb0d32f423..1bf3464c94e 100644
--- a/src/mame/drivers/aleck64.c
+++ b/src/mame/drivers/aleck64.c
@@ -567,9 +567,7 @@ static INTERRUPT_GEN( n64_vblank )
signal_rcp_interrupt(device->machine, VI_INTERRUPT);
}
-static MACHINE_DRIVER_START( aleck64 )
-
- MDRV_DRIVER_DATA(_n64_state)
+static MACHINE_CONFIG_START( aleck64, _n64_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", VR4300BE, 93750000)
@@ -601,7 +599,7 @@ static MACHINE_DRIVER_START( aleck64 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ADD("dac2", DMADAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT( aleck64 )
{
diff --git a/src/mame/drivers/alg.c b/src/mame/drivers/alg.c
index 08a807b2e30..3c2356b0a8a 100644
--- a/src/mame/drivers/alg.c
+++ b/src/mame/drivers/alg.c
@@ -403,7 +403,7 @@ static const mos6526_interface cia_1_intf =
DEVCB_NULL /* port B */
};
-static MACHINE_DRIVER_START( alg_r1 )
+static MACHINE_CONFIG_START( alg_r1, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, AMIGA_68000_NTSC_CLOCK)
@@ -444,19 +444,17 @@ static MACHINE_DRIVER_START( alg_r1 )
/* cia */
MDRV_MOS8520_ADD("cia_0", AMIGA_68000_NTSC_CLOCK / 10, cia_0_intf)
MDRV_MOS8520_ADD("cia_1", AMIGA_68000_NTSC_CLOCK / 10, cia_1_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( alg_r2 )
- MDRV_IMPORT_FROM(alg_r1)
+static MACHINE_CONFIG_DERIVED( alg_r2, alg_r1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(main_map_r2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( picmatic )
- MDRV_IMPORT_FROM(alg_r1)
+static MACHINE_CONFIG_DERIVED( picmatic, alg_r1 )
/* adjust for PAL specs */
MDRV_CPU_REPLACE("maincpu", M68000, AMIGA_68000_PAL_CLOCK)
@@ -466,7 +464,7 @@ static MACHINE_DRIVER_START( picmatic )
MDRV_SCREEN_REFRESH_RATE(50)
MDRV_SCREEN_SIZE(512*2, 312)
MDRV_SCREEN_VISIBLE_AREA((129-8)*2, (449+8-1)*2, 44-8, 300+8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/aliens.c b/src/mame/drivers/aliens.c
index 8825b7afd4a..a35407380e7 100644
--- a/src/mame/drivers/aliens.c
+++ b/src/mame/drivers/aliens.c
@@ -261,10 +261,7 @@ static MACHINE_RESET( aliens )
state->palette_selected = 0;
}
-static MACHINE_DRIVER_START( aliens )
-
- /* driver data */
- MDRV_DRIVER_DATA(aliens_state)
+static MACHINE_CONFIG_START( aliens, aliens_state )
/* basic machine hardware */
@@ -310,7 +307,7 @@ static MACHINE_DRIVER_START( aliens )
MDRV_SOUND_CONFIG(k007232_config)
MDRV_SOUND_ROUTE(0, "mono", 0.20)
MDRV_SOUND_ROUTE(1, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/alpha68k.c b/src/mame/drivers/alpha68k.c
index e327a0984c5..2eb265d3414 100644
--- a/src/mame/drivers/alpha68k.c
+++ b/src/mame/drivers/alpha68k.c
@@ -1937,10 +1937,7 @@ static MACHINE_START( alpha68k_II )
}
-static MACHINE_DRIVER_START( sstingry )
-
- /* driver data */
- MDRV_DRIVER_DATA(alpha68k_state)
+static MACHINE_CONFIG_START( sstingry, alpha68k_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 6000000) /* 24MHz/4? */
@@ -1988,12 +1985,9 @@ static MACHINE_DRIVER_START( sstingry )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
//ZT
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( kyros )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(alpha68k_state)
+static MACHINE_CONFIG_START( kyros, alpha68k_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 6000000) /* 24MHz/4? */
@@ -2040,12 +2034,9 @@ static MACHINE_DRIVER_START( kyros )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
//ZT
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( jongbou )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(alpha68k_state)
+static MACHINE_CONFIG_START( jongbou, alpha68k_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -2079,12 +2070,9 @@ static MACHINE_DRIVER_START( jongbou )
MDRV_SOUND_ADD("aysnd", AY8910, 2000000)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.65)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( alpha68k_I )
-
- /* driver data */
- MDRV_DRIVER_DATA(alpha68k_state)
+static MACHINE_CONFIG_START( alpha68k_I, alpha68k_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 6000000) /* 24MHz/4? */
@@ -2117,12 +2105,9 @@ static MACHINE_DRIVER_START( alpha68k_I )
MDRV_SOUND_ADD("ymsnd", YM3812, 4000000)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( alpha68k_II )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(alpha68k_state)
+static MACHINE_CONFIG_START( alpha68k_II, alpha68k_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* Correct */
@@ -2162,19 +2147,15 @@ static MACHINE_DRIVER_START( alpha68k_II )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( btlfieldb )
- MDRV_IMPORT_FROM(alpha68k_II)
+static MACHINE_CONFIG_DERIVED( btlfieldb, alpha68k_II )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT_HACK(alpha68k_interrupt,2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
//AT
-static MACHINE_DRIVER_START( alpha68k_II_gm )
-
- /* driver data */
- MDRV_DRIVER_DATA(alpha68k_state)
+static MACHINE_CONFIG_START( alpha68k_II_gm, alpha68k_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -2214,13 +2195,10 @@ static MACHINE_DRIVER_START( alpha68k_II_gm )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
//ZT
-static MACHINE_DRIVER_START( alpha68k_V )
-
- /* driver data */
- MDRV_DRIVER_DATA(alpha68k_state)
+static MACHINE_CONFIG_START( alpha68k_V, alpha68k_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* ? */
@@ -2260,12 +2238,9 @@ static MACHINE_DRIVER_START( alpha68k_V )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( alpha68k_V_sb )
-
- /* driver data */
- MDRV_DRIVER_DATA(alpha68k_state)
+static MACHINE_CONFIG_START( alpha68k_V_sb, alpha68k_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* ? */
@@ -2305,12 +2280,9 @@ static MACHINE_DRIVER_START( alpha68k_V_sb )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( tnextspc )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(alpha68k_state)
+static MACHINE_CONFIG_START( tnextspc, alpha68k_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 9000000) /* Confirmed 18 MHz/2 */
@@ -2343,7 +2315,7 @@ static MACHINE_DRIVER_START( tnextspc )
MDRV_SOUND_ADD("ymsnd", YM3812, 4000000)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/amaticmg.c b/src/mame/drivers/amaticmg.c
index 4fabcd265f8..347cfc5adb9 100644
--- a/src/mame/drivers/amaticmg.c
+++ b/src/mame/drivers/amaticmg.c
@@ -610,7 +610,7 @@ GFXDECODE_END
* Machine Drivers *
************************************/
-static MACHINE_DRIVER_START( amaticmg )
+static MACHINE_CONFIG_START( amaticmg, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK) /* WRONG! */
MDRV_CPU_PROGRAM_MAP(amaticmg_map)
@@ -651,7 +651,7 @@ static MACHINE_DRIVER_START( amaticmg )
// MDRV_SOUND_ADD("dac", DAC, 0) /* Y3014B */
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/************************************
diff --git a/src/mame/drivers/ambush.c b/src/mame/drivers/ambush.c
index 495afe4b2ed..d08b639fb31 100644
--- a/src/mame/drivers/ambush.c
+++ b/src/mame/drivers/ambush.c
@@ -226,10 +226,7 @@ static const ay8910_interface ay8910_interface_2 =
*
*************************************/
-static MACHINE_DRIVER_START( ambush )
-
- /* driver data */
- MDRV_DRIVER_DATA(ambush_state)
+static MACHINE_CONFIG_START( ambush, ambush_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4.00 MHz??? */
@@ -260,7 +257,7 @@ static MACHINE_DRIVER_START( ambush )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/ampoker2.c b/src/mame/drivers/ampoker2.c
index 4cb3c618a18..a81cd960e2e 100644
--- a/src/mame/drivers/ampoker2.c
+++ b/src/mame/drivers/ampoker2.c
@@ -1054,7 +1054,7 @@ static const ay8910_interface ay8910_config =
* Machine Driver *
*************************/
-static MACHINE_DRIVER_START( ampoker2 )
+static MACHINE_CONFIG_START( ampoker2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/2) /* 3 MHz */
@@ -1087,16 +1087,16 @@ static MACHINE_DRIVER_START( ampoker2 )
MDRV_SOUND_ADD("aysnd", AY8910,MASTER_CLOCK/4) /* 1.5 MHz, measured */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( sigma2k, ampoker2 )
-static MACHINE_DRIVER_START( sigma2k )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ampoker2)
/* video hardware */
MDRV_GFXDECODE(sigma2k)
MDRV_VIDEO_START(sigma2k)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/amspdwy.c b/src/mame/drivers/amspdwy.c
index dcb9f969d7f..0705d9700d9 100644
--- a/src/mame/drivers/amspdwy.c
+++ b/src/mame/drivers/amspdwy.c
@@ -271,10 +271,7 @@ static MACHINE_RESET( amspdwy )
state->wheel_return[1] = 0;
}
-static MACHINE_DRIVER_START( amspdwy )
-
- /* driver data */
- MDRV_DRIVER_DATA(amspdwy_state)
+static MACHINE_CONFIG_START( amspdwy, amspdwy_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,3000000)
@@ -308,7 +305,7 @@ static MACHINE_DRIVER_START( amspdwy )
MDRV_SOUND_CONFIG(amspdwy_ym2151_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/angelkds.c b/src/mame/drivers/angelkds.c
index 8015e304cdb..b5445ceaf29 100644
--- a/src/mame/drivers/angelkds.c
+++ b/src/mame/drivers/angelkds.c
@@ -604,10 +604,7 @@ static MACHINE_RESET( angelkds )
state->bgtopbank = 0;
}
-static MACHINE_DRIVER_START( angelkds )
-
- /* driver data */
- MDRV_DRIVER_DATA(angelkds_state)
+static MACHINE_CONFIG_START( angelkds, angelkds_state )
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* 8MHz? 6 seems too slow? */
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -650,7 +647,7 @@ static MACHINE_DRIVER_START( angelkds )
MDRV_SOUND_ROUTE(1, "mono", 0.65)
MDRV_SOUND_ROUTE(2, "mono", 0.65)
MDRV_SOUND_ROUTE(3, "mono", 0.45)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*** Rom Loading
diff --git a/src/mame/drivers/appoooh.c b/src/mame/drivers/appoooh.c
index 24dc4fbb23c..ffb21932df8 100644
--- a/src/mame/drivers/appoooh.c
+++ b/src/mame/drivers/appoooh.c
@@ -421,10 +421,7 @@ static MACHINE_RESET( appoooh )
state->priority = 0;
}
-static MACHINE_DRIVER_START( appoooh_common )
-
- /* driver data */
- MDRV_DRIVER_DATA(appoooh_state)
+static MACHINE_CONFIG_START( appoooh_common, appoooh_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,18432000/6) /* ??? the main xtal is 18.432 MHz */
@@ -450,13 +447,10 @@ static MACHINE_DRIVER_START( appoooh_common )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( appoooh )
- /* common machine hardware */
- MDRV_IMPORT_FROM(appoooh_common)
+static MACHINE_CONFIG_DERIVED( appoooh, appoooh_common )
/* video hardware */
MDRV_SCREEN_ADD("screen", RASTER)
@@ -471,13 +465,10 @@ static MACHINE_DRIVER_START( appoooh )
MDRV_PALETTE_INIT(appoooh)
MDRV_VIDEO_START(appoooh)
MDRV_VIDEO_UPDATE(appoooh)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( robowres )
- /* common machine hardware */
- MDRV_IMPORT_FROM(appoooh_common)
+static MACHINE_CONFIG_DERIVED( robowres, appoooh_common )
/* video hardware */
MDRV_SCREEN_ADD("screen", RASTER)
@@ -492,7 +483,7 @@ static MACHINE_DRIVER_START( robowres )
MDRV_PALETTE_INIT(robowres)
MDRV_VIDEO_START(appoooh)
MDRV_VIDEO_UPDATE(robowres)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/aquarium.c b/src/mame/drivers/aquarium.c
index ae87dfd5486..48cb6f1d22c 100644
--- a/src/mame/drivers/aquarium.c
+++ b/src/mame/drivers/aquarium.c
@@ -357,10 +357,7 @@ static MACHINE_RESET( aquarium )
#endif
}
-static MACHINE_DRIVER_START( aquarium )
-
- /* driver data */
- MDRV_DRIVER_DATA(aquarium_state)
+static MACHINE_CONFIG_START( aquarium, aquarium_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 32000000/2)
@@ -398,7 +395,7 @@ static MACHINE_DRIVER_START( aquarium )
MDRV_OKIM6295_ADD("oki", 1122000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.47)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.47)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( aquarium )
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 code */
diff --git a/src/mame/drivers/arabian.c b/src/mame/drivers/arabian.c
index 7add2ba6f5d..c2805ad1663 100644
--- a/src/mame/drivers/arabian.c
+++ b/src/mame/drivers/arabian.c
@@ -390,10 +390,7 @@ static MACHINE_RESET( arabian )
state->flip_screen = 0;
}
-static MACHINE_DRIVER_START( arabian )
-
- /* driver data */
- MDRV_DRIVER_DATA(arabian_state)
+static MACHINE_CONFIG_START( arabian, arabian_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_OSC/4)
@@ -423,7 +420,7 @@ static MACHINE_DRIVER_START( arabian )
MDRV_SOUND_ADD("aysnd", AY8910, MAIN_OSC/4/2)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/arcadecl.c b/src/mame/drivers/arcadecl.c
index b205e52465f..7c1dc76963c 100644
--- a/src/mame/drivers/arcadecl.c
+++ b/src/mame/drivers/arcadecl.c
@@ -323,8 +323,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( arcadecl )
- MDRV_DRIVER_DATA(rampart_state)
+static MACHINE_CONFIG_START( arcadecl, rampart_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK)
@@ -354,7 +353,7 @@ static MACHINE_DRIVER_START( arcadecl )
MDRV_OKIM6295_ADD("oki", MASTER_CLOCK/4/3, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/arcadia.c b/src/mame/drivers/arcadia.c
index 9d280a7e5d6..aa068ccb07f 100644
--- a/src/mame/drivers/arcadia.c
+++ b/src/mame/drivers/arcadia.c
@@ -286,7 +286,7 @@ static const mos6526_interface cia_1_intf =
DEVCB_NULL
};
-static MACHINE_DRIVER_START( arcadia )
+static MACHINE_CONFIG_START( arcadia, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, AMIGA_68000_NTSC_CLOCK)
@@ -322,7 +322,7 @@ static MACHINE_DRIVER_START( arcadia )
/* cia */
MDRV_MOS8520_ADD("cia_0", AMIGA_68000_NTSC_CLOCK / 10, cia_0_intf)
MDRV_MOS8520_ADD("cia_1", AMIGA_68000_NTSC_CLOCK / 10, cia_1_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/argus.c b/src/mame/drivers/argus.c
index d6724f6dab9..d26e409209e 100644
--- a/src/mame/drivers/argus.c
+++ b/src/mame/drivers/argus.c
@@ -529,7 +529,7 @@ static GFXDECODE_START( butasan )
GFXDECODE_END
-static MACHINE_DRIVER_START( argus )
+static MACHINE_CONFIG_START( argus, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 4 MHz */
@@ -585,9 +585,9 @@ static MACHINE_DRIVER_START( argus )
MDRV_SOUND_ROUTE(2, "mono", 0.15)
MDRV_SOUND_ROUTE(3, "mono", 0.50)
#endif
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( valtric )
+static MACHINE_CONFIG_START( valtric, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5 MHz */
@@ -630,9 +630,9 @@ static MACHINE_DRIVER_START( valtric )
MDRV_SOUND_ROUTE(1, "mono", 0.15)
MDRV_SOUND_ROUTE(2, "mono", 0.15)
MDRV_SOUND_ROUTE(3, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( butasan )
+static MACHINE_CONFIG_START( butasan, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5 MHz */
@@ -675,7 +675,7 @@ static MACHINE_DRIVER_START( butasan )
MDRV_SOUND_ROUTE(1, "mono", 0.30)
MDRV_SOUND_ROUTE(2, "mono", 0.30)
MDRV_SOUND_ROUTE(3, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/aristmk4.c b/src/mame/drivers/aristmk4.c
index 0f12ce7e962..2cec566668f 100644
--- a/src/mame/drivers/aristmk4.c
+++ b/src/mame/drivers/aristmk4.c
@@ -1169,7 +1169,7 @@ static MACHINE_RESET( aristmk4 )
}
-static MACHINE_DRIVER_START( aristmk4 )
+static MACHINE_CONFIG_START( aristmk4, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CLOCK/8) // 1.5mhz (goldenc needs a bit faster for some reason)
@@ -1216,7 +1216,7 @@ static MACHINE_DRIVER_START( aristmk4 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.05)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( 3bagflvt )
diff --git a/src/mame/drivers/aristmk5.c b/src/mame/drivers/aristmk5.c
index db3e57ea1a9..610dbc233cc 100644
--- a/src/mame/drivers/aristmk5.c
+++ b/src/mame/drivers/aristmk5.c
@@ -214,7 +214,7 @@ static const i2cmem_interface i2cmem_interface =
};
-static MACHINE_DRIVER_START( aristmk5 )
+static MACHINE_CONFIG_START( aristmk5, driver_data_t )
MDRV_CPU_ADD("maincpu", ARM, 10000000) // ?
MDRV_CPU_PROGRAM_MAP(aristmk5_map)
@@ -259,7 +259,7 @@ static MACHINE_DRIVER_START( aristmk5 )
MDRV_SOUND_ADD("dac7", DAC, 0)
MDRV_SOUND_ROUTE(0, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#define ARISTOCRAT_MK5_BIOS \
ROM_REGION( 0x800000, "prg_code", 0 ) \
diff --git a/src/mame/drivers/arkanoid.c b/src/mame/drivers/arkanoid.c
index ec2e0c02716..e919c80c069 100644
--- a/src/mame/drivers/arkanoid.c
+++ b/src/mame/drivers/arkanoid.c
@@ -957,10 +957,7 @@ static MACHINE_RESET( arkanoid )
state->palettebank = 0;
}
-static MACHINE_DRIVER_START( arkanoid )
-
- /* driver data */
- MDRV_DRIVER_DATA(arkanoid_state)
+static MACHINE_CONFIG_START( arkanoid, arkanoid_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on pcb */
@@ -995,12 +992,10 @@ static MACHINE_DRIVER_START( arkanoid )
MDRV_SOUND_ADD("aysnd", YM2149, XTAL_12MHz/4/2) /* YM2149 clock is 3mhz, pin 26 is low so 3mhz/2 */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hexa )
- /* driver data */
- MDRV_DRIVER_DATA(arkanoid_state)
+static MACHINE_CONFIG_START( hexa, arkanoid_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* Imported from arkanoid - correct? */
@@ -1030,18 +1025,17 @@ static MACHINE_DRIVER_START( hexa )
MDRV_SOUND_ADD("aysnd", AY8910, XTAL_12MHz/4/2) /* Imported from arkanoid - correct? */
MDRV_SOUND_CONFIG(hexa_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bootleg )
- MDRV_IMPORT_FROM(arkanoid)
+static MACHINE_CONFIG_DERIVED( bootleg, arkanoid )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(bootleg_map)
MDRV_DEVICE_REMOVE("mcu")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/armedf.c b/src/mame/drivers/armedf.c
index ebf19d33ac4..a771b87d6bb 100644
--- a/src/mame/drivers/armedf.c
+++ b/src/mame/drivers/armedf.c
@@ -791,10 +791,7 @@ static MACHINE_RESET( armedf )
}
-static MACHINE_DRIVER_START( terraf )
-
- /* driver data */
- MDRV_DRIVER_DATA(armedf_state)
+static MACHINE_CONFIG_START( terraf, armedf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz?? */
@@ -836,12 +833,9 @@ static MACHINE_DRIVER_START( terraf )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( terrafb )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(armedf_state)
+static MACHINE_CONFIG_START( terrafb, armedf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz?? */
@@ -888,12 +882,9 @@ static MACHINE_DRIVER_START( terrafb )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kodure )
-
- /* driver data */
- MDRV_DRIVER_DATA(armedf_state)
+static MACHINE_CONFIG_START( kodure, armedf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz?? */
@@ -935,12 +926,9 @@ static MACHINE_DRIVER_START( kodure )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( armedf )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(armedf_state)
+static MACHINE_CONFIG_START( armedf, armedf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz?? */
@@ -982,12 +970,9 @@ static MACHINE_DRIVER_START( armedf )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cclimbr2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(armedf_state)
+static MACHINE_CONFIG_START( cclimbr2, armedf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz?? */
@@ -1029,12 +1014,9 @@ static MACHINE_DRIVER_START( cclimbr2 )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( legion )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(armedf_state)
+static MACHINE_CONFIG_START( legion, armedf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz?? */
@@ -1076,12 +1058,9 @@ static MACHINE_DRIVER_START( legion )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( legiono )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(armedf_state)
+static MACHINE_CONFIG_START( legiono, armedf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz?? */
@@ -1123,7 +1102,7 @@ static MACHINE_DRIVER_START( legiono )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/artmagic.c b/src/mame/drivers/artmagic.c
index 2a8abb55434..dcad0ab4457 100644
--- a/src/mame/drivers/artmagic.c
+++ b/src/mame/drivers/artmagic.c
@@ -705,7 +705,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( artmagic )
+static MACHINE_CONFIG_START( artmagic, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK_25MHz/2)
@@ -735,19 +735,17 @@ static MACHINE_DRIVER_START( artmagic )
MDRV_OKIM6295_ADD("oki", MASTER_CLOCK_40MHz/3/10, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.65)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cheesech )
- MDRV_IMPORT_FROM(artmagic)
+static MACHINE_CONFIG_DERIVED( cheesech, artmagic )
MDRV_SOUND_MODIFY("oki")
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( stonebal )
- MDRV_IMPORT_FROM(artmagic)
+static MACHINE_CONFIG_DERIVED( stonebal, artmagic )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(stonebal_map)
@@ -757,7 +755,7 @@ static MACHINE_DRIVER_START( stonebal )
MDRV_SOUND_MODIFY("oki")
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ashnojoe.c b/src/mame/drivers/ashnojoe.c
index 28ca7882371..190b1fa89c8 100644
--- a/src/mame/drivers/ashnojoe.c
+++ b/src/mame/drivers/ashnojoe.c
@@ -351,10 +351,7 @@ static MACHINE_RESET( ashnojoe )
}
-static MACHINE_DRIVER_START( ashnojoe )
-
- /* driver data */
- MDRV_DRIVER_DATA(ashnojoe_state)
+static MACHINE_CONFIG_START( ashnojoe, ashnojoe_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -392,7 +389,7 @@ static MACHINE_DRIVER_START( ashnojoe )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( scessjoe )
ROM_REGION( 0xc0000, "maincpu", 0 ) /* 68000 code */
diff --git a/src/mame/drivers/asterix.c b/src/mame/drivers/asterix.c
index 5a0955a31ab..2b943951978 100644
--- a/src/mame/drivers/asterix.c
+++ b/src/mame/drivers/asterix.c
@@ -294,10 +294,7 @@ static MACHINE_RESET( asterix )
}
}
-static MACHINE_DRIVER_START( asterix )
-
- /* driver data */
- MDRV_DRIVER_DATA(asterix_state)
+static MACHINE_CONFIG_START( asterix, asterix_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -339,7 +336,7 @@ static MACHINE_DRIVER_START( asterix )
MDRV_SOUND_ADD("k053260", K053260, 4000000)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.75)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( asterix )
diff --git a/src/mame/drivers/asteroid.c b/src/mame/drivers/asteroid.c
index 11a0872391a..710790b923f 100644
--- a/src/mame/drivers/asteroid.c
+++ b/src/mame/drivers/asteroid.c
@@ -609,7 +609,7 @@ static const pokey_interface pokey_config =
*
*************************************/
-static MACHINE_DRIVER_START( asteroid )
+static MACHINE_CONFIG_START( asteroid, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/8)
@@ -633,21 +633,19 @@ static MACHINE_DRIVER_START( asteroid )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(asteroid)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.4)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( asterock )
+static MACHINE_CONFIG_DERIVED( asterock, asteroid )
/* basic machine hardware */
- MDRV_IMPORT_FROM(asteroid)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PERIODIC_INT(asterock_interrupt, (double)MASTER_CLOCK/4096/12)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( astdelux )
+static MACHINE_CONFIG_DERIVED( astdelux, asteroid )
/* basic machine hardware */
- MDRV_IMPORT_FROM(asteroid)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(astdelux_map)
@@ -661,13 +659,12 @@ static MACHINE_DRIVER_START( astdelux )
MDRV_SOUND_ADD("pokey", POKEY, MASTER_CLOCK/8)
MDRV_SOUND_CONFIG(pokey_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( llander )
+static MACHINE_CONFIG_DERIVED( llander, asteroid )
/* basic machine hardware */
- MDRV_IMPORT_FROM(asteroid)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(llander_map)
MDRV_CPU_PERIODIC_INT(llander_interrupt, (double)MASTER_CLOCK/4096/12)
@@ -684,7 +681,7 @@ static MACHINE_DRIVER_START( llander )
MDRV_SOUND_REPLACE("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(llander)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/astinvad.c b/src/mame/drivers/astinvad.c
index e112be419b4..e399d0907d3 100644
--- a/src/mame/drivers/astinvad.c
+++ b/src/mame/drivers/astinvad.c
@@ -586,10 +586,7 @@ static const samples_interface astinvad_samples_interface =
*
*************************************/
-static MACHINE_DRIVER_START( kamikaze )
-
- /* driver data */
- MDRV_DRIVER_DATA(astinvad_state)
+static MACHINE_CONFIG_START( kamikaze, astinvad_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK)
@@ -615,22 +612,18 @@ static MACHINE_DRIVER_START( kamikaze )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(astinvad_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spcking2 )
+static MACHINE_CONFIG_DERIVED( spcking2, kamikaze )
/* basic machine hardware */
- MDRV_IMPORT_FROM(kamikaze)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_RAW_PARAMS(VIDEO_CLOCK, 320, 0, 256, 256, 16, 240)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spaceint )
- /* driver data */
- MDRV_DRIVER_DATA(astinvad_state)
+static MACHINE_CONFIG_START( spaceint, astinvad_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK) /* a guess */
@@ -657,7 +650,7 @@ static MACHINE_DRIVER_START( spaceint )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(astinvad_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/astrocde.c b/src/mame/drivers/astrocde.c
index 2a35aae9a1d..e554724c6a3 100644
--- a/src/mame/drivers/astrocde.c
+++ b/src/mame/drivers/astrocde.c
@@ -1270,7 +1270,7 @@ static const z80_daisy_config tenpin_daisy_chain[] =
*
*************************************/
-static MACHINE_DRIVER_START( astrocade_base )
+static MACHINE_CONFIG_START( astrocade_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, ASTROCADE_CLOCK/4)
@@ -1289,11 +1289,10 @@ static MACHINE_DRIVER_START( astrocade_base )
MDRV_PALETTE_INIT(astrocde)
MDRV_VIDEO_START(astrocde)
MDRV_VIDEO_UPDATE(astrocde)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( astrocade_16color_base )
- MDRV_IMPORT_FROM(astrocade_base)
+static MACHINE_CONFIG_DERIVED( astrocade_16color_base, astrocade_base )
/* basic machine hardware */
MDRV_NVRAM_HANDLER(generic_0fill)
@@ -1304,20 +1303,20 @@ static MACHINE_DRIVER_START( astrocade_16color_base )
MDRV_PALETTE_INIT(profpac)
MDRV_VIDEO_START(profpac)
MDRV_VIDEO_UPDATE(profpac)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( astrocade_mono_sound )
+static MACHINE_CONFIG_FRAGMENT( astrocade_mono_sound )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("astrocade1", ASTROCADE, ASTROCADE_CLOCK/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( astrocade_stereo_sound )
+static MACHINE_CONFIG_FRAGMENT( astrocade_stereo_sound )
/* sound hardware */
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
@@ -1327,7 +1326,7 @@ static MACHINE_DRIVER_START( astrocade_stereo_sound )
MDRV_SOUND_ADD("astrocade2", ASTROCADE, ASTROCADE_CLOCK/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1337,8 +1336,7 @@ MACHINE_DRIVER_END
*
*************************************/
-static MACHINE_DRIVER_START( seawolf2 )
- MDRV_IMPORT_FROM(astrocade_base)
+static MACHINE_CONFIG_DERIVED( seawolf2, astrocade_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1360,34 +1358,31 @@ static MACHINE_DRIVER_START( seawolf2 )
MDRV_SOUND_ROUTE(7, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(8, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(9, "rspeaker", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ebases )
- MDRV_IMPORT_FROM(astrocade_base)
- MDRV_IMPORT_FROM(astrocade_mono_sound)
+static MACHINE_CONFIG_DERIVED( ebases, astrocade_base )
+ MDRV_FRAGMENT_ADD(astrocade_mono_sound)
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ebases_map)
MDRV_CPU_IO_MAP(port_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spacezap )
- MDRV_IMPORT_FROM(astrocade_base)
- MDRV_IMPORT_FROM(astrocade_mono_sound)
+static MACHINE_CONFIG_DERIVED( spacezap, astrocade_base )
+ MDRV_FRAGMENT_ADD(astrocade_mono_sound)
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(spacezap_map)
MDRV_CPU_IO_MAP(port_map_mono_pattern)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wow )
- MDRV_IMPORT_FROM(astrocade_base)
- MDRV_IMPORT_FROM(astrocade_stereo_sound)
+static MACHINE_CONFIG_DERIVED( wow, astrocade_base )
+ MDRV_FRAGMENT_ADD(astrocade_stereo_sound)
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1405,11 +1400,10 @@ static MACHINE_DRIVER_START( wow )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(wow_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "center", 0.85)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gorf )
- MDRV_IMPORT_FROM(astrocade_base)
+static MACHINE_CONFIG_DERIVED( gorf, astrocade_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1433,12 +1427,11 @@ static MACHINE_DRIVER_START( gorf )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(gorf_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "upper", 0.85)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( robby )
- MDRV_IMPORT_FROM(astrocade_base)
- MDRV_IMPORT_FROM(astrocade_stereo_sound)
+static MACHINE_CONFIG_DERIVED( robby, astrocade_base )
+ MDRV_FRAGMENT_ADD(astrocade_stereo_sound)
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1446,32 +1439,29 @@ static MACHINE_DRIVER_START( robby )
MDRV_CPU_IO_MAP(port_map_stereo_pattern)
MDRV_NVRAM_HANDLER(generic_0fill)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( profpac )
- MDRV_IMPORT_FROM(astrocade_16color_base)
- MDRV_IMPORT_FROM(astrocade_stereo_sound)
+static MACHINE_CONFIG_DERIVED( profpac, astrocade_16color_base )
+ MDRV_FRAGMENT_ADD(astrocade_stereo_sound)
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(profpac_map)
MDRV_CPU_IO_MAP(port_map_16col_pattern)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( demndrgn )
- MDRV_IMPORT_FROM(astrocade_16color_base)
+static MACHINE_CONFIG_DERIVED( demndrgn, astrocade_16color_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(demndrgn_map)
MDRV_CPU_IO_MAP(port_map_16col_pattern_nosound)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tenpindx )
- MDRV_IMPORT_FROM(astrocade_16color_base)
+static MACHINE_CONFIG_DERIVED( tenpindx, astrocade_16color_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1490,7 +1480,7 @@ static MACHINE_DRIVER_START( tenpindx )
MDRV_SOUND_ADD("aysnd", AY8912, ASTROCADE_CLOCK/4) /* real clock unknown */
MDRV_SOUND_CONFIG(ay8912_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/astrocorp.c b/src/mame/drivers/astrocorp.c
index dfbb97e189b..6c57ab28a74 100644
--- a/src/mame/drivers/astrocorp.c
+++ b/src/mame/drivers/astrocorp.c
@@ -460,10 +460,7 @@ GFXDECODE_END
static const UINT16 showhand_default_eeprom[15] = {0x0001,0x0007,0x000a,0x0003,0x0000,0x0009,0x0003,0x0000,0x0002,0x0001,0x0000,0x0000,0x0000,0x0000,0x0000};
-static MACHINE_DRIVER_START( showhand )
-
- /* driver data */
- MDRV_DRIVER_DATA(astrocorp_state)
+static MACHINE_CONFIG_START( showhand, astrocorp_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
@@ -493,14 +490,13 @@ static MACHINE_DRIVER_START( showhand )
MDRV_OKIM6295_ADD("oki", XTAL_20MHz/20, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( showhanc )
- MDRV_IMPORT_FROM( showhand )
+static MACHINE_CONFIG_DERIVED( showhanc, showhand )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(showhanc_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INTERRUPT_GEN( skilldrp_irq )
@@ -512,10 +508,7 @@ static INTERRUPT_GEN( skilldrp_irq )
}
}
-static MACHINE_DRIVER_START( skilldrp )
-
- /* driver data */
- MDRV_DRIVER_DATA(astrocorp_state)
+static MACHINE_CONFIG_START( skilldrp, astrocorp_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz / 2) // JX-1689F1028N GRX586.V5
@@ -547,14 +540,13 @@ static MACHINE_DRIVER_START( skilldrp )
MDRV_OKIM6295_ADD("oki", XTAL_24MHz/24, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( speeddrp )
- MDRV_IMPORT_FROM( skilldrp )
+static MACHINE_CONFIG_DERIVED( speeddrp, skilldrp )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(speeddrp_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/astrof.c b/src/mame/drivers/astrof.c
index 6c3a5c344e9..129627f3cc8 100644
--- a/src/mame/drivers/astrof.c
+++ b/src/mame/drivers/astrof.c
@@ -955,10 +955,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( base )
-
- /* driver data */
- MDRV_DRIVER_DATA(astrof_state)
+static MACHINE_CONFIG_START( base, astrof_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MAIN_CPU_CLOCK)
@@ -970,13 +967,12 @@ static MACHINE_DRIVER_START( base )
MDRV_SCREEN_ADD("screen", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( astrof )
+static MACHINE_CONFIG_DERIVED( astrof, base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(astrof_map)
@@ -986,24 +982,22 @@ static MACHINE_DRIVER_START( astrof )
MDRV_VIDEO_UPDATE(astrof)
/* audio hardware */
- MDRV_IMPORT_FROM(astrof_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(astrof_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( abattle )
+static MACHINE_CONFIG_DERIVED( abattle, astrof )
/* basic machine hardware */
- MDRV_IMPORT_FROM(astrof)
MDRV_MACHINE_START(abattle)
MDRV_MACHINE_RESET(abattle)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spfghmk2 )
+static MACHINE_CONFIG_DERIVED( spfghmk2, base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(spfghmk2_map)
@@ -1013,14 +1007,13 @@ static MACHINE_DRIVER_START( spfghmk2 )
MDRV_VIDEO_UPDATE(astrof)
/* audio hardware */
- MDRV_IMPORT_FROM(spfghmk2_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(spfghmk2_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tomahawk )
+static MACHINE_CONFIG_DERIVED( tomahawk, base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tomahawk_map)
@@ -1030,8 +1023,8 @@ static MACHINE_DRIVER_START( tomahawk )
MDRV_VIDEO_UPDATE(tomahawk)
/* audio hardware */
- MDRV_IMPORT_FROM(tomahawk_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(tomahawk_audio)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/asuka.c b/src/mame/drivers/asuka.c
index cf3146a6ee0..a1e9801826d 100644
--- a/src/mame/drivers/asuka.c
+++ b/src/mame/drivers/asuka.c
@@ -892,10 +892,7 @@ static const tc0140syt_interface asuka_tc0140syt_intf =
"maincpu", "audiocpu"
};
-static MACHINE_DRIVER_START( bonzeadv )
-
- /* driver data */
- MDRV_DRIVER_DATA(asuka_state)
+static MACHINE_CONFIG_START( bonzeadv, asuka_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* checked on PCB */
@@ -937,12 +934,9 @@ static MACHINE_DRIVER_START( bonzeadv )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", asuka_tc0140syt_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( asuka )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(asuka_state)
+static MACHINE_CONFIG_START( asuka, asuka_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz/2) /* verified on pcb */
@@ -989,12 +983,9 @@ static MACHINE_DRIVER_START( asuka )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", asuka_tc0140syt_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( cadash )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(asuka_state)
+static MACHINE_CONFIG_START( cadash, asuka_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz/2) /* 68000p12 running at 16Mhz, verified on pcb */
@@ -1041,12 +1032,9 @@ static MACHINE_DRIVER_START( cadash )
MDRV_SOUND_ROUTE(1, "mono", 0.50)
MDRV_TC0140SYT_ADD("tc0140syt", asuka_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mofflott )
-
- /* driver data */
- MDRV_DRIVER_DATA(asuka_state)
+static MACHINE_CONFIG_START( mofflott, asuka_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz ??? */
@@ -1093,12 +1081,9 @@ static MACHINE_DRIVER_START( mofflott )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", asuka_tc0140syt_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( galmedes )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(asuka_state)
+static MACHINE_CONFIG_START( galmedes, asuka_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz ??? */
@@ -1141,12 +1126,9 @@ static MACHINE_DRIVER_START( galmedes )
MDRV_SOUND_ROUTE(1, "mono", 0.50)
MDRV_TC0140SYT_ADD("tc0140syt", asuka_tc0140syt_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( eto )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(asuka_state)
+static MACHINE_CONFIG_START( eto, asuka_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz ??? */
@@ -1189,7 +1171,7 @@ static MACHINE_DRIVER_START( eto )
MDRV_SOUND_ROUTE(1, "mono", 0.50)
MDRV_TC0140SYT_ADD("tc0140syt", asuka_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/atarifb.c b/src/mame/drivers/atarifb.c
index bc4886d508e..dc6635ea4e0 100644
--- a/src/mame/drivers/atarifb.c
+++ b/src/mame/drivers/atarifb.c
@@ -553,10 +553,7 @@ static MACHINE_RESET( atarifb )
state->counter_y_in2b = 0;
}
-static MACHINE_DRIVER_START( atarifb )
-
- /* driver data */
- MDRV_DRIVER_DATA(atarifb_state)
+static MACHINE_CONFIG_START( atarifb, atarifb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 750000)
@@ -586,22 +583,20 @@ static MACHINE_DRIVER_START( atarifb )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(atarifb)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.18)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( atarifb4 )
+static MACHINE_CONFIG_DERIVED( atarifb4, atarifb )
/* basic machine hardware */
- MDRV_IMPORT_FROM(atarifb)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(atarifb4_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( abaseb )
+static MACHINE_CONFIG_DERIVED( abaseb, atarifb )
/* basic machine hardware */
- MDRV_IMPORT_FROM(atarifb)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(abaseb_map)
@@ -612,13 +607,12 @@ static MACHINE_DRIVER_START( abaseb )
MDRV_SOUND_REPLACE("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(abaseb)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.24)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( soccer )
+static MACHINE_CONFIG_DERIVED( soccer, atarifb )
/* basic machine hardware */
- MDRV_IMPORT_FROM(atarifb)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(soccer_map)
@@ -627,7 +621,7 @@ static MACHINE_DRIVER_START( soccer )
MDRV_SCREEN_VISIBLE_AREA(0*8, 38*8-1, 2*8, 32*8-1)
MDRV_GFXDECODE(soccer)
MDRV_VIDEO_UPDATE(soccer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/atarig1.c b/src/mame/drivers/atarig1.c
index 6ca01780e2b..0907e40f068 100644
--- a/src/mame/drivers/atarig1.c
+++ b/src/mame/drivers/atarig1.c
@@ -407,8 +407,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( atarig1 )
- MDRV_DRIVER_DATA(atarig1_state)
+static MACHINE_CONFIG_START( atarig1, atarig1_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz)
@@ -434,8 +433,8 @@ static MACHINE_DRIVER_START( atarig1 )
MDRV_VIDEO_UPDATE(atarig1)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_ii_mono)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_ii_mono)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/atarig42.c b/src/mame/drivers/atarig42.c
index 034dcc2eb59..6f4b023b165 100644
--- a/src/mame/drivers/atarig42.c
+++ b/src/mame/drivers/atarig42.c
@@ -512,8 +512,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( atarig42 )
- MDRV_DRIVER_DATA(atarig42_state)
+static MACHINE_CONFIG_START( atarig42, atarig42_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz)
@@ -521,7 +520,7 @@ static MACHINE_DRIVER_START( atarig42 )
MDRV_CPU_VBLANK_INT("screen", atarigen_video_int_gen)
/* ASIC65 */
- MDRV_IMPORT_FROM(asic65)
+ MDRV_FRAGMENT_ADD(asic65)
MDRV_MACHINE_START(atarig42)
MDRV_MACHINE_RESET(atarig42)
@@ -543,8 +542,8 @@ static MACHINE_DRIVER_START( atarig42 )
MDRV_VIDEO_UPDATE(atarig42)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_iii_mono)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_iii_mono)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/atarigt.c b/src/mame/drivers/atarigt.c
index 988654fef36..9efa45da90e 100644
--- a/src/mame/drivers/atarigt.c
+++ b/src/mame/drivers/atarigt.c
@@ -790,8 +790,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( atarigt )
- MDRV_DRIVER_DATA(atarigt_state)
+static MACHINE_CONFIG_START( atarigt, atarigt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, ATARI_CLOCK_50MHz/2)
@@ -819,8 +818,8 @@ static MACHINE_DRIVER_START( atarigt )
MDRV_VIDEO_UPDATE(atarigt)
/* sound hardware */
- MDRV_IMPORT_FROM(cage)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(cage)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/atarigx2.c b/src/mame/drivers/atarigx2.c
index 2a359d2da69..0628c1d7a23 100644
--- a/src/mame/drivers/atarigx2.c
+++ b/src/mame/drivers/atarigx2.c
@@ -1388,8 +1388,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( atarigx2 )
- MDRV_DRIVER_DATA(atarigx2_state)
+static MACHINE_CONFIG_START( atarigx2, atarigx2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, ATARI_CLOCK_14MHz)
@@ -1416,8 +1415,8 @@ static MACHINE_DRIVER_START( atarigx2 )
MDRV_VIDEO_UPDATE(atarigx2)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_iiis_stereo)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_iiis_stereo)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/atarisy1.c b/src/mame/drivers/atarisy1.c
index 5f2497c6055..cf97fa658a2 100644
--- a/src/mame/drivers/atarisy1.c
+++ b/src/mame/drivers/atarisy1.c
@@ -740,8 +740,7 @@ static const ym2151_interface ym2151_config =
*
*************************************/
-static MACHINE_DRIVER_START( atarisy1 )
- MDRV_DRIVER_DATA(atarisy1_state)
+static MACHINE_CONFIG_START( atarisy1, atarisy1_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68010, ATARI_CLOCK_14MHz/2)
@@ -792,7 +791,7 @@ static MACHINE_DRIVER_START( atarisy1 )
/* via */
MDRV_VIA6522_ADD("via6522_0", 0, via_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/atarisy2.c b/src/mame/drivers/atarisy2.c
index eedcdb581f3..0d02250fb59 100644
--- a/src/mame/drivers/atarisy2.c
+++ b/src/mame/drivers/atarisy2.c
@@ -1142,8 +1142,7 @@ static const struct t11_setup t11_data =
};
-static MACHINE_DRIVER_START( atarisy2 )
- MDRV_DRIVER_DATA(atarisy2_state)
+static MACHINE_CONFIG_START( atarisy2, atarisy2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", T11, MASTER_CLOCK/2)
@@ -1188,17 +1187,16 @@ static MACHINE_DRIVER_START( atarisy2 )
MDRV_SOUND_ADD("tms", TMS5220C, MASTER_CLOCK/4/4/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.75)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sprint )
+static MACHINE_CONFIG_DERIVED( sprint, atarisy2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(atarisy2)
/* sound hardware */
MDRV_DEVICE_REMOVE("tms")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/atarisy4.c b/src/mame/drivers/atarisy4.c
index 7931a762163..a33dedcb2c8 100644
--- a/src/mame/drivers/atarisy4.c
+++ b/src/mame/drivers/atarisy4.c
@@ -694,7 +694,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( atarisy4 )
+static MACHINE_CONFIG_START( atarisy4, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", vblank_int)
@@ -714,17 +714,16 @@ static MACHINE_DRIVER_START( atarisy4 )
MDRV_VIDEO_START(atarisy4)
MDRV_VIDEO_UPDATE(atarisy4)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( airrace )
- MDRV_IMPORT_FROM(atarisy4)
+static MACHINE_CONFIG_DERIVED( airrace, atarisy4 )
MDRV_CPU_ADD("dsp1", TMS32010, 16000000)
MDRV_CPU_PROGRAM_MAP(dsp1_map)
MDRV_CPU_IO_MAP(dsp1_io_map)
MDRV_MACHINE_RESET(airrace)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/ataxx.c b/src/mame/drivers/ataxx.c
index 4771684531e..85b23e18f81 100644
--- a/src/mame/drivers/ataxx.c
+++ b/src/mame/drivers/ataxx.c
@@ -310,7 +310,7 @@ static const eeprom_interface eeprom_intf =
*
*************************************/
-static MACHINE_DRIVER_START( ataxx )
+static MACHINE_CONFIG_START( ataxx, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("master", Z80, 6000000)
@@ -332,26 +332,25 @@ static MACHINE_DRIVER_START( ataxx )
MDRV_NVRAM_HANDLER(leland)
/* video hardware */
- MDRV_IMPORT_FROM(ataxx_video)
+ MDRV_FRAGMENT_ADD(ataxx_video)
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("leland", LELAND_80186, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wsf )
+static MACHINE_CONFIG_DERIVED( wsf, ataxx )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ataxx)
/* sound hardware */
MDRV_SOUND_ADD("ymsnd", YM2151, 4000000)
MDRV_SOUND_ROUTE(0, "mono", 0.40)
MDRV_SOUND_ROUTE(1, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/atetris.c b/src/mame/drivers/atetris.c
index 24bda37117a..399ee799319 100644
--- a/src/mame/drivers/atetris.c
+++ b/src/mame/drivers/atetris.c
@@ -338,7 +338,7 @@ static const pokey_interface pokey_interface_2 =
*
*************************************/
-static MACHINE_DRIVER_START( atetris )
+static MACHINE_CONFIG_START( atetris, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,MASTER_CLOCK/8)
@@ -371,10 +371,10 @@ static MACHINE_DRIVER_START( atetris )
MDRV_SOUND_ADD("pokey2", POKEY, MASTER_CLOCK/8)
MDRV_SOUND_CONFIG(pokey_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( atetrisb2 )
+static MACHINE_CONFIG_START( atetrisb2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,BOOTLEG_CLOCK/8)
@@ -408,7 +408,7 @@ static MACHINE_DRIVER_START( atetrisb2 )
MDRV_SOUND_ADD("sn3", SN76496, BOOTLEG_CLOCK/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/attckufo.c b/src/mame/drivers/attckufo.c
index 26a8a3afb74..83781faf5ad 100644
--- a/src/mame/drivers/attckufo.c
+++ b/src/mame/drivers/attckufo.c
@@ -191,10 +191,7 @@ static const mos6560_interface attckufo_6560_intf =
};
-static MACHINE_DRIVER_START( attckufo )
-
- /* driver data */
- MDRV_DRIVER_DATA(attckufo_state)
+static MACHINE_CONFIG_START( attckufo, attckufo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 14318181/14)
@@ -218,7 +215,7 @@ static MACHINE_DRIVER_START( attckufo )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_MOS656X_ADD("mos6560", attckufo_6560_intf)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( attckufo )
ROM_REGION( 0x4000, "maincpu", 0 )
diff --git a/src/mame/drivers/avalnche.c b/src/mame/drivers/avalnche.c
index f145e546e75..94adc089298 100644
--- a/src/mame/drivers/avalnche.c
+++ b/src/mame/drivers/avalnche.c
@@ -230,10 +230,7 @@ static MACHINE_RESET( avalnche )
state->avalance_video_inverted = 0;
}
-static MACHINE_DRIVER_START( avalnche )
-
- /* driver data */
- MDRV_DRIVER_DATA(avalnche_state)
+static MACHINE_CONFIG_START( avalnche, avalnche_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,MASTER_CLOCK/16) /* clock input is the "2H" signal divided by two */
@@ -259,7 +256,7 @@ static MACHINE_DRIVER_START( avalnche )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(avalnche)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/aztarac.c b/src/mame/drivers/aztarac.c
index 55f9b34a7c8..a6939d085db 100644
--- a/src/mame/drivers/aztarac.c
+++ b/src/mame/drivers/aztarac.c
@@ -143,7 +143,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( aztarac )
+static MACHINE_CONFIG_START( aztarac, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -180,7 +180,7 @@ static MACHINE_DRIVER_START( aztarac )
MDRV_SOUND_ADD("ay4", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/backfire.c b/src/mame/drivers/backfire.c
index cad77af7830..461697bbc71 100644
--- a/src/mame/drivers/backfire.c
+++ b/src/mame/drivers/backfire.c
@@ -479,10 +479,7 @@ static MACHINE_START( backfire )
state->eeprom = machine->device("eeprom");
}
-static MACHINE_DRIVER_START( backfire )
-
- /* driver data */
- MDRV_DRIVER_DATA(backfire_state)
+static MACHINE_CONFIG_START( backfire, backfire_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000/4) /* Unconfirmed */
@@ -524,7 +521,7 @@ static MACHINE_DRIVER_START( backfire )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/badlands.c b/src/mame/drivers/badlands.c
index 3d972a94d58..5136b4c05bb 100644
--- a/src/mame/drivers/badlands.c
+++ b/src/mame/drivers/badlands.c
@@ -503,8 +503,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( badlands )
- MDRV_DRIVER_DATA(badlands_state)
+static MACHINE_CONFIG_START( badlands, badlands_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -538,7 +537,7 @@ static MACHINE_DRIVER_START( badlands )
MDRV_SOUND_ADD("ymsnd", YM2151, ATARI_CLOCK_14MHz/4)
MDRV_SOUND_ROUTE(0, "mono", 0.30)
MDRV_SOUND_ROUTE(1, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -713,8 +712,7 @@ static MACHINE_RESET( badlandsb )
// memcpy(state->bank_base, &state->bank_source_data[0x0000], 0x1000);
}
-static MACHINE_DRIVER_START( badlandsb )
- MDRV_DRIVER_DATA(badlands_state)
+static MACHINE_CONFIG_START( badlandsb, badlands_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 2800000/2)
@@ -748,7 +746,7 @@ static MACHINE_DRIVER_START( badlandsb )
MDRV_SOUND_ADD("ymsnd", YM2151, 2800000/4)
MDRV_SOUND_ROUTE(0, "mono", 0.30)
MDRV_SOUND_ROUTE(1, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/bagman.c b/src/mame/drivers/bagman.c
index 4e53b4d9dbb..3f31f53bc68 100644
--- a/src/mame/drivers/bagman.c
+++ b/src/mame/drivers/bagman.c
@@ -468,7 +468,7 @@ static const tms5110_interface bagman_tms5110_interface =
DEVCB_NULL /* rom clock - Only used to drive the data lines */
};
-static MACHINE_DRIVER_START( bagman )
+static MACHINE_CONFIG_START( bagman, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, BAGMAN_H0)
@@ -502,9 +502,9 @@ static MACHINE_DRIVER_START( bagman )
MDRV_SOUND_ADD("tms", TMS5110A, 640000)
MDRV_SOUND_CONFIG(bagman_tms5110_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pickin )
+static MACHINE_CONFIG_START( pickin, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, BAGMAN_H0)
@@ -536,7 +536,7 @@ static MACHINE_DRIVER_START( pickin )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -556,7 +556,7 @@ z80
*/
-static MACHINE_DRIVER_START( botanic )
+static MACHINE_CONFIG_START( botanic, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, BAGMAN_H0)
@@ -588,14 +588,13 @@ static MACHINE_DRIVER_START( botanic )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( squaitsa )
- MDRV_IMPORT_FROM( botanic )
+static MACHINE_CONFIG_DERIVED( squaitsa, botanic )
MDRV_SOUND_MODIFY("aysnd")
MDRV_SOUND_CONFIG(ay8910_dial_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/balsente.c b/src/mame/drivers/balsente.c
index cec711d58b7..c23417faa4a 100644
--- a/src/mame/drivers/balsente.c
+++ b/src/mame/drivers/balsente.c
@@ -1190,8 +1190,7 @@ static const cem3394_interface cem_interface =
*
*************************************/
-static MACHINE_DRIVER_START( balsente )
- MDRV_DRIVER_DATA(balsente_state)
+static MACHINE_CONFIG_START( balsente, balsente_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 5000000/4)
@@ -1250,19 +1249,18 @@ static MACHINE_DRIVER_START( balsente )
MDRV_SOUND_ADD("cem6", CEM3394, 0)
MDRV_SOUND_CONFIG(cem_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( shrike )
+static MACHINE_CONFIG_DERIVED( shrike, balsente )
/* basic machine hardware */
- MDRV_IMPORT_FROM(balsente)
MDRV_CPU_ADD("68k", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(shrike68k_map)
MDRV_QUANTUM_TIME(HZ(6000))
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/bankp.c b/src/mame/drivers/bankp.c
index df4e65f4472..ce2ba6a5b84 100644
--- a/src/mame/drivers/bankp.c
+++ b/src/mame/drivers/bankp.c
@@ -267,10 +267,7 @@ static MACHINE_RESET( bankp )
state->priority = 0;
}
-static MACHINE_DRIVER_START( bankp )
-
- /* driver data */
- MDRV_DRIVER_DATA(bankp_state)
+static MACHINE_CONFIG_START( bankp, bankp_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, BANKP_CPU_CLOCK)
@@ -305,7 +302,7 @@ static MACHINE_DRIVER_START( bankp )
MDRV_SOUND_ADD("sn3", SN76489, BANKP_SN76496_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/baraduke.c b/src/mame/drivers/baraduke.c
index 627aaabda50..c58d0b76b54 100644
--- a/src/mame/drivers/baraduke.c
+++ b/src/mame/drivers/baraduke.c
@@ -390,7 +390,7 @@ static const namco_interface namco_config =
-static MACHINE_DRIVER_START( baraduke )
+static MACHINE_CONFIG_START( baraduke, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809,49152000/32)
@@ -425,7 +425,7 @@ static MACHINE_DRIVER_START( baraduke )
MDRV_SOUND_ADD("namco", NAMCO_CUS30, 49152000/2048)
MDRV_SOUND_CONFIG(namco_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/batman.c b/src/mame/drivers/batman.c
index f9024359af1..c402ec2bee5 100644
--- a/src/mame/drivers/batman.c
+++ b/src/mame/drivers/batman.c
@@ -232,8 +232,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( batman )
- MDRV_DRIVER_DATA(batman_state)
+static MACHINE_CONFIG_START( batman, batman_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz)
@@ -258,8 +257,8 @@ static MACHINE_DRIVER_START( batman )
MDRV_VIDEO_UPDATE(batman)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_iii_mono)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_iii_mono)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/battlane.c b/src/mame/drivers/battlane.c
index 6823d21d41a..10e9d2f7a89 100644
--- a/src/mame/drivers/battlane.c
+++ b/src/mame/drivers/battlane.c
@@ -293,10 +293,7 @@ static MACHINE_RESET( battlane )
state->cpu_control = 0;
}
-static MACHINE_DRIVER_START( battlane )
-
- /* driver data */
- MDRV_DRIVER_DATA(battlane_state)
+static MACHINE_CONFIG_START( battlane, battlane_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 1250000) /* 1.25 MHz ? */
@@ -330,7 +327,7 @@ static MACHINE_DRIVER_START( battlane )
MDRV_SOUND_ADD("ymsnd", YM3526, 3000000)
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/battlera.c b/src/mame/drivers/battlera.c
index 5d01e2a82f7..40b741ace83 100644
--- a/src/mame/drivers/battlera.c
+++ b/src/mame/drivers/battlera.c
@@ -241,7 +241,7 @@ static const c6280_interface c6280_config =
"audiocpu"
};
-static MACHINE_DRIVER_START( battlera )
+static MACHINE_CONFIG_START( battlera, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H6280,21477200/3)
@@ -281,7 +281,7 @@ static MACHINE_DRIVER_START( battlera )
MDRV_SOUND_CONFIG(c6280_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.60)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/battlex.c b/src/mame/drivers/battlex.c
index a76f6c9d49f..18afb85231a 100644
--- a/src/mame/drivers/battlex.c
+++ b/src/mame/drivers/battlex.c
@@ -210,10 +210,7 @@ static MACHINE_RESET( battlex )
state->scroll_msb = 0;
}
-static MACHINE_DRIVER_START( battlex )
-
- /* driver data */
- MDRV_DRIVER_DATA(battlex_state)
+static MACHINE_CONFIG_START( battlex, battlex_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,10000000/2 ) /* 10 MHz, divided ? (Z80A CPU) */
@@ -241,7 +238,7 @@ static MACHINE_DRIVER_START( battlex )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, 10000000/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/battlnts.c b/src/mame/drivers/battlnts.c
index 1b70d75a7a2..7243e7f861e 100644
--- a/src/mame/drivers/battlnts.c
+++ b/src/mame/drivers/battlnts.c
@@ -242,10 +242,7 @@ static MACHINE_RESET( battlnts )
state->spritebank = 0;
}
-static MACHINE_DRIVER_START( battlnts )
-
- /* driver data */
- MDRV_DRIVER_DATA(battlnts_state)
+static MACHINE_CONFIG_START( battlnts, battlnts_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, XTAL_24MHz / 2 /* 3000000*4? */)
@@ -281,7 +278,7 @@ static MACHINE_DRIVER_START( battlnts )
MDRV_SOUND_ADD("ym2", YM3812, XTAL_24MHz / 8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/bbusters.c b/src/mame/drivers/bbusters.c
index 121426ebb86..601f6d84e23 100644
--- a/src/mame/drivers/bbusters.c
+++ b/src/mame/drivers/bbusters.c
@@ -716,9 +716,7 @@ static VIDEO_EOF( mechatt )
buffer_spriteram16_w(space,0,0,0xffff);
}
-static MACHINE_DRIVER_START( bbusters )
-
- MDRV_DRIVER_DATA( bbusters_state )
+static MACHINE_CONFIG_START( bbusters, bbusters_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -755,11 +753,9 @@ static MACHINE_DRIVER_START( bbusters )
MDRV_SOUND_ROUTE(0, "rspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( mechatt )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA( bbusters_state )
+static MACHINE_CONFIG_START( mechatt, bbusters_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -794,7 +790,7 @@ static MACHINE_DRIVER_START( mechatt )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.50)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/beaminv.c b/src/mame/drivers/beaminv.c
index 327d9b8e0f8..e649d1757d0 100644
--- a/src/mame/drivers/beaminv.c
+++ b/src/mame/drivers/beaminv.c
@@ -329,10 +329,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( beaminv )
-
- /* driver data */
- MDRV_DRIVER_DATA(beaminv_state)
+static MACHINE_CONFIG_START( beaminv, beaminv_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 2000000) /* 2 MHz ? */
@@ -351,7 +348,7 @@ static MACHINE_DRIVER_START( beaminv )
MDRV_SCREEN_VISIBLE_AREA(0, 247, 16, 231)
MDRV_SCREEN_REFRESH_RATE(60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/beathead.c b/src/mame/drivers/beathead.c
index 9db3852b5ef..93311f6d705 100644
--- a/src/mame/drivers/beathead.c
+++ b/src/mame/drivers/beathead.c
@@ -393,8 +393,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( beathead )
- MDRV_DRIVER_DATA(beathead_state)
+static MACHINE_CONFIG_START( beathead, beathead_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ASAP, ATARI_CLOCK_14MHz)
@@ -415,8 +414,8 @@ static MACHINE_DRIVER_START( beathead )
MDRV_PALETTE_LENGTH(32768)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_iii_mono)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_iii_mono)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/beezer.c b/src/mame/drivers/beezer.c
index 0cca11c5b3f..7a4e5aa613f 100644
--- a/src/mame/drivers/beezer.c
+++ b/src/mame/drivers/beezer.c
@@ -72,7 +72,7 @@ static INPUT_PORTS_START( beezer )
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( beezer )
+static MACHINE_CONFIG_START( beezer, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 1000000) /* 1 MHz */
@@ -102,7 +102,7 @@ static MACHINE_DRIVER_START( beezer )
/* via */
MDRV_VIA6522_ADD("via6522_0", 0, b_via_0_interface)
MDRV_VIA6522_ADD("via6522_1", 0, b_via_1_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/berzerk.c b/src/mame/drivers/berzerk.c
index 943f3813b4e..ba64b7f960b 100644
--- a/src/mame/drivers/berzerk.c
+++ b/src/mame/drivers/berzerk.c
@@ -1043,7 +1043,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( berzerk )
+static MACHINE_CONFIG_START( berzerk, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CPU_CLOCK)
@@ -1073,16 +1073,15 @@ static MACHINE_DRIVER_START( berzerk )
MDRV_SOUND_ADD("exidy", EXIDY, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( frenzy )
+static MACHINE_CONFIG_DERIVED( frenzy, berzerk )
/* basic machine hardware */
- MDRV_IMPORT_FROM(berzerk)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(frenzy_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/bestleag.c b/src/mame/drivers/bestleag.c
index e23bfa56d35..9781242d7be 100644
--- a/src/mame/drivers/bestleag.c
+++ b/src/mame/drivers/bestleag.c
@@ -328,7 +328,7 @@ static GFXDECODE_START( bestleag )
GFXDECODE_ENTRY( "gfx2", 0, bestleag_char16layout, 0x300, 16 )
GFXDECODE_END
-static MACHINE_DRIVER_START( bestleag )
+static MACHINE_CONFIG_START( bestleag, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(bestleag_map)
MDRV_CPU_VBLANK_INT("screen", irq6_line_hold)
@@ -351,13 +351,12 @@ static MACHINE_DRIVER_START( bestleag )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH) /* Hand-tuned */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bestleaw )
- MDRV_IMPORT_FROM(bestleag)
+static MACHINE_CONFIG_DERIVED( bestleaw, bestleag )
MDRV_VIDEO_UPDATE(bestleaw)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Rom Loading */
diff --git a/src/mame/drivers/bfcobra.c b/src/mame/drivers/bfcobra.c
index 215f9357de8..2f938da24e1 100644
--- a/src/mame/drivers/bfcobra.c
+++ b/src/mame/drivers/bfcobra.c
@@ -1729,7 +1729,7 @@ static INTERRUPT_GEN( vblank_gen )
update_irqs(device->machine);
}
-static MACHINE_DRIVER_START( bfcobra )
+static MACHINE_CONFIG_START( bfcobra, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80, Z80_XTAL)
MDRV_CPU_PROGRAM_MAP(z80_prog_map)
MDRV_CPU_IO_MAP(z80_io_map)
@@ -1767,7 +1767,7 @@ static MACHINE_DRIVER_START( bfcobra )
MDRV_ACIA6850_ADD("acia6850_0", z80_acia_if)
MDRV_ACIA6850_ADD("acia6850_1", m6809_acia_if)
MDRV_ACIA6850_ADD("acia6850_2", data_acia_if)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/bfm_sc1.c b/src/mame/drivers/bfm_sc1.c
index f3c57d2f40a..3dbd31aebff 100644
--- a/src/mame/drivers/bfm_sc1.c
+++ b/src/mame/drivers/bfm_sc1.c
@@ -1240,7 +1240,7 @@ INPUT_PORTS_END
// machine driver for scorpion1 board ///////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
-static MACHINE_DRIVER_START( scorpion1 )
+static MACHINE_CONFIG_START( scorpion1, driver_data_t )
MDRV_MACHINE_RESET(bfm_sc1) // main scorpion1 board initialisation
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/4) // 6809 CPU at 1 Mhz
MDRV_CPU_PROGRAM_MAP(memmap) // setup read and write memorymap
@@ -1252,14 +1252,13 @@ static MACHINE_DRIVER_START( scorpion1 )
MDRV_NVRAM_HANDLER(generic_0fill)
MDRV_DEFAULT_LAYOUT(layout_awpvid14)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/////////////////////////////////////////////////////////////////////////////////////
// machine driver for scorpion1 board + adder2 extension ////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
-static MACHINE_DRIVER_START( scorpion1_adder2 )
- MDRV_IMPORT_FROM( scorpion1 )
+static MACHINE_CONFIG_DERIVED( scorpion1_adder2, scorpion1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(memmap_adder2) // setup read and write memorymap
@@ -1283,20 +1282,19 @@ static MACHINE_DRIVER_START( scorpion1_adder2 )
MDRV_CPU_ADD("adder2", M6809, ADDER_CLOCK/4 ) // adder2 board 6809 CPU at 2 Mhz
MDRV_CPU_PROGRAM_MAP(adder2_memmap) // setup adder2 board memorymap
MDRV_CPU_VBLANK_INT("adder",adder2_vbl) // board has a VBL IRQ
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/////////////////////////////////////////////////////////////////////////////////////
// machine driver for scorpion1 board ///////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
-static MACHINE_DRIVER_START( scorpion1_nec_uk )
- MDRV_IMPORT_FROM( scorpion1 )
+static MACHINE_CONFIG_DERIVED( scorpion1_nec_uk, scorpion1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sc1_nec_uk) // setup read and write memorymap
MDRV_SOUND_ADD("upd",UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
// ROM definition ///////////////////////////////////////////////////////////////////
diff --git a/src/mame/drivers/bfm_sc2.c b/src/mame/drivers/bfm_sc2.c
index f155b45f065..a0e9c9088bc 100644
--- a/src/mame/drivers/bfm_sc2.c
+++ b/src/mame/drivers/bfm_sc2.c
@@ -2216,7 +2216,7 @@ INPUT_PORTS_END
// machine driver for scorpion2 board + adder2 expansion //////////////////
///////////////////////////////////////////////////////////////////////////
-static MACHINE_DRIVER_START( scorpion2_vid )
+static MACHINE_CONFIG_START( scorpion2_vid, driver_data_t )
MDRV_MACHINE_RESET( init ) // main scorpion2 board initialisation
MDRV_QUANTUM_TIME(HZ(960)) // needed for serial communication !!
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/4 ) // 6809 CPU at 2 Mhz
@@ -2250,7 +2250,7 @@ static MACHINE_DRIVER_START( scorpion2_vid )
MDRV_SOUND_ADD("ymsnd", YM2413, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static void sc2_common_init(running_machine *machine, int decrypt)
{
@@ -3967,7 +3967,7 @@ INPUT_PORTS_END
/* machine driver for scorpion2 board */
-static MACHINE_DRIVER_START( scorpion2 )
+static MACHINE_CONFIG_START( scorpion2, driver_data_t )
MDRV_MACHINE_RESET(awp_init)
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/4 )
MDRV_CPU_PROGRAM_MAP(sc2_memmap)
@@ -3984,19 +3984,18 @@ static MACHINE_DRIVER_START( scorpion2 )
/* video hardware */
MDRV_DEFAULT_LAYOUT(layout_awpvid14)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* machine driver for scorpion3 board */
-static MACHINE_DRIVER_START( scorpion3 )
- MDRV_IMPORT_FROM( scorpion2 )
+static MACHINE_CONFIG_DERIVED( scorpion3, scorpion2 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sc3_memmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* machine driver for scorpion2 board + matrix board */
-static MACHINE_DRIVER_START( scorpion2_dm01 )
+static MACHINE_CONFIG_START( scorpion2_dm01, driver_data_t )
MDRV_MACHINE_RESET(dm01_init)
MDRV_QUANTUM_TIME(HZ(960)) // needed for serial communication !!
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/4 )
@@ -4028,7 +4027,7 @@ static MACHINE_DRIVER_START( scorpion2_dm01 )
MDRV_CPU_ADD("matrix", M6809, 2000000 ) /* matrix board 6809 CPU at 2 Mhz ?? I don't know the exact freq.*/
MDRV_CPU_PROGRAM_MAP(bfm_dm01_memmap)
MDRV_CPU_PERIODIC_INT(bfm_dm01_vbl, 1500 ) /* generate 1500 NMI's per second ?? what is the exact freq?? */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static void sc2awp_common_init(running_machine *machine,int reels, int decrypt)
{
diff --git a/src/mame/drivers/bfmsys85.c b/src/mame/drivers/bfmsys85.c
index b564cf90d48..ae050f92ca7 100644
--- a/src/mame/drivers/bfmsys85.c
+++ b/src/mame/drivers/bfmsys85.c
@@ -433,7 +433,7 @@ ADDRESS_MAP_END
// machine driver for system85 board //////////////////////////////////////
-static MACHINE_DRIVER_START( bfmsys85 )
+static MACHINE_CONFIG_START( bfmsys85, driver_data_t )
MDRV_MACHINE_START(bfm_sys85) // main system85 board initialisation
MDRV_MACHINE_RESET(bfm_sys85)
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/4) // 6809 CPU at 1 Mhz
@@ -449,7 +449,7 @@ static MACHINE_DRIVER_START( bfmsys85 )
MDRV_NVRAM_HANDLER(generic_0fill) // load/save nv RAM
MDRV_DEFAULT_LAYOUT(layout_awpvid16)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
// input ports for system85 board /////////////////////////////////////////
diff --git a/src/mame/drivers/big10.c b/src/mame/drivers/big10.c
index 1f9a8635317..5156d560eba 100644
--- a/src/mame/drivers/big10.c
+++ b/src/mame/drivers/big10.c
@@ -237,7 +237,7 @@ static const ay8910_interface ay8910_config =
* Machine Driver *
**************************************/
-static MACHINE_DRIVER_START( big10 )
+static MACHINE_CONFIG_START( big10, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6) /* guess */
@@ -268,7 +268,7 @@ static MACHINE_DRIVER_START( big10 )
MDRV_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK/12) /* guess */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**************************************
diff --git a/src/mame/drivers/bigevglf.c b/src/mame/drivers/bigevglf.c
index 2fedba653d7..82d1b58be04 100644
--- a/src/mame/drivers/bigevglf.c
+++ b/src/mame/drivers/bigevglf.c
@@ -503,10 +503,7 @@ static MACHINE_RESET( bigevglf )
}
-static MACHINE_DRIVER_START( bigevglf )
-
- /* driver data */
- MDRV_DRIVER_DATA(bigevglf_state)
+static MACHINE_CONFIG_START( bigevglf, bigevglf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,10000000/2) /* 5 MHz ? */
@@ -564,7 +561,7 @@ static MACHINE_DRIVER_START( bigevglf )
// pin 1 SOLO 8' not mapped
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/bigfghtr.c b/src/mame/drivers/bigfghtr.c
index ab392cb77e4..d3e0dcfbb54 100644
--- a/src/mame/drivers/bigfghtr.c
+++ b/src/mame/drivers/bigfghtr.c
@@ -559,8 +559,7 @@ static MACHINE_RESET( bigfghtr )
}
-static MACHINE_DRIVER_START( bigfghtr )
- MDRV_DRIVER_DATA(bigfghtr_state)
+static MACHINE_CONFIG_START( bigfghtr, bigfghtr_state )
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz?? */
MDRV_CPU_PROGRAM_MAP(mainmem)
@@ -602,7 +601,7 @@ static MACHINE_DRIVER_START( bigfghtr )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( skyrobo )
diff --git a/src/mame/drivers/bigstrkb.c b/src/mame/drivers/bigstrkb.c
index f95f4283bd5..5dd37db9b89 100644
--- a/src/mame/drivers/bigstrkb.c
+++ b/src/mame/drivers/bigstrkb.c
@@ -194,9 +194,7 @@ GFXDECODE_END
/* Machine Driver */
-static MACHINE_DRIVER_START( bigstrkb )
-
- MDRV_DRIVER_DATA( bigstrkb_state )
+static MACHINE_CONFIG_START( bigstrkb, bigstrkb_state )
MDRV_CPU_ADD("maincpu", M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(bigstrkb_map)
@@ -227,7 +225,7 @@ static MACHINE_DRIVER_START( bigstrkb )
MDRV_OKIM6295_ADD("oki2", 4000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.30)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Rom Loading */
diff --git a/src/mame/drivers/bingoc.c b/src/mame/drivers/bingoc.c
index 595d11ea625..2c9e14591ba 100644
--- a/src/mame/drivers/bingoc.c
+++ b/src/mame/drivers/bingoc.c
@@ -125,7 +125,7 @@ static INPUT_PORTS_START( bingoc )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( bingoc )
+static MACHINE_CONFIG_START( bingoc, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000,8000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -160,7 +160,7 @@ static MACHINE_DRIVER_START( bingoc )
MDRV_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( bingoc )
ROM_REGION( 0x40000, "maincpu", 0 )
diff --git a/src/mame/drivers/bingor.c b/src/mame/drivers/bingor.c
index 6cbb62cf796..9eb1b0b7a73 100644
--- a/src/mame/drivers/bingor.c
+++ b/src/mame/drivers/bingor.c
@@ -602,7 +602,7 @@ static GFXDECODE_START( bingor )
GFXDECODE_END
-static MACHINE_DRIVER_START( bingor )
+static MACHINE_CONFIG_START( bingor, driver_data_t )
MDRV_CPU_ADD("maincpu", I80186, 14000000 ) //?? Mhz
MDRV_CPU_PROGRAM_MAP(bingor_map)
MDRV_CPU_IO_MAP(bingor_io)
@@ -632,7 +632,7 @@ static MACHINE_DRIVER_START( bingor )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("saa", SAA1099, 6000000 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
// I doubt we need to load the eeproms
diff --git a/src/mame/drivers/bionicc.c b/src/mame/drivers/bionicc.c
index dd7bf7782f1..f1d44bc7024 100644
--- a/src/mame/drivers/bionicc.c
+++ b/src/mame/drivers/bionicc.c
@@ -356,10 +356,7 @@ static MACHINE_RESET( bionicc )
state->soundcommand = 0;
}
-static MACHINE_DRIVER_START( bionicc )
-
- /* driver data */
- MDRV_DRIVER_DATA(bionicc_state)
+static MACHINE_CONFIG_START( bionicc, bionicc_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK / 2) /* 12 MHz - verified in schematics */
@@ -398,7 +395,7 @@ static MACHINE_DRIVER_START( bionicc )
MDRV_SOUND_ADD("ymsnd", YM2151, 3579545)
MDRV_SOUND_ROUTE(0, "mono", 0.60)
MDRV_SOUND_ROUTE(1, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/bishi.c b/src/mame/drivers/bishi.c
index 803a5fa6d89..212145226cc 100644
--- a/src/mame/drivers/bishi.c
+++ b/src/mame/drivers/bishi.c
@@ -418,10 +418,7 @@ static MACHINE_RESET( bishi )
state->cur_control2 = 0;
}
-static MACHINE_DRIVER_START( bishi )
-
- /* driver data */
- MDRV_DRIVER_DATA(bishi_state)
+static MACHINE_CONFIG_START( bishi, bishi_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CPU_CLOCK) /* 12MHz (24MHz OSC / 2 ) */
@@ -457,7 +454,7 @@ static MACHINE_DRIVER_START( bishi )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
// ROM definitions
diff --git a/src/mame/drivers/bishjan.c b/src/mame/drivers/bishjan.c
index 92377f7bf1e..534b2575cd7 100644
--- a/src/mame/drivers/bishjan.c
+++ b/src/mame/drivers/bishjan.c
@@ -825,7 +825,7 @@ static INTERRUPT_GEN( bishjan_interrupt )
}
}
-static MACHINE_DRIVER_START( bishjan )
+static MACHINE_CONFIG_START( bishjan, driver_data_t )
MDRV_CPU_ADD("maincpu", H83044, XTAL_44_1MHz / 3)
MDRV_CPU_PROGRAM_MAP( bishjan_map)
MDRV_CPU_VBLANK_INT_HACK(bishjan_interrupt,2)
@@ -844,7 +844,7 @@ static MACHINE_DRIVER_START( bishjan )
MDRV_VIDEO_START( bishjan )
MDRV_VIDEO_UPDATE( bishjan )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Sakura Love - Ying Hua Lian
@@ -856,7 +856,7 @@ static INTERRUPT_GEN( saklove_interrupt )
cpu_set_input_line_and_vector(device,0,HOLD_LINE,0x4c/4);
}
-static MACHINE_DRIVER_START( saklove )
+static MACHINE_CONFIG_START( saklove, driver_data_t )
MDRV_CPU_ADD("maincpu", I80188, XTAL_20MHz ) // !! AMD AM188-EM !!
MDRV_CPU_PROGRAM_MAP( saklove_map)
MDRV_CPU_IO_MAP( saklove_io)
@@ -886,7 +886,7 @@ static MACHINE_DRIVER_START( saklove )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_12MHz / 4) // ? chip and clock unknown
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/bking.c b/src/mame/drivers/bking.c
index b651678c628..694f5559a31 100644
--- a/src/mame/drivers/bking.c
+++ b/src/mame/drivers/bking.c
@@ -518,10 +518,7 @@ static MACHINE_RESET( bking3 )
state->ddr_c = 0;
}
-static MACHINE_DRIVER_START( bking )
-
- /* driver data */
- MDRV_DRIVER_DATA(buggychl_state)
+static MACHINE_CONFIG_START( bking, buggychl_state )
/* basic machine hardware */
MDRV_CPU_ADD("main_cpu", Z80, XTAL_12MHz/4) /* 3 MHz */
@@ -567,10 +564,9 @@ static MACHINE_DRIVER_START( bking )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bking3 )
- MDRV_IMPORT_FROM(bking)
+static MACHINE_CONFIG_DERIVED( bking3, bking )
MDRV_CPU_MODIFY("main_cpu")
MDRV_CPU_IO_MAP(bking3_io_map)
@@ -582,7 +578,7 @@ static MACHINE_DRIVER_START( bking3 )
MDRV_MACHINE_RESET(bking3)
MDRV_QUANTUM_TIME(HZ(6000))
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/blackt96.c b/src/mame/drivers/blackt96.c
index 7a93c2faa54..242820e86b5 100644
--- a/src/mame/drivers/blackt96.c
+++ b/src/mame/drivers/blackt96.c
@@ -471,7 +471,7 @@ ADDRESS_MAP_END
-static MACHINE_DRIVER_START( blackt96 )
+static MACHINE_CONFIG_START( blackt96, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 18000000 /2)
MDRV_CPU_PROGRAM_MAP(blackt96_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -503,7 +503,7 @@ static MACHINE_DRIVER_START( blackt96 )
MDRV_OKIM6295_ADD("oki2", 8000000/8, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.47)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.47)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( blackt96 )
diff --git a/src/mame/drivers/bladestl.c b/src/mame/drivers/bladestl.c
index 5a72fab7df4..b8228a62058 100644
--- a/src/mame/drivers/bladestl.c
+++ b/src/mame/drivers/bladestl.c
@@ -333,10 +333,7 @@ static MACHINE_RESET( bladestl )
state->last_track[i] = 0;
}
-static MACHINE_DRIVER_START( bladestl )
-
- /* driver data */
- MDRV_DRIVER_DATA(bladestl_state)
+static MACHINE_CONFIG_START( bladestl, bladestl_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, 24000000/2) /* 24MHz/2 (?) */
@@ -380,7 +377,7 @@ static MACHINE_DRIVER_START( bladestl )
MDRV_SOUND_ADD("ymsnd", YM2203, 3579545)
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/blitz.c b/src/mame/drivers/blitz.c
index a7ee4c8501f..59516320106 100644
--- a/src/mame/drivers/blitz.c
+++ b/src/mame/drivers/blitz.c
@@ -766,7 +766,7 @@ static const mc6845_interface mc6845_intf =
* Machine Drivers *
*********************************************/
-static MACHINE_DRIVER_START( megadpkr )
+static MACHINE_CONFIG_START( megadpkr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, CPU_CLOCK)
@@ -797,7 +797,7 @@ static MACHINE_DRIVER_START( megadpkr )
MDRV_VIDEO_START(megadpkr)
MDRV_VIDEO_UPDATE(megadpkr)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*********************************************
diff --git a/src/mame/drivers/blktiger.c b/src/mame/drivers/blktiger.c
index 4f5bbc30970..efb1f2928f6 100644
--- a/src/mame/drivers/blktiger.c
+++ b/src/mame/drivers/blktiger.c
@@ -320,10 +320,7 @@ static MACHINE_RESET( blktiger )
state->i8751_latch = 0;
}
-static MACHINE_DRIVER_START( blktiger )
-
- /* driver data */
- MDRV_DRIVER_DATA(blktiger_state)
+static MACHINE_CONFIG_START( blktiger, blktiger_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_24MHz/4) /* verified on pcb */
@@ -368,15 +365,14 @@ static MACHINE_DRIVER_START( blktiger )
MDRV_SOUND_ADD("ym2", YM2203, XTAL_3_579545MHz) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( blktigerbl )
- MDRV_IMPORT_FROM(blktiger)
+static MACHINE_CONFIG_DERIVED( blktigerbl, blktiger )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(blktigerbl_io_map)
MDRV_DEVICE_REMOVE("mcu")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/blmbycar.c b/src/mame/drivers/blmbycar.c
index 25cda9700f7..425348992f8 100644
--- a/src/mame/drivers/blmbycar.c
+++ b/src/mame/drivers/blmbycar.c
@@ -356,10 +356,7 @@ static MACHINE_RESET( blmbycar )
}
-static MACHINE_DRIVER_START( blmbycar )
-
- /* driver data */
- MDRV_DRIVER_DATA(blmbycar_state)
+static MACHINE_CONFIG_START( blmbycar, blmbycar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* ? */
@@ -389,7 +386,7 @@ static MACHINE_DRIVER_START( blmbycar )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_START( watrball )
@@ -406,10 +403,7 @@ static MACHINE_RESET( watrball )
state->retvalue = 0;
}
-static MACHINE_DRIVER_START( watrball )
-
- /* driver data */
- MDRV_DRIVER_DATA(blmbycar_state)
+static MACHINE_CONFIG_START( watrball, blmbycar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* ? */
@@ -439,7 +433,7 @@ static MACHINE_DRIVER_START( watrball )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/blockade.c b/src/mame/drivers/blockade.c
index 807499dc919..a28a8933507 100644
--- a/src/mame/drivers/blockade.c
+++ b/src/mame/drivers/blockade.c
@@ -480,10 +480,7 @@ static MACHINE_RESET( blockade )
state->just_been_reset = 0;
}
-static MACHINE_DRIVER_START( blockade )
-
- /* driver data */
- MDRV_DRIVER_DATA(blockade_state)
+static MACHINE_CONFIG_START( blockade, blockade_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, MASTER_CLOCK/10)
@@ -519,24 +516,21 @@ static MACHINE_DRIVER_START( blockade )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(blockade)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( comotion )
- MDRV_IMPORT_FROM(blockade)
+static MACHINE_CONFIG_DERIVED( comotion, blockade )
MDRV_PALETTE_INIT(bw)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( blasto )
- MDRV_IMPORT_FROM(blockade)
+static MACHINE_CONFIG_DERIVED( blasto, blockade )
MDRV_GFXDECODE(blasto)
MDRV_PALETTE_INIT(bw)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hustle )
- MDRV_IMPORT_FROM(blockade)
+static MACHINE_CONFIG_DERIVED( hustle, blockade )
MDRV_GFXDECODE(blasto)
MDRV_PALETTE_INIT(yellow)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/blockhl.c b/src/mame/drivers/blockhl.c
index 639b58e20db..7d50972857b 100644
--- a/src/mame/drivers/blockhl.c
+++ b/src/mame/drivers/blockhl.c
@@ -217,10 +217,7 @@ static MACHINE_RESET( blockhl )
state->rombank = 0;
}
-static MACHINE_DRIVER_START( blockhl )
-
- /* driver data */
- MDRV_DRIVER_DATA(blockhl_state)
+static MACHINE_CONFIG_START( blockhl, blockhl_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI,3000000) /* Konami custom 052526 */
@@ -257,7 +254,7 @@ static MACHINE_DRIVER_START( blockhl )
MDRV_SOUND_ADD("ymsnd", YM2151, 3579545)
MDRV_SOUND_ROUTE(0, "mono", 0.60)
MDRV_SOUND_ROUTE(1, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/blockout.c b/src/mame/drivers/blockout.c
index 01b0b69b246..e1ec10acb31 100644
--- a/src/mame/drivers/blockout.c
+++ b/src/mame/drivers/blockout.c
@@ -269,10 +269,7 @@ static MACHINE_RESET( blockout )
state->color = 0;
}
-static MACHINE_DRIVER_START( blockout )
-
- /* driver data */
- MDRV_DRIVER_DATA(blockout_state)
+static MACHINE_CONFIG_START( blockout, blockout_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* MRH - 8.76 makes gfx/adpcm samples sync better -- but 10 is correct speed*/
@@ -309,7 +306,7 @@ static MACHINE_DRIVER_START( blockout )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/bloodbro.c b/src/mame/drivers/bloodbro.c
index 52e869ddac1..32aac8074ee 100644
--- a/src/mame/drivers/bloodbro.c
+++ b/src/mame/drivers/bloodbro.c
@@ -433,7 +433,7 @@ GFXDECODE_END
/* Machine Drivers */
-static MACHINE_DRIVER_START( bloodbro )
+static MACHINE_CONFIG_START( bloodbro, driver_data_t )
// basic machine hardware
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz/2) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(bloodbro_map)
@@ -460,10 +460,9 @@ static MACHINE_DRIVER_START( bloodbro )
// sound hardware
SEIBU_SOUND_SYSTEM_YM3812_RAIDEN_INTERFACE(XTAL_7_15909MHz/2, XTAL_12MHz/12)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( weststry )
- MDRV_IMPORT_FROM(bloodbro)
+static MACHINE_CONFIG_DERIVED( weststry, bloodbro )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(weststry_map)
@@ -473,16 +472,15 @@ static MACHINE_DRIVER_START( weststry )
MDRV_PALETTE_LENGTH(1024)
MDRV_VIDEO_UPDATE(weststry)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( skysmash )
- MDRV_IMPORT_FROM(bloodbro)
+static MACHINE_CONFIG_DERIVED( skysmash, bloodbro )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", irq2_line_hold)
MDRV_VIDEO_UPDATE(skysmash)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/blstroid.c b/src/mame/drivers/blstroid.c
index 2338a7346c3..c1c95ffb720 100644
--- a/src/mame/drivers/blstroid.c
+++ b/src/mame/drivers/blstroid.c
@@ -200,8 +200,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( blstroid )
- MDRV_DRIVER_DATA(blstroid_state)
+static MACHINE_CONFIG_START( blstroid, blstroid_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -227,8 +226,8 @@ static MACHINE_DRIVER_START( blstroid )
MDRV_VIDEO_UPDATE(blstroid)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_i_stereo)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_i_stereo)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/blueprnt.c b/src/mame/drivers/blueprnt.c
index 62c9df112a3..d813335eb1f 100644
--- a/src/mame/drivers/blueprnt.c
+++ b/src/mame/drivers/blueprnt.c
@@ -297,10 +297,7 @@ static MACHINE_RESET( blueprnt )
}
-static MACHINE_DRIVER_START( blueprnt )
-
- /* driver data */
- MDRV_DRIVER_DATA(blueprnt_state)
+static MACHINE_CONFIG_START( blueprnt, blueprnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 7000000/2) // 3.5 MHz
@@ -340,7 +337,7 @@ static MACHINE_DRIVER_START( blueprnt )
MDRV_SOUND_ADD("ay2", AY8910, 10000000/2/2/2/2)
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/bmcbowl.c b/src/mame/drivers/bmcbowl.c
index 2b0f6212577..50103633873 100644
--- a/src/mame/drivers/bmcbowl.c
+++ b/src/mame/drivers/bmcbowl.c
@@ -492,7 +492,7 @@ static INTERRUPT_GEN( bmc_interrupt )
cpu_set_input_line(device, 2, HOLD_LINE);
}
-static MACHINE_DRIVER_START( bmcbowl )
+static MACHINE_CONFIG_START( bmcbowl, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 21477270/2 )
MDRV_CPU_PROGRAM_MAP(bmcbowl_mem)
MDRV_CPU_VBLANK_INT_HACK(bmc_interrupt,2)
@@ -526,7 +526,7 @@ static MACHINE_DRIVER_START( bmcbowl )
/* via */
MDRV_VIA6522_ADD("via6522_0", 1000000, via_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( bmcbowl )
ROM_REGION( 0x200000, "maincpu", 0 ) /* 68000 Code */
diff --git a/src/mame/drivers/bnstars.c b/src/mame/drivers/bnstars.c
index 7404d1ff703..427ada851ad 100644
--- a/src/mame/drivers/bnstars.c
+++ b/src/mame/drivers/bnstars.c
@@ -1324,7 +1324,7 @@ static MACHINE_RESET( ms32 )
}
-static MACHINE_DRIVER_START( bnstars )
+static MACHINE_CONFIG_START( bnstars, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V70, 20000000) // 20MHz
@@ -1371,7 +1371,7 @@ static MACHINE_DRIVER_START( bnstars )
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( bnstars1 )
diff --git a/src/mame/drivers/bogeyman.c b/src/mame/drivers/bogeyman.c
index af1c641cd28..25af886893c 100644
--- a/src/mame/drivers/bogeyman.c
+++ b/src/mame/drivers/bogeyman.c
@@ -242,10 +242,7 @@ static const ay8910_interface ay8910_config =
DEVCB_NULL
};
-static MACHINE_DRIVER_START( bogeyman )
-
- /* driver data */
- MDRV_DRIVER_DATA(bogeyman_state)
+static MACHINE_CONFIG_START( bogeyman, bogeyman_state )
// basic machine hardware
MDRV_CPU_ADD("maincpu", M6502, 1500000) /* Verified */
@@ -281,7 +278,7 @@ static MACHINE_DRIVER_START( bogeyman )
MDRV_SOUND_ADD("ay2", AY8910, 1500000) /* Verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/bombjack.c b/src/mame/drivers/bombjack.c
index 8ffdab68c7e..25d6dfa8034 100644
--- a/src/mame/drivers/bombjack.c
+++ b/src/mame/drivers/bombjack.c
@@ -344,10 +344,7 @@ static MACHINE_RESET( bombjack )
}
-static MACHINE_DRIVER_START( bombjack )
-
- /* driver data */
- MDRV_DRIVER_DATA(bombjack_state)
+static MACHINE_CONFIG_START( bombjack, bombjack_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz */
@@ -387,7 +384,7 @@ static MACHINE_DRIVER_START( bombjack )
MDRV_SOUND_ADD("ay3", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.13)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/boogwing.c b/src/mame/drivers/boogwing.c
index f57d3b2524f..f126979303c 100644
--- a/src/mame/drivers/boogwing.c
+++ b/src/mame/drivers/boogwing.c
@@ -322,10 +322,7 @@ static const deco16ic_interface boogwing_deco16ic_intf =
};
-static MACHINE_DRIVER_START( boogwing )
-
- /* driver data */
- MDRV_DRIVER_DATA(boogwing_state)
+static MACHINE_CONFIG_START( boogwing, boogwing_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000) /* DE102 */
@@ -367,7 +364,7 @@ static MACHINE_DRIVER_START( boogwing )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.30)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**********************************************************************************/
diff --git a/src/mame/drivers/bottom9.c b/src/mame/drivers/bottom9.c
index 3c7f6e08e8d..5db82305450 100644
--- a/src/mame/drivers/bottom9.c
+++ b/src/mame/drivers/bottom9.c
@@ -361,10 +361,7 @@ static MACHINE_RESET( bottom9 )
state->nmienable = 0;
}
-static MACHINE_DRIVER_START( bottom9 )
-
- /* driver data */
- MDRV_DRIVER_DATA(bottom9_state)
+static MACHINE_CONFIG_START( bottom9, bottom9_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2000000) /* ? */
@@ -409,7 +406,7 @@ static MACHINE_DRIVER_START( bottom9 )
MDRV_SOUND_CONFIG(k007232_interface_2)
MDRV_SOUND_ROUTE(0, "mono", 0.40)
MDRV_SOUND_ROUTE(1, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/boxer.c b/src/mame/drivers/boxer.c
index 5d016198e11..4cae524f53a 100644
--- a/src/mame/drivers/boxer.c
+++ b/src/mame/drivers/boxer.c
@@ -437,10 +437,7 @@ static MACHINE_RESET( boxer )
}
-static MACHINE_DRIVER_START(boxer)
-
- /* driver data */
- MDRV_DRIVER_DATA(boxer_state)
+static MACHINE_CONFIG_START( boxer, boxer_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK / 16)
@@ -462,7 +459,7 @@ static MACHINE_DRIVER_START(boxer)
MDRV_VIDEO_UPDATE(boxer)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/brkthru.c b/src/mame/drivers/brkthru.c
index c82b6389842..94b7f857e90 100644
--- a/src/mame/drivers/brkthru.c
+++ b/src/mame/drivers/brkthru.c
@@ -384,10 +384,7 @@ static MACHINE_RESET( brkthru )
state->flipscreen = 0;
}
-static MACHINE_DRIVER_START( brkthru )
-
- /* driver data */
- MDRV_DRIVER_DATA(brkthru_state)
+static MACHINE_CONFIG_START( brkthru, brkthru_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/8) /* 1.5 MHz ? */
@@ -425,13 +422,10 @@ static MACHINE_DRIVER_START( brkthru )
MDRV_SOUND_ADD("ym2", YM3526, MASTER_CLOCK/4)
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( darwin )
- /* driver data */
- MDRV_DRIVER_DATA(brkthru_state)
+static MACHINE_CONFIG_START( darwin, brkthru_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/8) /* 1.5 MHz ? */
@@ -480,7 +474,7 @@ static MACHINE_DRIVER_START( darwin )
MDRV_SOUND_ADD("ym2", YM3526, MASTER_CLOCK/4)
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/bsktball.c b/src/mame/drivers/bsktball.c
index 8e401c859ed..35c10d490c4 100644
--- a/src/mame/drivers/bsktball.c
+++ b/src/mame/drivers/bsktball.c
@@ -247,10 +247,7 @@ static MACHINE_RESET( bsktball )
}
-static MACHINE_DRIVER_START( bsktball )
-
- /* driver data */
- MDRV_DRIVER_DATA(bsktball_state)
+static MACHINE_CONFIG_START( bsktball, bsktball_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,750000)
@@ -281,7 +278,7 @@ static MACHINE_DRIVER_START( bsktball )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(bsktball)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/btime.c b/src/mame/drivers/btime.c
index 698c3941236..627dcf67bbe 100644
--- a/src/mame/drivers/btime.c
+++ b/src/mame/drivers/btime.c
@@ -1487,10 +1487,7 @@ static MACHINE_RESET( mmonkey )
state->protection_ret = 0;
}
-static MACHINE_DRIVER_START( btime )
-
- /* driver data */
- MDRV_DRIVER_DATA(btime_state)
+static MACHINE_CONFIG_START( btime, btime_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, HCLK2) /* seletable between H2/H4 via jumper */
@@ -1533,13 +1530,12 @@ static MACHINE_DRIVER_START( btime )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(btime_sound)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cookrace )
+static MACHINE_CONFIG_DERIVED( cookrace, btime )
/* basic machine hardware */
- MDRV_IMPORT_FROM(btime)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(cookrace_map)
@@ -1551,13 +1547,12 @@ static MACHINE_DRIVER_START( cookrace )
MDRV_PALETTE_LENGTH(16)
MDRV_VIDEO_UPDATE(cookrace)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lnc )
+static MACHINE_CONFIG_DERIVED( lnc, btime )
/* basic machine hardware */
- MDRV_IMPORT_FROM(btime)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(lnc_map)
@@ -1569,34 +1564,31 @@ static MACHINE_DRIVER_START( lnc )
MDRV_PALETTE_INIT(lnc)
MDRV_VIDEO_UPDATE(lnc)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wtennis )
+static MACHINE_CONFIG_DERIVED( wtennis, lnc )
/* basic machine hardware */
- MDRV_IMPORT_FROM(lnc)
/* video hardware */
MDRV_VIDEO_UPDATE(eggs)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mmonkey )
+static MACHINE_CONFIG_DERIVED( mmonkey, wtennis )
/* basic machine hardware */
- MDRV_IMPORT_FROM(wtennis)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mmonkey_map)
MDRV_MACHINE_START(mmonkey)
MDRV_MACHINE_RESET(mmonkey)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sdtennis )
+static MACHINE_CONFIG_DERIVED( sdtennis, btime )
/* basic machine hardware */
- MDRV_IMPORT_FROM(btime)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(HCLK4)
MDRV_CPU_PROGRAM_MAP(bnj_map)
@@ -1607,24 +1599,22 @@ static MACHINE_DRIVER_START( sdtennis )
MDRV_VIDEO_START(bnj)
MDRV_VIDEO_UPDATE(bnj)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bnj )
+static MACHINE_CONFIG_DERIVED( bnj, sdtennis )
/* basic machine hardware */
- MDRV_IMPORT_FROM(sdtennis)
/* video hardware */
MDRV_DEVICE_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1) // 256 * 240, confirmed
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( zoar )
+static MACHINE_CONFIG_DERIVED( zoar, btime )
/* basic machine hardware */
- MDRV_IMPORT_FROM(btime)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(zoar_map)
@@ -1643,13 +1633,12 @@ static MACHINE_DRIVER_START( zoar )
MDRV_SOUND_REPLACE("ay2", AY8910, HCLK1)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.23)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( disco )
+static MACHINE_CONFIG_DERIVED( disco, btime )
/* basic machine hardware */
- MDRV_IMPORT_FROM(btime)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(HCLK4)
MDRV_CPU_PROGRAM_MAP(disco_map)
@@ -1662,19 +1651,18 @@ static MACHINE_DRIVER_START( disco )
MDRV_PALETTE_LENGTH(32)
MDRV_VIDEO_UPDATE(disco)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tisland )
+static MACHINE_CONFIG_DERIVED( tisland, btime )
/* basic machine hardware */
- MDRV_IMPORT_FROM(btime)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tisland_map)
/* video hardware */
MDRV_GFXDECODE(zoar)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/btoads.c b/src/mame/drivers/btoads.c
index 3f9d9b06054..6196904de7e 100644
--- a/src/mame/drivers/btoads.c
+++ b/src/mame/drivers/btoads.c
@@ -331,7 +331,7 @@ static const tms34010_config tms_config =
*
*************************************/
-static MACHINE_DRIVER_START( btoads )
+static MACHINE_CONFIG_START( btoads, driver_data_t )
MDRV_CPU_ADD("maincpu", TMS34020, CPU_CLOCK/2)
MDRV_CPU_CONFIG(tms_config)
@@ -361,7 +361,7 @@ static MACHINE_DRIVER_START( btoads )
MDRV_SOUND_ADD("bsmt", BSMT2000, SOUND_CLOCK)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/bublbobl.c b/src/mame/drivers/bublbobl.c
index 54cd44d1b56..6eb942842c3 100644
--- a/src/mame/drivers/bublbobl.c
+++ b/src/mame/drivers/bublbobl.c
@@ -764,10 +764,7 @@ static MACHINE_RESET( tokio )
state->tokio_prot_count = 0;
}
-static MACHINE_DRIVER_START( tokio )
-
- /* driver data */
- MDRV_DRIVER_DATA(bublbobl_state)
+static MACHINE_CONFIG_START( tokio, bublbobl_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_XTAL/4) // 6 MHz
@@ -805,7 +802,7 @@ static MACHINE_DRIVER_START( tokio )
MDRV_SOUND_ROUTE(1, "mono", 0.08)
MDRV_SOUND_ROUTE(2, "mono", 0.08)
MDRV_SOUND_ROUTE(3, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_START( bublbobl )
@@ -848,10 +845,7 @@ static MACHINE_RESET( bublbobl )
state->port4_out = 0;
}
-static MACHINE_DRIVER_START( bublbobl )
-
- /* driver data */
- MDRV_DRIVER_DATA(bublbobl_state)
+static MACHINE_CONFIG_START( bublbobl, bublbobl_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_XTAL/4) // 6 MHz
@@ -893,7 +887,7 @@ static MACHINE_DRIVER_START( bublbobl )
MDRV_SOUND_ADD("ym2", YM3526, MAIN_XTAL/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_START( boblbobl )
@@ -916,8 +910,7 @@ static MACHINE_RESET( boblbobl )
state->ic43_b = 0;
}
-static MACHINE_DRIVER_START( boblbobl )
- MDRV_IMPORT_FROM(bublbobl)
+static MACHINE_CONFIG_DERIVED( boblbobl, bublbobl )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(bootleg_map)
@@ -927,7 +920,7 @@ static MACHINE_DRIVER_START( boblbobl )
MDRV_MACHINE_RESET(boblbobl)
MDRV_DEVICE_REMOVE("mcu")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_START( bub68705 )
@@ -962,8 +955,7 @@ static MACHINE_RESET( bub68705 )
state->latch = 0;
}
-static MACHINE_DRIVER_START( bub68705 )
- MDRV_IMPORT_FROM(bublbobl)
+static MACHINE_CONFIG_DERIVED( bub68705, bublbobl )
MDRV_DEVICE_REMOVE("mcu")
MDRV_CPU_ADD("mcu", M68705, 4000000) // xtal is 4MHz, divided by 4 internally
@@ -972,7 +964,7 @@ static MACHINE_DRIVER_START( bub68705 )
MDRV_MACHINE_START(bub68705)
MDRV_MACHINE_RESET(bub68705)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/buggychl.c b/src/mame/drivers/buggychl.c
index f41668ee37e..e212346eda1 100644
--- a/src/mame/drivers/buggychl.c
+++ b/src/mame/drivers/buggychl.c
@@ -433,10 +433,7 @@ static MACHINE_RESET( buggychl )
state->ddr_c = 0;
}
-static MACHINE_DRIVER_START( buggychl )
-
- /* driver data */
- MDRV_DRIVER_DATA(buggychl_state)
+static MACHINE_CONFIG_START( buggychl, buggychl_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz??? */
@@ -493,7 +490,7 @@ static MACHINE_DRIVER_START( buggychl )
// pin 1 SOLO 8' not mapped
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/buster.c b/src/mame/drivers/buster.c
index c67bdd742fd..80b72d34ac1 100644
--- a/src/mame/drivers/buster.c
+++ b/src/mame/drivers/buster.c
@@ -69,7 +69,7 @@ static GFXDECODE_START( buster )
GFXDECODE_ENTRY( "gfx1", 0, tiles8x8_layout, 0, 16 )
GFXDECODE_END
-static MACHINE_DRIVER_START( buster )
+static MACHINE_CONFIG_START( buster, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(mainmap)
@@ -94,7 +94,7 @@ static MACHINE_DRIVER_START( buster )
MDRV_SOUND_ADD("aysnd", AY8910, 1500000/2)
// MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( buster )
diff --git a/src/mame/drivers/bwidow.c b/src/mame/drivers/bwidow.c
index efeba9762cb..6f0bc48bec9 100644
--- a/src/mame/drivers/bwidow.c
+++ b/src/mame/drivers/bwidow.c
@@ -709,7 +709,7 @@ static const pokey_interface pokey_interface_2 =
*
*************************************/
-static MACHINE_DRIVER_START( bwidow )
+static MACHINE_CONFIG_START( bwidow, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK / 8)
@@ -737,24 +737,22 @@ static MACHINE_DRIVER_START( bwidow )
MDRV_SOUND_ADD("pokey2", POKEY, MASTER_CLOCK / 8)
MDRV_SOUND_CONFIG(pokey_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gravitar )
+static MACHINE_CONFIG_DERIVED( gravitar, bwidow )
/* basic machine hardware */
- MDRV_IMPORT_FROM(bwidow)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 420, 0, 400)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lunarbat )
+static MACHINE_CONFIG_DERIVED( lunarbat, gravitar )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gravitar)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(spacduel_map)
@@ -762,13 +760,12 @@ static MACHINE_DRIVER_START( lunarbat )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE(45)
MDRV_SCREEN_VISIBLE_AREA(0, 500, 0, 440)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spacduel )
+static MACHINE_CONFIG_DERIVED( spacduel, gravitar )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gravitar)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(spacduel_map)
@@ -776,7 +773,7 @@ static MACHINE_DRIVER_START( spacduel )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE(45)
MDRV_SCREEN_VISIBLE_AREA(0, 540, 0, 400)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/bwing.c b/src/mame/drivers/bwing.c
index b0eab22d849..57be6700a96 100644
--- a/src/mame/drivers/bwing.c
+++ b/src/mame/drivers/bwing.c
@@ -414,10 +414,7 @@ static MACHINE_RESET( bwing )
state->fftail = state->ffhead = state->ffcount = 0;
}
-static MACHINE_DRIVER_START( bwing )
-
- /* driver data */
- MDRV_DRIVER_DATA(bwing_state)
+static MACHINE_CONFIG_START( bwing, bwing_state )
// basic machine hardware
MDRV_CPU_ADD("maincpu", M6809, 2000000)
@@ -465,7 +462,7 @@ static MACHINE_DRIVER_START( bwing )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
//****************************************************************************
// ROM Maps
diff --git a/src/mame/drivers/bzone.c b/src/mame/drivers/bzone.c
index f2e680f9fbd..4e790d714fe 100644
--- a/src/mame/drivers/bzone.c
+++ b/src/mame/drivers/bzone.c
@@ -549,7 +549,7 @@ static const pokey_interface redbaron_pokey_interface =
*
*************************************/
-static MACHINE_DRIVER_START( bzone_base )
+static MACHINE_CONFIG_START( bzone_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, BZONE_MASTER_CLOCK / 8)
@@ -570,23 +570,20 @@ static MACHINE_DRIVER_START( bzone_base )
/* Drivers */
MDRV_MATHBOX_ADD("mathbox")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bzone )
-
- MDRV_IMPORT_FROM(bzone_base)
+static MACHINE_CONFIG_DERIVED( bzone, bzone_base )
/* sound hardware */
- MDRV_IMPORT_FROM(bzone_audio)
+ MDRV_FRAGMENT_ADD(bzone_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( redbaron )
+static MACHINE_CONFIG_DERIVED( redbaron, bzone_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(bzone_base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(redbaron_map)
MDRV_CPU_PERIODIC_INT(bzone_interrupt, (double)BZONE_MASTER_CLOCK / 4096 / 12)
@@ -612,7 +609,7 @@ static MACHINE_DRIVER_START( redbaron )
MDRV_SOUND_ADD("custom", REDBARON, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cabal.c b/src/mame/drivers/cabal.c
index eea01624e2e..8c74913873e 100644
--- a/src/mame/drivers/cabal.c
+++ b/src/mame/drivers/cabal.c
@@ -484,9 +484,7 @@ static const msm5205_interface msm5205_interface_2 =
MSM5205_SEX_4B
};
-static MACHINE_DRIVER_START( cabal )
-
- MDRV_DRIVER_DATA(cabal_state)
+static MACHINE_CONFIG_START( cabal, cabal_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz/2) /* verified on pcb */
@@ -524,13 +522,11 @@ static MACHINE_DRIVER_START( cabal )
MDRV_SOUND_ADD("adpcm2", SEIBU_ADPCM, 8000) /* it should use the msm5205 */
MDRV_SOUND_ROUTE(ALL_OUTPUTS,"mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* the bootleg has different sound hardware (2 extra Z80s for ADPCM playback) */
-static MACHINE_DRIVER_START( cabalbl )
-
- MDRV_DRIVER_DATA(cabal_state)
+static MACHINE_CONFIG_START( cabalbl, cabal_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz/2) /* verified on pcb */
@@ -583,7 +579,7 @@ static MACHINE_DRIVER_START( cabalbl )
MDRV_SOUND_ADD("msm2", MSM5205, XTAL_12MHz/32) /* verified on pcb (no resonator)*/
MDRV_SOUND_CONFIG(msm5205_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( cabal )
ROM_REGION( 0x50000, "maincpu", 0 ) /* 64k for cpu code */
diff --git a/src/mame/drivers/cabaret.c b/src/mame/drivers/cabaret.c
index b62312f8866..5b1a5a3859c 100644
--- a/src/mame/drivers/cabaret.c
+++ b/src/mame/drivers/cabaret.c
@@ -303,7 +303,7 @@ static INTERRUPT_GEN( cabaret_interrupt )
cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
}
-static MACHINE_DRIVER_START( cabaret )
+static MACHINE_CONFIG_START( cabaret, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 2)
MDRV_CPU_PROGRAM_MAP(cabaret_map)
@@ -330,7 +330,7 @@ static MACHINE_DRIVER_START( cabaret )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("ymsnd", YM2413, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT( cabaret )
diff --git a/src/mame/drivers/calchase.c b/src/mame/drivers/calchase.c
index cba817e545d..05ef3683911 100644
--- a/src/mame/drivers/calchase.c
+++ b/src/mame/drivers/calchase.c
@@ -648,7 +648,7 @@ static void calchase_set_keyb_int(running_machine *machine, int state) {
}
-static MACHINE_DRIVER_START( calchase )
+static MACHINE_CONFIG_START( calchase, driver_data_t )
MDRV_CPU_ADD("maincpu", PENTIUM, 200000000) // Cyrix 686MX-PR200 CPU
MDRV_CPU_PROGRAM_MAP(calchase_map)
MDRV_CPU_IO_MAP(calchase_io)
@@ -679,7 +679,7 @@ static MACHINE_DRIVER_START( calchase )
MDRV_VIDEO_START(calchase)
MDRV_VIDEO_UPDATE(calchase)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT( calchase )
{
diff --git a/src/mame/drivers/calomega.c b/src/mame/drivers/calomega.c
index 7430f5020b8..441de495e58 100644
--- a/src/mame/drivers/calomega.c
+++ b/src/mame/drivers/calomega.c
@@ -2744,7 +2744,7 @@ static const mc6845_interface mc6845_intf =
* Machine Drivers *
*************************************************/
-static MACHINE_DRIVER_START( sys903 )
+static MACHINE_CONFIG_START( sys903, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, CPU_CLOCK) /* confirmed */
MDRV_CPU_PROGRAM_MAP(sys903_map)
@@ -2780,12 +2780,12 @@ static MACHINE_DRIVER_START( sys903 )
/* acia */
MDRV_ACIA6850_ADD("acia6850_0", acia6850_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( s903mod )
+static MACHINE_CONFIG_DERIVED( s903mod, sys903 )
+
/* basic machine hardware */
- MDRV_IMPORT_FROM( sys903 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(s903mod_map)
@@ -2796,12 +2796,12 @@ static MACHINE_DRIVER_START( s903mod )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MDRV_DEVICE_REMOVE("acia6850_0")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( sys905, sys903 )
-static MACHINE_DRIVER_START( sys905 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( sys903 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sys905_map)
@@ -2815,12 +2815,12 @@ static MACHINE_DRIVER_START( sys905 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MDRV_DEVICE_REMOVE("acia6850_0")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( sys906, sys903 )
-static MACHINE_DRIVER_START( sys906 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( sys903 )
MDRV_CPU_REPLACE("maincpu", M65C02, CPU_CLOCK) /* guess */
MDRV_CPU_PROGRAM_MAP(sys906_map)
@@ -2836,7 +2836,7 @@ static MACHINE_DRIVER_START( sys906 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MDRV_DEVICE_REMOVE("acia6850_0")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************************
diff --git a/src/mame/drivers/calorie.c b/src/mame/drivers/calorie.c
index 381567d44f3..fdce61470f6 100644
--- a/src/mame/drivers/calorie.c
+++ b/src/mame/drivers/calorie.c
@@ -431,10 +431,7 @@ static MACHINE_RESET( calorie )
}
-static MACHINE_DRIVER_START( calorie )
-
- /* driver data */
- MDRV_DRIVER_DATA(calorie_state)
+static MACHINE_CONFIG_START( calorie, calorie_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,4000000) /* 4 MHz */
@@ -474,7 +471,7 @@ static MACHINE_DRIVER_START( calorie )
MDRV_SOUND_ADD("ay3", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.8) /* YM2149 really */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/canyon.c b/src/mame/drivers/canyon.c
index f8e3f3dc47c..63fdd5bbc62 100644
--- a/src/mame/drivers/canyon.c
+++ b/src/mame/drivers/canyon.c
@@ -234,10 +234,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( canyon )
-
- /* driver data */
- MDRV_DRIVER_DATA(canyon_state)
+static MACHINE_CONFIG_START( canyon, canyon_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, XTAL_12_096MHz / 16)
@@ -267,7 +264,7 @@ static MACHINE_DRIVER_START( canyon )
MDRV_SOUND_CONFIG_DISCRETE(canyon)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/capbowl.c b/src/mame/drivers/capbowl.c
index 6b6c99a2d6f..ee0c9a01cc9 100644
--- a/src/mame/drivers/capbowl.c
+++ b/src/mame/drivers/capbowl.c
@@ -369,10 +369,7 @@ static MACHINE_RESET( capbowl )
}
-static MACHINE_DRIVER_START( capbowl )
-
- /* driver data */
- MDRV_DRIVER_DATA(capbowl_state)
+static MACHINE_CONFIG_START( capbowl, capbowl_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809E, MASTER_CLOCK)
@@ -410,13 +407,12 @@ static MACHINE_DRIVER_START( capbowl )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bowlrama )
+static MACHINE_CONFIG_DERIVED( bowlrama, capbowl )
/* basic machine hardware */
- MDRV_IMPORT_FROM(capbowl)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(bowlrama_map)
@@ -424,7 +420,7 @@ static MACHINE_DRIVER_START( bowlrama )
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 359, 0, 239)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cardline.c b/src/mame/drivers/cardline.c
index 6ca815adfaf..86ff26c885c 100644
--- a/src/mame/drivers/cardline.c
+++ b/src/mame/drivers/cardline.c
@@ -192,7 +192,7 @@ static PALETTE_INIT(cardline)
}
}
-static MACHINE_DRIVER_START( cardline )
+static MACHINE_CONFIG_START( cardline, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I80C32,12000000)
@@ -223,7 +223,7 @@ static MACHINE_DRIVER_START( cardline )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/carjmbre.c b/src/mame/drivers/carjmbre.c
index ce3d47bd685..8f3f950372b 100644
--- a/src/mame/drivers/carjmbre.c
+++ b/src/mame/drivers/carjmbre.c
@@ -189,10 +189,7 @@ static MACHINE_RESET( carjmbre )
state->bgcolor = 0;
}
-static MACHINE_DRIVER_START( carjmbre )
-
- /* driver data */
- MDRV_DRIVER_DATA(carjmbre_state)
+static MACHINE_CONFIG_START( carjmbre, carjmbre_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/6)
@@ -229,7 +226,7 @@ static MACHINE_DRIVER_START( carjmbre )
MDRV_SOUND_ADD("ay2", AY8910, XTAL_18_432MHz/6/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.12)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/carpolo.c b/src/mame/drivers/carpolo.c
index fbb3b012290..ac86db2ce03 100644
--- a/src/mame/drivers/carpolo.c
+++ b/src/mame/drivers/carpolo.c
@@ -230,7 +230,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( carpolo )
+static MACHINE_CONFIG_START( carpolo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, XTAL_11_289MHz/12) /* 940.75 kHz */
@@ -275,7 +275,7 @@ static MACHINE_DRIVER_START( carpolo )
MDRV_VIDEO_START(carpolo)
MDRV_VIDEO_UPDATE(carpolo)
MDRV_VIDEO_EOF(carpolo)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/carrera.c b/src/mame/drivers/carrera.c
index c3aa1683ef3..e829fba7201 100644
--- a/src/mame/drivers/carrera.c
+++ b/src/mame/drivers/carrera.c
@@ -313,7 +313,7 @@ static const mc6845_interface mc6845_intf =
};
-static MACHINE_DRIVER_START( carrera )
+static MACHINE_CONFIG_START( carrera, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK / 6)
MDRV_CPU_PROGRAM_MAP(carrera_map)
@@ -342,7 +342,7 @@ static MACHINE_DRIVER_START( carrera )
MDRV_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK/12)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( carrera )
diff --git a/src/mame/drivers/caswin.c b/src/mame/drivers/caswin.c
index 12d080d9c16..dd75464b64e 100644
--- a/src/mame/drivers/caswin.c
+++ b/src/mame/drivers/caswin.c
@@ -274,7 +274,7 @@ static PALETTE_INIT( caswin )
}
-static MACHINE_DRIVER_START( vvillage )
+static MACHINE_CONFIG_START( vvillage, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,4000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(vvillage_mem)
@@ -303,7 +303,7 @@ static MACHINE_DRIVER_START( vvillage )
MDRV_SOUND_ADD("aysnd", AY8910, 4000000 / 4)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( caswin )
ROM_REGION( 0x8000, "maincpu", 0 )
diff --git a/src/mame/drivers/cave.c b/src/mame/drivers/cave.c
index 8600aca27ad..7477efc5fda 100644
--- a/src/mame/drivers/cave.c
+++ b/src/mame/drivers/cave.c
@@ -1766,10 +1766,7 @@ static const ym2203_interface ym2203_config =
Dangun Feveron
***************************************************************************/
-static MACHINE_DRIVER_START( dfeveron )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( dfeveron, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -1802,7 +1799,7 @@ static MACHINE_DRIVER_START( dfeveron )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -1810,10 +1807,7 @@ MACHINE_DRIVER_END
***************************************************************************/
-static MACHINE_DRIVER_START( ddonpach )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( ddonpach, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -1846,7 +1840,7 @@ static MACHINE_DRIVER_START( ddonpach )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -1858,10 +1852,7 @@ static const nmk112_interface donpachi_nmk112_intf =
"oki1", "oki2", 1 << 0 // chip #0 (music) is not paged
};
-static MACHINE_DRIVER_START( donpachi )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( donpachi, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -1899,17 +1890,14 @@ static MACHINE_DRIVER_START( donpachi )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MDRV_NMK112_ADD("nmk112", donpachi_nmk112_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Esprade
***************************************************************************/
-static MACHINE_DRIVER_START( esprade )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( esprade, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -1942,17 +1930,14 @@ static MACHINE_DRIVER_START( esprade )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Gaia Crusaders
***************************************************************************/
-static MACHINE_DRIVER_START( gaia )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( gaia, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -1984,17 +1969,14 @@ static MACHINE_DRIVER_START( gaia )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Guwange
***************************************************************************/
-static MACHINE_DRIVER_START( guwange )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( guwange, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -2027,16 +2009,13 @@ static MACHINE_DRIVER_START( guwange )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Hotdog Storm
***************************************************************************/
-static MACHINE_DRIVER_START( hotdogst )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( hotdogst, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -2083,17 +2062,14 @@ static MACHINE_DRIVER_START( hotdogst )
MDRV_OKIM6295_ADD("oki", XTAL_1_056MHz, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Koro Koro Quest
***************************************************************************/
-static MACHINE_DRIVER_START( korokoro )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( korokoro, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -2126,27 +2102,21 @@ static MACHINE_DRIVER_START( korokoro )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( crusherm )
-
- /* driver data */
- MDRV_IMPORT_FROM( korokoro )
+static MACHINE_CONFIG_DERIVED( crusherm, korokoro )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(crusherm_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Mazinger Z
***************************************************************************/
-static MACHINE_DRIVER_START( mazinger )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( mazinger, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -2195,17 +2165,14 @@ static MACHINE_DRIVER_START( mazinger )
MDRV_OKIM6295_ADD("oki", XTAL_1_056MHz, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 2.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Metamoqester
***************************************************************************/
-static MACHINE_DRIVER_START( metmqstr )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( metmqstr, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz / 2)
@@ -2252,7 +2219,7 @@ static MACHINE_DRIVER_START( metmqstr )
MDRV_OKIM6295_ADD("oki2", XTAL_32MHz / 16 , OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -2266,10 +2233,7 @@ static const nmk112_interface pwrinst2_nmk112_intf =
"oki1", "oki2", 0
};
-static MACHINE_DRIVER_START( pwrinst2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( pwrinst2, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz) /* 16 MHz */
@@ -2322,17 +2286,14 @@ static MACHINE_DRIVER_START( pwrinst2 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.00)
MDRV_NMK112_ADD("nmk112", pwrinst2_nmk112_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Sailor Moon / Air Gallet
***************************************************************************/
-static MACHINE_DRIVER_START( sailormn )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( sailormn, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -2378,17 +2339,14 @@ static MACHINE_DRIVER_START( sailormn )
MDRV_OKIM6295_ADD("oki2", 2112000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Tobikose! Jumpman
***************************************************************************/
-static MACHINE_DRIVER_START( tjumpman )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( tjumpman, cave_state )
MDRV_NVRAM_HANDLER(generic_0fill)
@@ -2426,17 +2384,14 @@ static MACHINE_DRIVER_START( tjumpman )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
// oki2 spot is unpopulated
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Uo Poko
***************************************************************************/
-static MACHINE_DRIVER_START( uopoko )
-
- /* driver data */
- MDRV_DRIVER_DATA(cave_state)
+static MACHINE_CONFIG_START( uopoko, cave_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -2468,7 +2423,7 @@ static MACHINE_DRIVER_START( uopoko )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/cb2001.c b/src/mame/drivers/cb2001.c
index af790330abe..e2ba2b19674 100644
--- a/src/mame/drivers/cb2001.c
+++ b/src/mame/drivers/cb2001.c
@@ -791,7 +791,7 @@ static const ay8910_interface cb2001_ay8910_config =
};
static const nec_config cb2001_config = { cb2001_decryption_table, };
-static MACHINE_DRIVER_START( cb2001 )
+static MACHINE_CONFIG_START( cb2001, driver_data_t )
MDRV_CPU_ADD("maincpu", V30, 20000000) // CPU91A-011-0016JK004; encrypted cpu like nec v25/35 used in some irem game
MDRV_CPU_CONFIG(cb2001_config)
MDRV_CPU_PROGRAM_MAP(cb2001_map)
@@ -822,7 +822,7 @@ static MACHINE_DRIVER_START( cb2001 )
MDRV_SOUND_ADD("aysnd", AY8910, 1500000) // wrong
MDRV_SOUND_CONFIG(cb2001_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( cb2001 )
diff --git a/src/mame/drivers/cball.c b/src/mame/drivers/cball.c
index 72c502aded8..4b94a84ab77 100644
--- a/src/mame/drivers/cball.c
+++ b/src/mame/drivers/cball.c
@@ -225,10 +225,7 @@ static GFXDECODE_START( cball )
GFXDECODE_END
-static MACHINE_DRIVER_START( cball )
-
- /* driver data */
- MDRV_DRIVER_DATA(cball_state)
+static MACHINE_CONFIG_START( cball, cball_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, XTAL_12_096MHz / 16) /* ? */
@@ -252,7 +249,7 @@ static MACHINE_DRIVER_START( cball )
MDRV_VIDEO_UPDATE(cball)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( cball )
diff --git a/src/mame/drivers/cbasebal.c b/src/mame/drivers/cbasebal.c
index 4530b335e71..604d38db3e3 100644
--- a/src/mame/drivers/cbasebal.c
+++ b/src/mame/drivers/cbasebal.c
@@ -276,10 +276,7 @@ static MACHINE_RESET( cbasebal )
state->scroll_y[1] = 0;
}
-static MACHINE_DRIVER_START( cbasebal )
-
- /* driver data */
- MDRV_DRIVER_DATA(cbasebal_state)
+static MACHINE_CONFIG_START( cbasebal, cbasebal_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 6000000) /* ??? */
@@ -316,7 +313,7 @@ static MACHINE_DRIVER_START( cbasebal )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cbuster.c b/src/mame/drivers/cbuster.c
index 93ef9204516..ac984563cb4 100644
--- a/src/mame/drivers/cbuster.c
+++ b/src/mame/drivers/cbuster.c
@@ -313,10 +313,7 @@ static MACHINE_RESET( cbuster )
state->pri = 0;
}
-static MACHINE_DRIVER_START( twocrude )
-
- /* driver data */
- MDRV_DRIVER_DATA(cbuster_state)
+static MACHINE_CONFIG_START( twocrude, cbuster_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* Custom chip 59 */
@@ -362,7 +359,7 @@ static MACHINE_DRIVER_START( twocrude )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/ccastles.c b/src/mame/drivers/ccastles.c
index d1d24bbc906..bd7d109d248 100644
--- a/src/mame/drivers/ccastles.c
+++ b/src/mame/drivers/ccastles.c
@@ -487,10 +487,7 @@ static const pokey_interface pokey_config =
*
*************************************/
-static MACHINE_DRIVER_START( ccastles )
-
- /* driver data */
- MDRV_DRIVER_DATA(ccastles_state)
+static MACHINE_CONFIG_START( ccastles, ccastles_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/8)
@@ -521,7 +518,7 @@ static MACHINE_DRIVER_START( ccastles )
MDRV_SOUND_ADD("pokey2", POKEY, MASTER_CLOCK/8)
MDRV_SOUND_CONFIG(pokey_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cchance.c b/src/mame/drivers/cchance.c
index 146ebc48b18..c6cf2bf3449 100644
--- a/src/mame/drivers/cchance.c
+++ b/src/mame/drivers/cchance.c
@@ -202,10 +202,7 @@ static MACHINE_RESET( cchance )
}
-static MACHINE_DRIVER_START( cchance )
-
- /* driver data */
- MDRV_DRIVER_DATA(tnzs_state)
+static MACHINE_CONFIG_START( cchance, tnzs_state )
MDRV_CPU_ADD("maincpu", Z80,4000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -235,7 +232,7 @@ static MACHINE_DRIVER_START( cchance )
MDRV_SOUND_ADD("aysnd", AY8910, 1500000/2)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( cchance )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/cchasm.c b/src/mame/drivers/cchasm.c
index 948beb23356..ad1cbffecb4 100644
--- a/src/mame/drivers/cchasm.c
+++ b/src/mame/drivers/cchasm.c
@@ -153,7 +153,7 @@ static const z80_daisy_config daisy_chain[] =
*
*************************************/
-static MACHINE_DRIVER_START( cchasm )
+static MACHINE_CONFIG_START( cchasm, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,CCHASM_68K_CLOCK) /* 8 MHz (from schematics) */
@@ -194,7 +194,7 @@ static MACHINE_DRIVER_START( cchasm )
/* 6840 PTM */
MDRV_PTM6840_ADD("6840ptm", cchasm_6840_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cclimber.c b/src/mame/drivers/cclimber.c
index 83642bd0667..713d57a8a24 100644
--- a/src/mame/drivers/cclimber.c
+++ b/src/mame/drivers/cclimber.c
@@ -981,7 +981,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( root )
+static MACHINE_CONFIG_START( root, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/3/2) /* 3.072 MHz */
@@ -1005,12 +1005,10 @@ static MACHINE_DRIVER_START( root )
MDRV_PALETTE_INIT(cclimber)
MDRV_VIDEO_START(cclimber)
MDRV_VIDEO_UPDATE(cclimber)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cclimber )
-
- MDRV_IMPORT_FROM(root)
+static MACHINE_CONFIG_DERIVED( cclimber, root )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -1022,12 +1020,10 @@ static MACHINE_DRIVER_START( cclimber )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(cclimber_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cannonb )
- MDRV_IMPORT_FROM(cclimber)
+static MACHINE_CONFIG_DERIVED( cannonb, cclimber )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1035,12 +1031,10 @@ static MACHINE_DRIVER_START( cannonb )
/* video hardware */
MDRV_GFXDECODE(cannonb)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( yamato )
-
- MDRV_IMPORT_FROM(root)
+static MACHINE_CONFIG_DERIVED( yamato, root )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1064,12 +1058,10 @@ static MACHINE_DRIVER_START( yamato )
MDRV_SOUND_ADD("ay2", AY8910, 1536000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( toprollr )
- MDRV_IMPORT_FROM(cclimber)
+static MACHINE_CONFIG_DERIVED( toprollr, cclimber )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1082,10 +1074,10 @@ static MACHINE_DRIVER_START( toprollr )
MDRV_VIDEO_START(toprollr)
MDRV_VIDEO_UPDATE(toprollr)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( swimmer )
+static MACHINE_CONFIG_START( swimmer, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/6) /* verified on pcb */
@@ -1119,7 +1111,7 @@ static MACHINE_DRIVER_START( swimmer )
MDRV_SOUND_ADD("ay2", AY8910, XTAL_4MHz/2) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/cdi.c b/src/mame/drivers/cdi.c
index ab505695272..7bde80d93e7 100644
--- a/src/mame/drivers/cdi.c
+++ b/src/mame/drivers/cdi.c
@@ -4640,9 +4640,7 @@ static MACHINE_RESET( cdi )
* Machine Drivers *
*************************/
-static MACHINE_DRIVER_START( cdi )
-
- MDRV_DRIVER_DATA( cdi_state )
+static MACHINE_CONFIG_START( cdi, cdi_state )
MDRV_CPU_ADD("maincpu", SCC68070, CLOCK_A/2)
MDRV_CPU_PROGRAM_MAP(cdimono1_mem)
@@ -4685,7 +4683,7 @@ static MACHINE_DRIVER_START( cdi )
MDRV_SOUND_ROUTE( ALL_OUTPUTS, "rspeaker", 1.0 )
MDRV_MK48T08_ADD( "mk48t08" )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
* Rom Load *
diff --git a/src/mame/drivers/centiped.c b/src/mame/drivers/centiped.c
index 8de84ef1a3e..295bf9c1ce1 100644
--- a/src/mame/drivers/centiped.c
+++ b/src/mame/drivers/centiped.c
@@ -1586,7 +1586,7 @@ static const pokey_interface warlords_pokey_interface =
*
*************************************/
-static MACHINE_DRIVER_START( centiped )
+static MACHINE_CONFIG_START( centiped, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12096000/8) /* 1.512 MHz (slows down to 0.75MHz while accessing playfield RAM) */
@@ -1618,24 +1618,22 @@ static MACHINE_DRIVER_START( centiped )
MDRV_SOUND_ADD("pokey", POKEY, 12096000/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( caterplr )
+static MACHINE_CONFIG_DERIVED( caterplr, centiped )
/* basic machine hardware */
- MDRV_IMPORT_FROM(centiped)
/* sound hardware */
MDRV_SOUND_REPLACE("pokey", AY8910, 12096000/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( centipdb )
+static MACHINE_CONFIG_DERIVED( centipdb, centiped )
/* basic machine hardware */
- MDRV_IMPORT_FROM(centiped)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(centipdb_map)
@@ -1643,26 +1641,24 @@ static MACHINE_DRIVER_START( centipdb )
MDRV_SOUND_REPLACE("pokey", AY8910, 12096000/8)
MDRV_SOUND_CONFIG(centipdb_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( magworm )
+static MACHINE_CONFIG_DERIVED( magworm, centiped )
/* basic machine hardware */
- MDRV_IMPORT_FROM(centiped)
MDRV_MACHINE_RESET(magworm)
/* sound hardware */
MDRV_SOUND_REPLACE("pokey", AY8910, 12096000/8)
MDRV_SOUND_CONFIG(centipdb_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( milliped )
+static MACHINE_CONFIG_DERIVED( milliped, centiped )
/* basic machine hardware */
- MDRV_IMPORT_FROM(centiped)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(milliped_map)
@@ -1681,13 +1677,12 @@ static MACHINE_DRIVER_START( milliped )
MDRV_SOUND_ADD("pokey2", POKEY, 12096000/8)
MDRV_SOUND_CONFIG(milliped_pokey_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( warlords )
+static MACHINE_CONFIG_DERIVED( warlords, centiped )
/* basic machine hardware */
- MDRV_IMPORT_FROM(centiped)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(warlords_map)
@@ -1703,20 +1698,19 @@ static MACHINE_DRIVER_START( warlords )
MDRV_SOUND_REPLACE("pokey", POKEY, 12096000/8)
MDRV_SOUND_CONFIG(warlords_pokey_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mazeinv )
+static MACHINE_CONFIG_DERIVED( mazeinv, milliped )
/* basic machine hardware */
- MDRV_IMPORT_FROM(milliped)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mazeinv_map)
MDRV_VIDEO_UPDATE(centiped)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bullsdrt )
+static MACHINE_CONFIG_START( bullsdrt, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, 12096000/8)
@@ -1743,7 +1737,7 @@ static MACHINE_DRIVER_START( bullsdrt )
MDRV_SOUND_ADD("snsnd", SN76496, 12096000/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/chaknpop.c b/src/mame/drivers/chaknpop.c
index aadbfa164bc..49a64c43d9a 100644
--- a/src/mame/drivers/chaknpop.c
+++ b/src/mame/drivers/chaknpop.c
@@ -271,10 +271,7 @@ static MACHINE_RESET( chaknpop )
state->mcu_select = 0;
}
-static MACHINE_DRIVER_START( chaknpop )
-
- /* driver data */
- MDRV_DRIVER_DATA(chaknpop_state)
+static MACHINE_CONFIG_START( chaknpop, chaknpop_state )
/* basic machine hardware */
/* the real board is 3.072MHz, but it is faster for MAME */
@@ -312,7 +309,7 @@ static MACHINE_DRIVER_START( chaknpop )
MDRV_SOUND_ADD("ay2", AY8910, 18432000 / 12)
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/cham24.c b/src/mame/drivers/cham24.c
index ed8dbd6698f..55dec1f62e6 100644
--- a/src/mame/drivers/cham24.c
+++ b/src/mame/drivers/cham24.c
@@ -309,7 +309,7 @@ static GFXDECODE_START( cham24 )
/* none, the ppu generates one */
GFXDECODE_END
-static MACHINE_DRIVER_START( cham24 )
+static MACHINE_CONFIG_START( cham24, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", N2A03, N2A03_DEFAULTCLOCK)
MDRV_CPU_PROGRAM_MAP(cham24_map)
@@ -342,7 +342,7 @@ static MACHINE_DRIVER_START( cham24 )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( cham24 )
ROM_REGION(0x10000, "maincpu", ROMREGION_ERASE00)
diff --git a/src/mame/drivers/champbas.c b/src/mame/drivers/champbas.c
index 9bf6c0d34b3..c1660e38d82 100644
--- a/src/mame/drivers/champbas.c
+++ b/src/mame/drivers/champbas.c
@@ -597,10 +597,7 @@ static MACHINE_RESET( champbas )
}
-static MACHINE_DRIVER_START( talbot )
-
- /* driver data */
- MDRV_DRIVER_DATA(champbas_state)
+static MACHINE_CONFIG_START( talbot, champbas_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/6)
@@ -633,13 +630,10 @@ static MACHINE_DRIVER_START( talbot )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, XTAL_18_432MHz/12)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( champbas )
- /* driver data */
- MDRV_DRIVER_DATA(champbas_state)
+static MACHINE_CONFIG_START( champbas, champbas_state )
/* basic machine hardware */
/* main cpu */
@@ -676,12 +670,12 @@ static MACHINE_DRIVER_START( champbas )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( champmcu, champbas )
-static MACHINE_DRIVER_START( champmcu )
/* basic machine hardware */
- MDRV_IMPORT_FROM(champbas)
/* MCU */
MDRV_CPU_ADD(CPUTAG_MCU, ALPHA8201, XTAL_18_432MHz/6/8)
@@ -689,13 +683,10 @@ static MACHINE_DRIVER_START( champmcu )
/* to MCU timeout champbbj */
MDRV_QUANTUM_TIME(HZ(3000))
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( exctsccr )
-
- /* driver data */
- MDRV_DRIVER_DATA(champbas_state)
+static MACHINE_CONFIG_START( exctsccr, champbas_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/6 )
@@ -750,13 +741,10 @@ static MACHINE_DRIVER_START( exctsccr )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Bootleg running on a modified Champion Baseball board */
-static MACHINE_DRIVER_START( exctsccrb )
-
- /* driver data */
- MDRV_DRIVER_DATA(champbas_state)
+static MACHINE_CONFIG_START( exctsccrb, champbas_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/6)
@@ -792,7 +780,7 @@ static MACHINE_DRIVER_START( exctsccrb )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/champbwl.c b/src/mame/drivers/champbwl.c
index 486e275def7..fea72bfff40 100644
--- a/src/mame/drivers/champbwl.c
+++ b/src/mame/drivers/champbwl.c
@@ -354,10 +354,7 @@ static MACHINE_RESET( champbwl )
}
-static MACHINE_DRIVER_START( champbwl )
-
- /* driver data */
- MDRV_DRIVER_DATA(tnzs_state)
+static MACHINE_CONFIG_START( champbwl, tnzs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 16000000/4) /* 4MHz */
@@ -391,7 +388,7 @@ static MACHINE_DRIVER_START( champbwl )
MDRV_SOUND_CONFIG(champbwl_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( champbwl )
ROM_REGION( 0x20000, "maincpu", 0 ) /* Z80 Code */
diff --git a/src/mame/drivers/chanbara.c b/src/mame/drivers/chanbara.c
index d76c7c7e6be..81a1632bc30 100644
--- a/src/mame/drivers/chanbara.c
+++ b/src/mame/drivers/chanbara.c
@@ -384,10 +384,7 @@ static MACHINE_RESET( chanbara )
state->scrollhi = 0;
}
-static MACHINE_DRIVER_START( chanbara )
-
- /* driver data */
- MDRV_DRIVER_DATA(chanbara_state)
+static MACHINE_CONFIG_START( chanbara, chanbara_state )
MDRV_CPU_ADD("maincpu", M6809, 12000000/8)
MDRV_CPU_PROGRAM_MAP(memmap)
@@ -415,7 +412,7 @@ static MACHINE_DRIVER_START( chanbara )
MDRV_SOUND_ADD("ymsnd", YM2203, 12000000/8)
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( chanbara )
diff --git a/src/mame/drivers/changela.c b/src/mame/drivers/changela.c
index 4bcacf5eb61..3d5337435dd 100644
--- a/src/mame/drivers/changela.c
+++ b/src/mame/drivers/changela.c
@@ -520,10 +520,7 @@ static MACHINE_RESET (changela)
state->dir_31 = 0;
}
-static MACHINE_DRIVER_START( changela )
-
- /* driver data */
- MDRV_DRIVER_DATA(changela_state)
+static MACHINE_CONFIG_START( changela, changela_state )
MDRV_CPU_ADD("maincpu", Z80,5000000)
MDRV_CPU_PROGRAM_MAP(changela_map)
@@ -555,7 +552,7 @@ static MACHINE_DRIVER_START( changela )
MDRV_SOUND_ADD("ay2", AY8910, 1250000)
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( changela )
diff --git a/src/mame/drivers/cheekyms.c b/src/mame/drivers/cheekyms.c
index 40908e1044b..138cdefca7f 100644
--- a/src/mame/drivers/cheekyms.c
+++ b/src/mame/drivers/cheekyms.c
@@ -117,10 +117,7 @@ static MACHINE_START( cheekyms )
state->dac = machine->device("dac");
}
-static MACHINE_DRIVER_START( cheekyms )
-
- /* driver data */
- MDRV_DRIVER_DATA(cheekyms_state)
+static MACHINE_CONFIG_START( cheekyms, cheekyms_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,5000000/2) /* 2.5 MHz */
@@ -150,7 +147,7 @@ static MACHINE_DRIVER_START( cheekyms )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/chihiro.c b/src/mame/drivers/chihiro.c
index 9de046c853d..ea3839811da 100644
--- a/src/mame/drivers/chihiro.c
+++ b/src/mame/drivers/chihiro.c
@@ -298,7 +298,7 @@ static MACHINE_START( chihiro )
debug_console_register_command(machine,"jamdis",CMDFLAG_NONE,0,2,3,jamtable_disasm_command);
}
-static MACHINE_DRIVER_START( chihiro_base )
+static MACHINE_CONFIG_START( chihiro_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PENTIUM, 733333333) /* Wrong! */
@@ -327,12 +327,11 @@ static MACHINE_DRIVER_START( chihiro_base )
MDRV_MACHINE_START(chihiro)
MDRV_PALETTE_LENGTH(65536)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( chihirogd )
- MDRV_IMPORT_FROM(chihiro_base)
+static MACHINE_CONFIG_DERIVED( chihirogd, chihiro_base )
MDRV_NAOMI_DIMM_BOARD_ADD("rom_board", "gdrom", "user1", "picreturn")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#define ROM_LOAD16_WORD_SWAP_BIOS(bios,name,offset,length,hash) \
ROMX_LOAD(name, offset, length, hash, ROM_GROUPWORD | ROM_BIOS(bios+1)) /* Note '+1' */
diff --git a/src/mame/drivers/chinagat.c b/src/mame/drivers/chinagat.c
index 976d0a0b8b2..77e7f903cbf 100644
--- a/src/mame/drivers/chinagat.c
+++ b/src/mame/drivers/chinagat.c
@@ -568,10 +568,7 @@ static MACHINE_RESET( chinagat )
}
-static MACHINE_DRIVER_START( chinagat )
-
- /* driver data */
- MDRV_DRIVER_DATA(ddragon_state)
+static MACHINE_CONFIG_START( chinagat, ddragon_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, MAIN_CLOCK / 2) /* 1.5 MHz (12MHz oscillator / 4 internally) */
@@ -610,12 +607,9 @@ static MACHINE_DRIVER_START( chinagat )
MDRV_OKIM6295_ADD("oki", 1065000, OKIM6295_PIN7_HIGH) // pin 7 not verified, clock frequency estimated with recording
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( saiyugoub1 )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(ddragon_state)
+static MACHINE_CONFIG_START( saiyugoub1, ddragon_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CLOCK / 8) /* 68B09EP 1.5 MHz (12MHz oscillator) */
@@ -659,12 +653,9 @@ static MACHINE_DRIVER_START( saiyugoub1 )
MDRV_SOUND_ADD("adpcm", MSM5205, 9263750 / 24)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( saiyugoub2 )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(ddragon_state)
+static MACHINE_CONFIG_START( saiyugoub2, ddragon_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CLOCK / 8) /* 1.5 MHz (12MHz oscillator) */
@@ -708,7 +699,7 @@ static MACHINE_DRIVER_START( saiyugoub2 )
MDRV_SOUND_ROUTE(1, "mono", 0.50)
MDRV_SOUND_ROUTE(2, "mono", 0.50)
MDRV_SOUND_ROUTE(3, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/chinsan.c b/src/mame/drivers/chinsan.c
index d1644ab5860..df5cd8ea12b 100644
--- a/src/mame/drivers/chinsan.c
+++ b/src/mame/drivers/chinsan.c
@@ -591,10 +591,7 @@ static MACHINE_RESET( chinsan )
}
-static MACHINE_DRIVER_START( chinsan )
-
- /* driver data */
- MDRV_DRIVER_DATA(chinsan_state)
+static MACHINE_CONFIG_START( chinsan, chinsan_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,10000000/2) /* ? MHz */
@@ -633,7 +630,7 @@ static MACHINE_DRIVER_START( chinsan )
MDRV_SOUND_ADD("adpcm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/chqflag.c b/src/mame/drivers/chqflag.c
index 2822da9ce18..3990169d87d 100644
--- a/src/mame/drivers/chqflag.c
+++ b/src/mame/drivers/chqflag.c
@@ -385,10 +385,7 @@ static MACHINE_RESET( chqflag )
state->wheel = 0;
}
-static MACHINE_DRIVER_START( chqflag )
-
- /* driver data */
- MDRV_DRIVER_DATA(chqflag_state)
+static MACHINE_CONFIG_START( chqflag, chqflag_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI,XTAL_24MHz/8) /* 052001 (verified on pcb) */
@@ -442,7 +439,7 @@ static MACHINE_DRIVER_START( chqflag )
MDRV_SOUND_CONFIG(k007232_interface_2)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.20)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( chqflag )
ROM_REGION( 0x58000, "maincpu", 0 ) /* 052001 code */
diff --git a/src/mame/drivers/chsuper.c b/src/mame/drivers/chsuper.c
index 603afc6f31e..52341925693 100644
--- a/src/mame/drivers/chsuper.c
+++ b/src/mame/drivers/chsuper.c
@@ -189,7 +189,7 @@ static GFXDECODE_START( chsuper )
GFXDECODE_ENTRY( "gfx1", 0x00000, charlayout, 0, 1 )
GFXDECODE_END
-static MACHINE_DRIVER_START( chsuper )
+static MACHINE_CONFIG_START( chsuper, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 2) /* HD64180RP8, 8 MHz? */
@@ -218,7 +218,7 @@ static MACHINE_DRIVER_START( chsuper )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROM Regions definition
diff --git a/src/mame/drivers/cidelsa.c b/src/mame/drivers/cidelsa.c
index 4673446e4bc..ae14927f562 100644
--- a/src/mame/drivers/cidelsa.c
+++ b/src/mame/drivers/cidelsa.c
@@ -509,8 +509,7 @@ static MACHINE_RESET( cidelsa )
/* Machine Drivers */
-static MACHINE_DRIVER_START( destryer )
- MDRV_DRIVER_DATA(cidelsa_state)
+static MACHINE_CONFIG_START( destryer, cidelsa_state )
/* basic system hardware */
MDRV_CPU_ADD(CDP1802_TAG, CDP1802, DESTRYER_CHR1)
@@ -523,11 +522,10 @@ static MACHINE_DRIVER_START( destryer )
MDRV_MACHINE_RESET(cidelsa)
/* sound and video hardware */
- MDRV_IMPORT_FROM(destryer_video)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(destryer_video)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( destryera )
- MDRV_DRIVER_DATA(cidelsa_state)
+static MACHINE_CONFIG_START( destryera, cidelsa_state )
/* basic system hardware */
MDRV_CPU_ADD(CDP1802_TAG, CDP1802, DESTRYER_CHR1)
@@ -540,11 +538,10 @@ static MACHINE_DRIVER_START( destryera )
MDRV_MACHINE_RESET(cidelsa)
/* sound and video hardware */
- MDRV_IMPORT_FROM(destryer_video)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(destryer_video)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( altair )
- MDRV_DRIVER_DATA(cidelsa_state)
+static MACHINE_CONFIG_START( altair, cidelsa_state )
/* basic system hardware */
@@ -563,11 +560,10 @@ static MACHINE_DRIVER_START( altair )
MDRV_CDP1852_ADD("ic26", ALTAIR_CHR1 / 8, altair_cdp1852_out1_intf) /* clock is CDP1802 TPB */
/* sound and video hardware */
- MDRV_IMPORT_FROM(altair_video)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(altair_video)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( draco )
- MDRV_DRIVER_DATA(cidelsa_state)
+static MACHINE_CONFIG_START( draco, cidelsa_state )
/* basic system hardware */
MDRV_CPU_ADD(CDP1802_TAG, CDP1802, DRACO_CHR1)
@@ -591,8 +587,8 @@ static MACHINE_DRIVER_START( draco )
MDRV_CDP1852_ADD("ic32", DRACO_CHR1 / 8, draco_cdp1852_out1_intf) /* clock is CDP1802 TPB */
/* sound and video hardware */
- MDRV_IMPORT_FROM(draco_video)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(draco_video)
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/cinemat.c b/src/mame/drivers/cinemat.c
index 6bf7900bde0..6c3407f8540 100644
--- a/src/mame/drivers/cinemat.c
+++ b/src/mame/drivers/cinemat.c
@@ -992,7 +992,7 @@ static const ccpu_config config_jmi =
*
*************************************/
-static MACHINE_DRIVER_START( cinemat_nojmi_4k )
+static MACHINE_CONFIG_START( cinemat_nojmi_4k, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", CCPU, MASTER_CLOCK/4)
@@ -1014,42 +1014,37 @@ static MACHINE_DRIVER_START( cinemat_nojmi_4k )
MDRV_VIDEO_START(cinemat_bilevel)
MDRV_VIDEO_UPDATE(cinemat)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cinemat_jmi_4k )
- MDRV_IMPORT_FROM(cinemat_nojmi_4k)
+static MACHINE_CONFIG_DERIVED( cinemat_jmi_4k, cinemat_nojmi_4k )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CONFIG(config_jmi)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cinemat_nojmi_8k )
- MDRV_IMPORT_FROM(cinemat_nojmi_4k)
+static MACHINE_CONFIG_DERIVED( cinemat_nojmi_8k, cinemat_nojmi_4k )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(program_map_8k)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cinemat_jmi_8k )
- MDRV_IMPORT_FROM(cinemat_jmi_4k)
+static MACHINE_CONFIG_DERIVED( cinemat_jmi_8k, cinemat_jmi_4k )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(program_map_8k)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cinemat_jmi_16k )
- MDRV_IMPORT_FROM(cinemat_jmi_4k)
+static MACHINE_CONFIG_DERIVED( cinemat_jmi_16k, cinemat_jmi_4k )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(program_map_16k)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cinemat_jmi_32k )
- MDRV_IMPORT_FROM(cinemat_jmi_4k)
+static MACHINE_CONFIG_DERIVED( cinemat_jmi_32k, cinemat_jmi_4k )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(program_map_32k)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1060,116 +1055,100 @@ MACHINE_DRIVER_END
*
*************************************/
-static MACHINE_DRIVER_START( spacewar )
- MDRV_IMPORT_FROM(cinemat_nojmi_4k)
- MDRV_IMPORT_FROM(spacewar_sound)
+static MACHINE_CONFIG_DERIVED( spacewar, cinemat_nojmi_4k )
+ MDRV_FRAGMENT_ADD(spacewar_sound)
MDRV_VIDEO_UPDATE(spacewar)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( barrier )
- MDRV_IMPORT_FROM(cinemat_jmi_4k)
- MDRV_IMPORT_FROM(barrier_sound)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( barrier, cinemat_jmi_4k )
+ MDRV_FRAGMENT_ADD(barrier_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( speedfrk )
- MDRV_IMPORT_FROM(cinemat_nojmi_8k)
- MDRV_IMPORT_FROM(speedfrk_sound)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( speedfrk, cinemat_nojmi_8k )
+ MDRV_FRAGMENT_ADD(speedfrk_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( starhawk )
- MDRV_IMPORT_FROM(cinemat_jmi_4k)
- MDRV_IMPORT_FROM(starhawk_sound)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( starhawk, cinemat_jmi_4k )
+ MDRV_FRAGMENT_ADD(starhawk_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sundance )
- MDRV_IMPORT_FROM(cinemat_jmi_8k)
- MDRV_IMPORT_FROM(sundance_sound)
+static MACHINE_CONFIG_DERIVED( sundance, cinemat_jmi_8k )
+ MDRV_FRAGMENT_ADD(sundance_sound)
MDRV_VIDEO_START(cinemat_16level)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tailg )
- MDRV_IMPORT_FROM(cinemat_nojmi_8k)
- MDRV_IMPORT_FROM(tailg_sound)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( tailg, cinemat_nojmi_8k )
+ MDRV_FRAGMENT_ADD(tailg_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( warrior )
- MDRV_IMPORT_FROM(cinemat_jmi_8k)
- MDRV_IMPORT_FROM(warrior_sound)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( warrior, cinemat_jmi_8k )
+ MDRV_FRAGMENT_ADD(warrior_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( armora )
- MDRV_IMPORT_FROM(cinemat_jmi_16k)
- MDRV_IMPORT_FROM(armora_sound)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( armora, cinemat_jmi_16k )
+ MDRV_FRAGMENT_ADD(armora_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ripoff )
- MDRV_IMPORT_FROM(cinemat_jmi_8k)
- MDRV_IMPORT_FROM(ripoff_sound)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( ripoff, cinemat_jmi_8k )
+ MDRV_FRAGMENT_ADD(ripoff_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( starcas )
- MDRV_IMPORT_FROM(cinemat_jmi_8k)
- MDRV_IMPORT_FROM(starcas_sound)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( starcas, cinemat_jmi_8k )
+ MDRV_FRAGMENT_ADD(starcas_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( solarq )
- MDRV_IMPORT_FROM(cinemat_jmi_16k)
- MDRV_IMPORT_FROM(solarq_sound)
+static MACHINE_CONFIG_DERIVED( solarq, cinemat_jmi_16k )
+ MDRV_FRAGMENT_ADD(solarq_sound)
MDRV_VIDEO_START(cinemat_64level)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( boxingb )
- MDRV_IMPORT_FROM(cinemat_jmi_32k)
- MDRV_IMPORT_FROM(boxingb_sound)
+static MACHINE_CONFIG_DERIVED( boxingb, cinemat_jmi_32k )
+ MDRV_FRAGMENT_ADD(boxingb_sound)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 1024, 0, 788)
MDRV_VIDEO_START(cinemat_color)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wotw )
- MDRV_IMPORT_FROM(cinemat_jmi_16k)
+static MACHINE_CONFIG_DERIVED( wotw, cinemat_jmi_16k )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 1120, 0, 767)
- MDRV_IMPORT_FROM(wotw_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(wotw_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wotwc )
- MDRV_IMPORT_FROM(cinemat_jmi_16k)
- MDRV_IMPORT_FROM(wotwc_sound)
+static MACHINE_CONFIG_DERIVED( wotwc, cinemat_jmi_16k )
+ MDRV_FRAGMENT_ADD(wotwc_sound)
MDRV_VIDEO_START(cinemat_color)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( demon )
- MDRV_IMPORT_FROM(cinemat_jmi_16k)
- MDRV_IMPORT_FROM(demon_sound)
+static MACHINE_CONFIG_DERIVED( demon, cinemat_jmi_16k )
+ MDRV_FRAGMENT_ADD(demon_sound)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 1024, 0, 805)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qb3 )
- MDRV_IMPORT_FROM(cinemat_jmi_32k)
- MDRV_IMPORT_FROM(qb3_sound)
+static MACHINE_CONFIG_DERIVED( qb3, cinemat_jmi_32k )
+ MDRV_FRAGMENT_ADD(qb3_sound)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_DATA_MAP(data_map_qb3)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 1120, 0, 780)
MDRV_VIDEO_START(cinemat_qb3color)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/circus.c b/src/mame/drivers/circus.c
index db6bf5f589a..a3c794c068c 100644
--- a/src/mame/drivers/circus.c
+++ b/src/mame/drivers/circus.c
@@ -287,10 +287,7 @@ static MACHINE_RESET( circus )
}
-static MACHINE_DRIVER_START( circus )
-
- /* driver data */
- MDRV_DRIVER_DATA(circus_state)
+static MACHINE_CONFIG_START( circus, circus_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, XTAL_11_289MHz / 16) /* 705.562kHz */
@@ -325,16 +322,15 @@ static MACHINE_DRIVER_START( circus )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(circus)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( robotbwl )
+static MACHINE_CONFIG_START( robotbwl, circus_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, XTAL_11_289MHz / 16) /* 705.562kHz */
/* driver data */
- MDRV_DRIVER_DATA(circus_state)
MDRV_CPU_PROGRAM_MAP(circus_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
@@ -366,12 +362,9 @@ static MACHINE_DRIVER_START( robotbwl )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(robotbwl)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( crash )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(circus_state)
+static MACHINE_CONFIG_START( crash, circus_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, XTAL_11_289MHz / 16) /* 705.562kHz */
@@ -406,12 +399,9 @@ static MACHINE_DRIVER_START( crash )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(crash)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( ripcord )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(circus_state)
+static MACHINE_CONFIG_START( ripcord, circus_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, XTAL_11_289MHz / 16) /* 705.562kHz */
@@ -446,7 +436,7 @@ static MACHINE_DRIVER_START( ripcord )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(circus)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/circusc.c b/src/mame/drivers/circusc.c
index d5ed4b42777..4c973113f00 100644
--- a/src/mame/drivers/circusc.c
+++ b/src/mame/drivers/circusc.c
@@ -331,10 +331,7 @@ static DISCRETE_SOUND_START( circusc )
DISCRETE_SOUND_END
-static MACHINE_DRIVER_START( circusc )
-
- /* driver data */
- MDRV_DRIVER_DATA(circusc_state)
+static MACHINE_CONFIG_START( circusc, circusc_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2048000) /* 2 MHz */
@@ -380,7 +377,7 @@ static MACHINE_DRIVER_START( circusc )
MDRV_SOUND_CONFIG_DISCRETE(circusc)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cischeat.c b/src/mame/drivers/cischeat.c
index 68b5d8abed7..a0abdfa4d94 100644
--- a/src/mame/drivers/cischeat.c
+++ b/src/mame/drivers/cischeat.c
@@ -1565,7 +1565,7 @@ static INTERRUPT_GEN( cischeat_interrupt )
-static MACHINE_DRIVER_START( bigrun )
+static MACHINE_CONFIG_START( bigrun, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("cpu1", M68000, 10000000)
@@ -1614,13 +1614,12 @@ static MACHINE_DRIVER_START( bigrun )
MDRV_OKIM6295_ADD("oki2", STD_OKI_CLOCK, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cischeat )
+static MACHINE_CONFIG_DERIVED( cischeat, bigrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(bigrun)
MDRV_CPU_MODIFY("cpu1")
MDRV_CPU_PROGRAM_MAP(cischeat_map)
@@ -1642,13 +1641,12 @@ static MACHINE_DRIVER_START( cischeat )
MDRV_VIDEO_START(cischeat)
MDRV_VIDEO_UPDATE(cischeat)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( f1gpstar )
+static MACHINE_CONFIG_DERIVED( f1gpstar, bigrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(bigrun)
MDRV_CPU_MODIFY("cpu1")
MDRV_CPU_CLOCK(12000000)
MDRV_CPU_PROGRAM_MAP(f1gpstar_map)
@@ -1670,13 +1668,12 @@ static MACHINE_DRIVER_START( f1gpstar )
MDRV_VIDEO_START(f1gpstar)
MDRV_VIDEO_UPDATE(f1gpstar)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( f1gpstr2 )
+static MACHINE_CONFIG_DERIVED( f1gpstr2, f1gpstar )
/* basic machine hardware */
- MDRV_IMPORT_FROM(f1gpstar)
MDRV_CPU_MODIFY("cpu1")
MDRV_CPU_PROGRAM_MAP(f1gpstr2_map)
@@ -1687,7 +1684,7 @@ static MACHINE_DRIVER_START( f1gpstr2 )
MDRV_CPU_ADD("cpu5", M68000, 12000000/* was 10000000 */)
MDRV_CPU_PROGRAM_MAP(f1gpstr2_io_map)
MDRV_CPU_VBLANK_INT("screen", irq4_line_hold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**************************************************************************
@@ -1713,7 +1710,7 @@ static INTERRUPT_GEN( interrupt_scudhamm )
}
-static MACHINE_DRIVER_START( scudhamm )
+static MACHINE_CONFIG_START( scudhamm, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000, 12000000)
@@ -1746,7 +1743,7 @@ static MACHINE_DRIVER_START( scudhamm )
MDRV_OKIM6295_ADD("oki2", 2112000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**************************************************************************
@@ -1764,15 +1761,14 @@ static INTERRUPT_GEN( interrupt_armchmp2)
}
}
-static MACHINE_DRIVER_START( armchmp2 )
+static MACHINE_CONFIG_DERIVED( armchmp2, scudhamm )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scudhamm)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(armchmp2_map)
MDRV_CPU_VBLANK_INT_HACK(interrupt_armchmp2,INTERRUPT_NUM_SCUDHAMM)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/citycon.c b/src/mame/drivers/citycon.c
index e5b1cbe34c7..823aa1fd5b0 100644
--- a/src/mame/drivers/citycon.c
+++ b/src/mame/drivers/citycon.c
@@ -204,10 +204,7 @@ static MACHINE_RESET( citycon )
}
-static MACHINE_DRIVER_START( citycon )
-
- /* driver data */
- MDRV_DRIVER_DATA(citycon_state)
+static MACHINE_CONFIG_START( citycon, citycon_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2048000) /* 2.048 MHz ??? */
@@ -248,7 +245,7 @@ static MACHINE_DRIVER_START( citycon )
MDRV_SOUND_ROUTE(1, "mono", 0.40)
MDRV_SOUND_ROUTE(2, "mono", 0.40)
MDRV_SOUND_ROUTE(3, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/clayshoo.c b/src/mame/drivers/clayshoo.c
index 16d3cf61b0b..e584910a6a4 100644
--- a/src/mame/drivers/clayshoo.c
+++ b/src/mame/drivers/clayshoo.c
@@ -323,10 +323,7 @@ static MACHINE_RESET( clayshoo )
state->analog_port_val = 0;
}
-static MACHINE_DRIVER_START( clayshoo )
-
- /* driver data */
- MDRV_DRIVER_DATA(clayshoo_state)
+static MACHINE_CONFIG_START( clayshoo, clayshoo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,5068000/4) /* 5.068/4 Mhz (divider is a guess) */
@@ -349,7 +346,7 @@ static MACHINE_DRIVER_START( clayshoo )
MDRV_PPI8255_ADD( "ppi8255_0", ppi8255_intf[0] )
MDRV_PPI8255_ADD( "ppi8255_1", ppi8255_intf[1] )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cliffhgr.c b/src/mame/drivers/cliffhgr.c
index a1c23499243..b78aa6d89fd 100644
--- a/src/mame/drivers/cliffhgr.c
+++ b/src/mame/drivers/cliffhgr.c
@@ -684,7 +684,7 @@ DISCRETE_SOUND_EXTERN( cliffhgr );
*
*************************************/
-static MACHINE_DRIVER_START( cliffhgr )
+static MACHINE_CONFIG_START( cliffhgr, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4MHz */
MDRV_CPU_PROGRAM_MAP(mainmem)
@@ -701,7 +701,7 @@ static MACHINE_DRIVER_START( cliffhgr )
MDRV_LASERDISC_OVERLAY_CLIP(15-12, 15+32*8+12-1, 27-9, 27+24*8+9-1)
/* start with the TMS9928a video configuration */
- MDRV_IMPORT_FROM(tms9928a)
+ MDRV_FRAGMENT_ADD(tms9928a)
/* override video rendering and raw screen info */
MDRV_DEVICE_REMOVE("screen")
@@ -717,7 +717,7 @@ static MACHINE_DRIVER_START( cliffhgr )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(cliffhgr)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cloak.c b/src/mame/drivers/cloak.c
index 4f93fdd8ec8..f03d4e93acf 100644
--- a/src/mame/drivers/cloak.c
+++ b/src/mame/drivers/cloak.c
@@ -330,7 +330,7 @@ static const pokey_interface pokey_interface_2 =
*
*************************************/
-static MACHINE_DRIVER_START( cloak )
+static MACHINE_CONFIG_START( cloak, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1000000) /* 1 MHz ???? */
@@ -369,7 +369,7 @@ static MACHINE_DRIVER_START( cloak )
MDRV_SOUND_ADD("pokey2", POKEY, XTAL_10MHz/8) /* Accurate to recording */
MDRV_SOUND_CONFIG(pokey_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cloud9.c b/src/mame/drivers/cloud9.c
index 9fcdd2347a8..77e2a25c2aa 100644
--- a/src/mame/drivers/cloud9.c
+++ b/src/mame/drivers/cloud9.c
@@ -456,10 +456,7 @@ static const pokey_interface pokey_config =
*
*************************************/
-static MACHINE_DRIVER_START( cloud9 )
-
- /* driver data */
- MDRV_DRIVER_DATA(cloud9_state)
+static MACHINE_CONFIG_START( cloud9, cloud9_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/8)
@@ -493,7 +490,7 @@ static MACHINE_DRIVER_START( cloud9 )
MDRV_SOUND_ADD("pokey2", POKEY, MASTER_CLOCK/8)
MDRV_SOUND_CONFIG(pokey_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/clshroad.c b/src/mame/drivers/clshroad.c
index 07f4290920a..b1f44ddff98 100644
--- a/src/mame/drivers/clshroad.c
+++ b/src/mame/drivers/clshroad.c
@@ -248,7 +248,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( firebatl )
+static MACHINE_CONFIG_START( firebatl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3000000) /* ? */
@@ -281,9 +281,9 @@ static MACHINE_DRIVER_START( firebatl )
MDRV_SOUND_ADD("custom", WIPING, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( clshroad )
+static MACHINE_CONFIG_START( clshroad, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/4) /* ? real speed unknown. 3MHz is too low and causes problems */
@@ -316,7 +316,7 @@ static MACHINE_DRIVER_START( clshroad )
MDRV_SOUND_ADD("custom", WIPING, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cmmb.c b/src/mame/drivers/cmmb.c
index 9c7c8b9d40b..c15f59445f8 100644
--- a/src/mame/drivers/cmmb.c
+++ b/src/mame/drivers/cmmb.c
@@ -270,7 +270,7 @@ static MACHINE_RESET( cmmb )
{
}
-static MACHINE_DRIVER_START( cmmb )
+static MACHINE_CONFIG_START( cmmb, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M65C02,8000000/2) // unknown clock
@@ -296,7 +296,7 @@ static MACHINE_DRIVER_START( cmmb )
// MDRV_SPEAKER_STANDARD_MONO("mono")
// MDRV_SOUND_ADD("aysnd", AY8910, 8000000/4)
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/cninja.c b/src/mame/drivers/cninja.c
index 4e7b5cbafd9..14617c77cf3 100644
--- a/src/mame/drivers/cninja.c
+++ b/src/mame/drivers/cninja.c
@@ -842,10 +842,7 @@ static MACHINE_RESET( cninja )
state->irq_mask = 0;
}
-static MACHINE_DRIVER_START( cninja )
-
- /* driver data */
- MDRV_DRIVER_DATA(cninja_state)
+static MACHINE_CONFIG_START( cninja, cninja_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -892,12 +889,9 @@ static MACHINE_DRIVER_START( cninja )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( stoneage )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(cninja_state)
+static MACHINE_CONFIG_START( stoneage, cninja_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -942,13 +936,10 @@ static MACHINE_DRIVER_START( stoneage )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cninjabl )
- /* driver data */
- MDRV_DRIVER_DATA(cninja_state)
+static MACHINE_CONFIG_START( cninjabl, cninja_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -989,13 +980,10 @@ static MACHINE_DRIVER_START( cninjabl )
MDRV_OKIM6295_ADD("oki1", 32220000/32, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( edrandy )
-
- /* driver data */
- MDRV_DRIVER_DATA(cninja_state)
+static MACHINE_CONFIG_START( edrandy, cninja_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -1042,12 +1030,9 @@ static MACHINE_DRIVER_START( edrandy )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( robocop2 )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(cninja_state)
+static MACHINE_CONFIG_START( robocop2, cninja_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -1097,12 +1082,9 @@ static MACHINE_DRIVER_START( robocop2 )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.60)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.60)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( mutantf )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(cninja_state)
+static MACHINE_CONFIG_START( mutantf, cninja_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -1146,7 +1128,7 @@ static MACHINE_DRIVER_START( mutantf )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.60)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**********************************************************************************/
diff --git a/src/mame/drivers/cntsteer.c b/src/mame/drivers/cntsteer.c
index fc983078602..695868b4c76 100644
--- a/src/mame/drivers/cntsteer.c
+++ b/src/mame/drivers/cntsteer.c
@@ -850,10 +850,7 @@ static const ay8910_interface ay8910_config =
DEVCB_NULL
};
-static MACHINE_DRIVER_START( cntsteer )
-
- /* driver data */
- MDRV_DRIVER_DATA(cntsteer_state)
+static MACHINE_CONFIG_START( cntsteer, cntsteer_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2000000) /* ? */
@@ -899,12 +896,9 @@ static MACHINE_DRIVER_START( cntsteer )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( zerotrgt )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(cntsteer_state)
+static MACHINE_CONFIG_START( zerotrgt, cntsteer_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2000000) /* ? */
@@ -947,7 +941,7 @@ static MACHINE_DRIVER_START( zerotrgt )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/coinmstr.c b/src/mame/drivers/coinmstr.c
index 26d40251c27..ab964434fb6 100644
--- a/src/mame/drivers/coinmstr.c
+++ b/src/mame/drivers/coinmstr.c
@@ -980,7 +980,7 @@ static const mc6845_interface h46505_intf =
};
-static MACHINE_DRIVER_START( coinmstr )
+static MACHINE_CONFIG_START( coinmstr, driver_data_t )
MDRV_CPU_ADD("maincpu",Z80,8000000) // ?
MDRV_CPU_PROGRAM_MAP(coinmstr_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
@@ -1011,31 +1011,27 @@ static MACHINE_DRIVER_START( coinmstr )
MDRV_SOUND_ADD("aysnd", AY8910, 1500000)
MDRV_SOUND_CONFIG(ay8912_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( quizmstr )
- MDRV_IMPORT_FROM(coinmstr)
+static MACHINE_CONFIG_DERIVED( quizmstr, coinmstr )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(quizmstr_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( trailblz )
- MDRV_IMPORT_FROM(coinmstr)
+static MACHINE_CONFIG_DERIVED( trailblz, coinmstr )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(trailblz_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( supnudg2 )
- MDRV_IMPORT_FROM(coinmstr)
+static MACHINE_CONFIG_DERIVED( supnudg2, coinmstr )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(supnudg2_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pokeroul )
- MDRV_IMPORT_FROM(coinmstr)
+static MACHINE_CONFIG_DERIVED( pokeroul, coinmstr )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(pokeroul_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/coinmvga.c b/src/mame/drivers/coinmvga.c
index 1e4591396dd..90fc92cc32b 100644
--- a/src/mame/drivers/coinmvga.c
+++ b/src/mame/drivers/coinmvga.c
@@ -652,7 +652,7 @@ static INTERRUPT_GEN( vblank_irq )
* Machine Drivers *
*************************/
-static MACHINE_DRIVER_START( coinmvga )
+static MACHINE_CONFIG_START( coinmvga, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H83007, CPU_CLOCK) /* xtal */
@@ -685,7 +685,7 @@ static MACHINE_DRIVER_START( coinmvga )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/cojag.c b/src/mame/drivers/cojag.c
index 861c67ac11a..9a672244af3 100644
--- a/src/mame/drivers/cojag.c
+++ b/src/mame/drivers/cojag.c
@@ -1102,7 +1102,7 @@ static const jaguar_cpu_config dsp_config =
};
-static MACHINE_DRIVER_START( cojagr3k )
+static MACHINE_CONFIG_START( cojagr3k, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R3041BE, R3000_CLOCK)
@@ -1142,16 +1142,15 @@ static MACHINE_DRIVER_START( cojagr3k )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cojag68k )
- MDRV_IMPORT_FROM(cojagr3k)
+static MACHINE_CONFIG_DERIVED( cojag68k, cojagr3k )
/* basic machine hardware */
MDRV_CPU_REPLACE("maincpu", M68EC020, M68K_CLOCK/2)
MDRV_CPU_PROGRAM_MAP(m68020_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/combatsc.c b/src/mame/drivers/combatsc.c
index d2782b1c315..ab3efa817d9 100644
--- a/src/mame/drivers/combatsc.c
+++ b/src/mame/drivers/combatsc.c
@@ -734,10 +734,7 @@ static MACHINE_RESET( combatsc )
}
/* combat school (original) */
-static MACHINE_DRIVER_START( combatsc )
-
- /* driver data */
- MDRV_DRIVER_DATA(combatsc_state)
+static MACHINE_CONFIG_START( combatsc, combatsc_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, 3000000*4) /* 3 MHz? */
@@ -779,13 +776,10 @@ static MACHINE_DRIVER_START( combatsc )
MDRV_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* combat school (bootleg on different hardware) */
-static MACHINE_DRIVER_START( combatscb )
-
- /* driver data */
- MDRV_DRIVER_DATA(combatsc_state)
+static MACHINE_CONFIG_START( combatscb, combatsc_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, 3000000*4) /* 3 MHz? */
@@ -824,7 +818,7 @@ static MACHINE_DRIVER_START( combatscb )
MDRV_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/comebaby.c b/src/mame/drivers/comebaby.c
index ae61f0f41b3..ed19957672f 100644
--- a/src/mame/drivers/comebaby.c
+++ b/src/mame/drivers/comebaby.c
@@ -76,7 +76,7 @@ static INPUT_PORTS_START( comebaby )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( comebaby )
+static MACHINE_CONFIG_START( comebaby, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PENTIUM, 2000000000) /* Probably a Pentium .. ?? Mhz*/
MDRV_CPU_PROGRAM_MAP(comebaby_map)
@@ -93,7 +93,7 @@ static MACHINE_DRIVER_START( comebaby )
MDRV_VIDEO_START(comebaby)
MDRV_VIDEO_UPDATE(comebaby)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START(comebaby)
diff --git a/src/mame/drivers/commando.c b/src/mame/drivers/commando.c
index de25c56b76d..2a0e3e128ed 100644
--- a/src/mame/drivers/commando.c
+++ b/src/mame/drivers/commando.c
@@ -245,10 +245,7 @@ static MACHINE_RESET( commando )
}
-static MACHINE_DRIVER_START( commando )
-
- /* driver data */
- MDRV_DRIVER_DATA(commando_state)
+static MACHINE_CONFIG_START( commando, commando_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, PHI_MAIN) // ???
@@ -288,7 +285,7 @@ static MACHINE_DRIVER_START( commando )
MDRV_SOUND_ADD("ym2", YM2203, PHI_B/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/compgolf.c b/src/mame/drivers/compgolf.c
index ed7a00239a5..6f6267d3ea9 100644
--- a/src/mame/drivers/compgolf.c
+++ b/src/mame/drivers/compgolf.c
@@ -248,10 +248,7 @@ static MACHINE_RESET( compgolf )
state->scrolly_hi = 0;
}
-static MACHINE_DRIVER_START( compgolf )
-
- /* driver data */
- MDRV_DRIVER_DATA(compgolf_state)
+static MACHINE_CONFIG_START( compgolf, compgolf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2000000)
@@ -281,7 +278,7 @@ static MACHINE_DRIVER_START( compgolf )
MDRV_SOUND_ADD("ymsnd", YM2203, 1500000)
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/contra.c b/src/mame/drivers/contra.c
index d218a714500..f5a0c003e8c 100644
--- a/src/mame/drivers/contra.c
+++ b/src/mame/drivers/contra.c
@@ -181,10 +181,7 @@ static MACHINE_START( contra )
state->k007121_2 = machine->device("k007121_2");
}
-static MACHINE_DRIVER_START( contra )
-
- /* driver data */
- MDRV_DRIVER_DATA(contra_state)
+static MACHINE_CONFIG_START( contra, contra_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, XTAL_24MHz/16) /* 1500000? */
@@ -222,7 +219,7 @@ static MACHINE_DRIVER_START( contra )
MDRV_SOUND_ADD("ymsnd", YM2151, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.60)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( contra )
diff --git a/src/mame/drivers/coolpool.c b/src/mame/drivers/coolpool.c
index 51458acdbda..e5134cc1f44 100644
--- a/src/mame/drivers/coolpool.c
+++ b/src/mame/drivers/coolpool.c
@@ -862,9 +862,7 @@ static const tms34010_config tms_config_coolpool =
*
*************************************/
-static MACHINE_DRIVER_START( amerdart )
-
- MDRV_DRIVER_DATA( coolpool_state )
+static MACHINE_CONFIG_START( amerdart, coolpool_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, XTAL_40MHz)
@@ -894,12 +892,10 @@ static MACHINE_DRIVER_START( amerdart )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( coolpool )
- MDRV_DRIVER_DATA( coolpool_state )
+static MACHINE_CONFIG_START( coolpool, coolpool_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, XTAL_40MHz)
@@ -929,15 +925,14 @@ static MACHINE_DRIVER_START( coolpool )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( 9ballsht )
- MDRV_IMPORT_FROM(coolpool)
+static MACHINE_CONFIG_DERIVED( 9ballsht, coolpool )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(nballsht_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/coolridr.c b/src/mame/drivers/coolridr.c
index bcafdd2ec30..5250006529a 100644
--- a/src/mame/drivers/coolridr.c
+++ b/src/mame/drivers/coolridr.c
@@ -1056,7 +1056,7 @@ static MACHINE_RESET ( coolridr )
cputag_set_input_line(machine, "soundcpu", INPUT_LINE_HALT, ASSERT_LINE);
}
-static MACHINE_DRIVER_START( coolridr )
+static MACHINE_CONFIG_START( coolridr, driver_data_t )
MDRV_CPU_ADD("maincpu", SH2, 28000000) // 28 mhz
MDRV_CPU_PROGRAM_MAP(system_h1_map)
MDRV_CPU_VBLANK_INT("screen",system_h1)
@@ -1082,7 +1082,7 @@ static MACHINE_DRIVER_START( coolridr )
MDRV_VIDEO_START(coolridr)
MDRV_VIDEO_UPDATE(coolridr)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( coolridr )
ROM_REGION( 0x200000, "maincpu", 0 ) /* SH2 code */
diff --git a/src/mame/drivers/cop01.c b/src/mame/drivers/cop01.c
index 9bad2323e1e..19e041376bb 100644
--- a/src/mame/drivers/cop01.c
+++ b/src/mame/drivers/cop01.c
@@ -436,10 +436,7 @@ static MACHINE_RESET( cop01 )
}
-static MACHINE_DRIVER_START( cop01 )
-
- /* driver data */
- MDRV_DRIVER_DATA(cop01_state)
+static MACHINE_CONFIG_START( cop01, cop01_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* ???? */
@@ -480,12 +477,9 @@ static MACHINE_DRIVER_START( cop01 )
MDRV_SOUND_ADD("ay3", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( mightguy )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(cop01_state)
+static MACHINE_CONFIG_START( mightguy, cop01_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* ???? */
@@ -520,7 +514,7 @@ static MACHINE_DRIVER_START( mightguy )
MDRV_SOUND_ADD("ymsnd", YM3526, 4000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/copsnrob.c b/src/mame/drivers/copsnrob.c
index 2553602b7e0..cda26eb2a2a 100644
--- a/src/mame/drivers/copsnrob.c
+++ b/src/mame/drivers/copsnrob.c
@@ -271,10 +271,7 @@ static MACHINE_RESET( copsnrob )
}
-static MACHINE_DRIVER_START( copsnrob )
-
- /* driver data */
- MDRV_DRIVER_DATA(copsnrob_state)
+static MACHINE_CONFIG_START( copsnrob, copsnrob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,14318180/16) /* 894886.25 kHz */
@@ -296,7 +293,7 @@ static MACHINE_DRIVER_START( copsnrob )
MDRV_PALETTE_INIT(copsnrob)
MDRV_VIDEO_UPDATE(copsnrob)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cosmic.c b/src/mame/drivers/cosmic.c
index 91540c14549..3c17c56d9ab 100644
--- a/src/mame/drivers/cosmic.c
+++ b/src/mame/drivers/cosmic.c
@@ -1049,10 +1049,7 @@ static MACHINE_RESET( cosmic )
}
-static MACHINE_DRIVER_START( cosmic )
-
- /* driver data */
- MDRV_DRIVER_DATA(cosmic_state)
+static MACHINE_CONFIG_START( cosmic, cosmic_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,Z80_MASTER_CLOCK/6) /* 1.8026 MHz*/
@@ -1066,13 +1063,12 @@ static MACHINE_DRIVER_START( cosmic )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( panic )
+static MACHINE_CONFIG_DERIVED( panic, cosmic )
/* basic machine hardware */
- MDRV_IMPORT_FROM(cosmic)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(panic_map)
@@ -1094,13 +1090,12 @@ static MACHINE_DRIVER_START( panic )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cosmica )
+static MACHINE_CONFIG_DERIVED( cosmica, cosmic )
/* basic machine hardware */
- MDRV_IMPORT_FROM(cosmic)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(cosmica_map)
@@ -1123,13 +1118,10 @@ static MACHINE_DRIVER_START( cosmica )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cosmicg )
- /* driver data */
- MDRV_DRIVER_DATA(cosmic_state)
+static MACHINE_CONFIG_START( cosmicg, cosmic_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS9980, COSMICG_MASTER_CLOCK/8)
@@ -1165,13 +1157,12 @@ static MACHINE_DRIVER_START( cosmicg )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( magspot )
+static MACHINE_CONFIG_DERIVED( magspot, cosmic )
/* basic machine hardware */
- MDRV_IMPORT_FROM(cosmic)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(magspot_map)
@@ -1189,23 +1180,21 @@ static MACHINE_DRIVER_START( magspot )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( devzone )
+static MACHINE_CONFIG_DERIVED( devzone, magspot )
/* basic machine hardware */
- MDRV_IMPORT_FROM(magspot)
/* video hardware */
MDRV_VIDEO_UPDATE(devzone)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nomnlnd )
+static MACHINE_CONFIG_DERIVED( nomnlnd, cosmic )
/* basic machine hardware */
- MDRV_IMPORT_FROM(cosmic)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(magspot_map)
@@ -1223,7 +1212,7 @@ static MACHINE_DRIVER_START( nomnlnd )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( panic )
diff --git a/src/mame/drivers/cps1.c b/src/mame/drivers/cps1.c
index bcf4f62c222..48aaa6ac0b8 100644
--- a/src/mame/drivers/cps1.c
+++ b/src/mame/drivers/cps1.c
@@ -2962,10 +2962,7 @@ static MACHINE_START( qsound )
memory_configure_bank(machine, "bank1", 0, 6, memory_region(machine, "audiocpu") + 0x10000, 0x4000);
}
-static MACHINE_DRIVER_START( cps1_10MHz )
-
- /* driver data */
- MDRV_DRIVER_DATA(cps_state)
+static MACHINE_CONFIG_START( cps1_10MHz, cps_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz ) /* verified on pcb */
@@ -3003,30 +3000,27 @@ static MACHINE_DRIVER_START( cps1_10MHz )
/* CPS PPU is fed by a 16mhz clock,pin 117 outputs a 4mhz clock which is divided by 4 using 2 74ls74 */
MDRV_OKIM6295_ADD("oki", XTAL_16MHz/4/4, OKIM6295_PIN7_HIGH) // pin 7 can be changed by the game code, see f006 on z80
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#ifndef MESS
-static MACHINE_DRIVER_START( cps1_12MHz )
+static MACHINE_CONFIG_DERIVED( cps1_12MHz, cps1_10MHz )
/* basic machine hardware */
- MDRV_IMPORT_FROM(cps1_10MHz)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK( XTAL_12MHz ) /* verified on pcb */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pang3 )
+static MACHINE_CONFIG_DERIVED( pang3, cps1_12MHz )
/* basic machine hardware */
- MDRV_IMPORT_FROM(cps1_12MHz)
MDRV_EEPROM_ADD("eeprom", pang3_eeprom_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qsound )
+static MACHINE_CONFIG_DERIVED( qsound, cps1_12MHz )
/* basic machine hardware */
- MDRV_IMPORT_FROM(cps1_12MHz)
MDRV_CPU_REPLACE("maincpu", M68000, XTAL_12MHz ) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(qsound_main_map)
@@ -3050,14 +3044,11 @@ static MACHINE_DRIVER_START( qsound )
MDRV_SOUND_ADD("qsound", QSOUND, QSOUND_CLOCK)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* bootlegs with PIC */
-static MACHINE_DRIVER_START( cpspicb )
-
- /* driver data */
- MDRV_DRIVER_DATA(cps_state)
+static MACHINE_CONFIG_START( cpspicb, cps_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -3089,15 +3080,14 @@ static MACHINE_DRIVER_START( cpspicb )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wofhfh )
+static MACHINE_CONFIG_DERIVED( wofhfh, cps1_12MHz )
/* basic machine hardware */
- MDRV_IMPORT_FROM(cps1_12MHz)
MDRV_EEPROM_ADD("eeprom", qsound_eeprom_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* incomplete */
static ADDRESS_MAP_START( sf2mdt_z80map, ADDRESS_SPACE_PROGRAM, 8 )
@@ -3133,10 +3123,7 @@ static const msm5205_interface msm5205_interface2 =
MSM5205_S96_4B /* 4KHz 4-bit */
};
-static MACHINE_DRIVER_START( sf2mdt )
-
- /* driver data */
- MDRV_DRIVER_DATA(cps_state)
+static MACHINE_CONFIG_START( sf2mdt, cps_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -3179,7 +3166,7 @@ static MACHINE_DRIVER_START( sf2mdt )
MDRV_SOUND_ADD("msm2", MSM5205, 24000000/64) /* ? */
MDRV_SOUND_CONFIG(msm5205_interface2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -3221,10 +3208,7 @@ Note:
*/
-static MACHINE_DRIVER_START( knightsb )
-
- /* driver data */
- MDRV_DRIVER_DATA(cps_state)
+static MACHINE_CONFIG_START( knightsb, cps_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 24000000 / 2)
@@ -3267,7 +3251,7 @@ static MACHINE_DRIVER_START( knightsb )
MDRV_SOUND_ADD("msm2", MSM5205, 24000000/64) /* ? */
MDRV_SOUND_CONFIG(msm5205_interface2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#endif
diff --git a/src/mame/drivers/cps2.c b/src/mame/drivers/cps2.c
index 34602558ac7..75eb72d8efd 100644
--- a/src/mame/drivers/cps2.c
+++ b/src/mame/drivers/cps2.c
@@ -1205,10 +1205,7 @@ static MACHINE_START( cps2 )
}
-static MACHINE_DRIVER_START( cps2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(cps_state)
+static MACHINE_CONFIG_START( cps2, cps_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -1253,18 +1250,16 @@ static MACHINE_DRIVER_START( cps2 )
MDRV_SOUND_ADD("qsound", QSOUND, QSOUND_CLOCK)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dead_cps2 )
- MDRV_IMPORT_FROM(cps2)
+static MACHINE_CONFIG_DERIVED( dead_cps2, cps2 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dead_cps2_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gigamn2 )
- MDRV_IMPORT_FROM(cps2)
+static MACHINE_CONFIG_DERIVED( gigamn2, cps2 )
MDRV_DEVICE_REMOVE("audiocpu")
@@ -1273,7 +1268,7 @@ static MACHINE_DRIVER_START( gigamn2 )
MDRV_OKIM6295_ADD("oki", XTAL_32MHz/32, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.47)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.47)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/cps3.c b/src/mame/drivers/cps3.c
index 35293fca310..880a7e84d90 100644
--- a/src/mame/drivers/cps3.c
+++ b/src/mame/drivers/cps3.c
@@ -2539,7 +2539,7 @@ static const sh2_cpu_core sh2_conf_cps3 = {
cps3_dma_callback
};
-static MACHINE_DRIVER_START( cps3 )
+static MACHINE_CONFIG_START( cps3, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", SH2, 6250000*4) // external clock is 6.25 Mhz, it sets the intenral multiplier to 4x (this should probably be handled in the core..)
MDRV_CPU_PROGRAM_MAP(cps3_map)
@@ -2576,7 +2576,7 @@ static MACHINE_DRIVER_START( cps3 )
MDRV_SOUND_ADD("cps3", CPS3, MASTER_CLOCK / 3)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(0, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( sfiii )
diff --git a/src/mame/drivers/crbaloon.c b/src/mame/drivers/crbaloon.c
index f8614abef0e..7f613dd0200 100644
--- a/src/mame/drivers/crbaloon.c
+++ b/src/mame/drivers/crbaloon.c
@@ -358,7 +358,7 @@ static MACHINE_RESET( crballoon )
*
*************************************/
-static MACHINE_DRIVER_START( crbaloon )
+static MACHINE_CONFIG_START( crbaloon, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CRBALOON_MASTER_XTAL / 3)
@@ -385,9 +385,9 @@ static MACHINE_DRIVER_START( crbaloon )
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
/* audio hardware */
- MDRV_IMPORT_FROM(crbaloon_audio)
+ MDRV_FRAGMENT_ADD(crbaloon_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/crgolf.c b/src/mame/drivers/crgolf.c
index dc2b4ece3f7..bbe53fa83f0 100644
--- a/src/mame/drivers/crgolf.c
+++ b/src/mame/drivers/crgolf.c
@@ -382,10 +382,7 @@ static const msm5205_interface msm5205_intf =
*
*************************************/
-static MACHINE_DRIVER_START( crgolf )
-
- /* driver data */
- MDRV_DRIVER_DATA(crgolf_state)
+static MACHINE_CONFIG_START( crgolf, crgolf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,MASTER_CLOCK/3/2)
@@ -401,22 +398,21 @@ static MACHINE_DRIVER_START( crgolf )
MDRV_QUANTUM_TIME(HZ(6000))
/* video hardware */
- MDRV_IMPORT_FROM(crgolf_video)
+ MDRV_FRAGMENT_ADD(crgolf_video)
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK/3/2/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( crgolfhi )
- MDRV_IMPORT_FROM(crgolf)
+static MACHINE_CONFIG_DERIVED( crgolfhi, crgolf )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_intf)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/crimfght.c b/src/mame/drivers/crimfght.c
index 80c609abebb..7c5e9c03ba1 100644
--- a/src/mame/drivers/crimfght.c
+++ b/src/mame/drivers/crimfght.c
@@ -275,10 +275,7 @@ static MACHINE_RESET( crimfght )
konami_configure_set_lines(machine->device("maincpu"), crimfght_banking);
}
-static MACHINE_DRIVER_START( crimfght )
-
- /* driver data */
- MDRV_DRIVER_DATA(crimfght_state)
+static MACHINE_CONFIG_START( crimfght, crimfght_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI, 3000000) /* ? */
@@ -323,7 +320,7 @@ static MACHINE_DRIVER_START( crimfght )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.20)
MDRV_SOUND_ROUTE(1, "lspeaker", 0.20)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/crospang.c b/src/mame/drivers/crospang.c
index e7dbc68b592..2899f1f0cd2 100644
--- a/src/mame/drivers/crospang.c
+++ b/src/mame/drivers/crospang.c
@@ -346,10 +346,7 @@ static MACHINE_RESET( crospang )
}
-static MACHINE_DRIVER_START( crospang )
-
- /* driver data */
- MDRV_DRIVER_DATA(crospang_state)
+static MACHINE_CONFIG_START( crospang, crospang_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14318180/2)
@@ -386,12 +383,9 @@ static MACHINE_DRIVER_START( crospang )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( bestri )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(crospang_state)
+static MACHINE_CONFIG_START( bestri, crospang_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14318180/2)
@@ -428,7 +422,7 @@ static MACHINE_DRIVER_START( bestri )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( crospang )
diff --git a/src/mame/drivers/crshrace.c b/src/mame/drivers/crshrace.c
index 1a79e1f8e21..ad2d353b1b8 100644
--- a/src/mame/drivers/crshrace.c
+++ b/src/mame/drivers/crshrace.c
@@ -467,10 +467,7 @@ static MACHINE_RESET( crshrace )
state->pending_command = 0;
}
-static MACHINE_DRIVER_START( crshrace )
-
- /* driver data */
- MDRV_DRIVER_DATA(crshrace_state)
+static MACHINE_CONFIG_START( crshrace, crshrace_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,16000000) /* 16 MHz ??? */
@@ -511,7 +508,7 @@ static MACHINE_DRIVER_START( crshrace )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( crshrace )
diff --git a/src/mame/drivers/crystal.c b/src/mame/drivers/crystal.c
index c48a6c4e4be..1ccbae21444 100644
--- a/src/mame/drivers/crystal.c
+++ b/src/mame/drivers/crystal.c
@@ -816,9 +816,7 @@ static const vr0video_interface vr0video_config =
"maincpu"
};
-static MACHINE_DRIVER_START( crystal )
-
- MDRV_DRIVER_DATA(crystal_state)
+static MACHINE_CONFIG_START( crystal, crystal_state )
MDRV_CPU_ADD("maincpu", SE3208, 43000000)
MDRV_CPU_PROGRAM_MAP(crystal_mem)
@@ -852,19 +850,18 @@ static MACHINE_DRIVER_START( crystal )
MDRV_SOUND_CONFIG(vr0_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
Top blade screen is 32 pixels wider
*/
-static MACHINE_DRIVER_START( topbladv )
- MDRV_IMPORT_FROM(crystal)
+static MACHINE_CONFIG_DERIVED( topbladv, crystal )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_SIZE(320+32, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 319+32, 0, 239)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( crysbios )
ROM_REGION( 0x20000, "maincpu", 0 ) // bios
diff --git a/src/mame/drivers/cshooter.c b/src/mame/drivers/cshooter.c
index 12ed897b437..5d77019f1e0 100644
--- a/src/mame/drivers/cshooter.c
+++ b/src/mame/drivers/cshooter.c
@@ -416,7 +416,7 @@ static GFXDECODE_START( cshooter )
GFXDECODE_ENTRY( "gfx1", 128/8, cshooter_charlayout, 0, 64 )
GFXDECODE_END
-static MACHINE_DRIVER_START( cshooter )
+static MACHINE_CONFIG_START( cshooter, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80,XTAL_12MHz/2) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(cshooter_map)
MDRV_CPU_VBLANK_INT_HACK(cshooter_interrupt,2)
@@ -443,9 +443,9 @@ static MACHINE_DRIVER_START( cshooter )
/* sound hardware */
/* YM2151 and ym3931 seibu custom cpu running at XTAL_14_31818MHz/4 */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( airraid )
+static MACHINE_CONFIG_START( airraid, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80,XTAL_12MHz/2) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(airraid_map)
MDRV_CPU_VBLANK_INT_HACK(cshooter_interrupt,2)
@@ -471,7 +471,7 @@ static MACHINE_DRIVER_START( airraid )
/* sound hardware */
/* YM2151 and ym3931 seibu custom cpu running at XTAL_14_31818MHz/4 */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cubeqst.c b/src/mame/drivers/cubeqst.c
index b5e316187dc..a07ef4f5913 100644
--- a/src/mame/drivers/cubeqst.c
+++ b/src/mame/drivers/cubeqst.c
@@ -493,7 +493,7 @@ static const cubeqst_lin_config lin_config =
*
*************************************/
-static MACHINE_DRIVER_START( cubeqst )
+static MACHINE_CONFIG_START( cubeqst, driver_data_t )
MDRV_CPU_ADD("main_cpu", M68000, XTAL_16MHz / 2)
MDRV_CPU_PROGRAM_MAP(m68k_program_map)
MDRV_CPU_VBLANK_INT("screen", vblank)
@@ -565,7 +565,7 @@ static MACHINE_DRIVER_START( cubeqst )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.125)
MDRV_SOUND_ADD("ldac7", DAC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.125)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/cubocd32.c b/src/mame/drivers/cubocd32.c
index 4967610fc87..ff797b2ca20 100644
--- a/src/mame/drivers/cubocd32.c
+++ b/src/mame/drivers/cubocd32.c
@@ -1051,7 +1051,7 @@ static const i2cmem_interface i2cmem_interface =
I2CMEM_SLAVE_ADDRESS, NVRAM_PAGE_SIZE, NVRAM_SIZE
};
-static MACHINE_DRIVER_START( cd32 )
+static MACHINE_CONFIG_START( cd32, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, AMIGA_68EC020_PAL_CLOCK) /* 14.3 Mhz */
@@ -1090,7 +1090,7 @@ static MACHINE_DRIVER_START( cd32 )
/* cia */
MDRV_MOS8520_ADD("cia_0", AMIGA_68EC020_PAL_CLOCK / 10, cia_0_intf)
MDRV_MOS8520_ADD("cia_1", AMIGA_68EC020_PAL_CLOCK / 10, cia_1_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#define ROM_LOAD16_WORD_BIOS(bios,name,offset,length,hash) ROMX_LOAD(name, offset, length, hash, ROM_BIOS(bios+1))
diff --git a/src/mame/drivers/cultures.c b/src/mame/drivers/cultures.c
index f1b6c4fbbcf..f9feb252d9f 100644
--- a/src/mame/drivers/cultures.c
+++ b/src/mame/drivers/cultures.c
@@ -386,10 +386,7 @@ static MACHINE_RESET( cultures )
state->bg2_bank = 0;
}
-static MACHINE_DRIVER_START( cultures )
-
- /* driver data */
- MDRV_DRIVER_DATA(cultures_state)
+static MACHINE_CONFIG_START( cultures, cultures_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MCLK/2) /* 8.000 MHz */
@@ -419,7 +416,7 @@ static MACHINE_DRIVER_START( cultures )
MDRV_OKIM6295_ADD("oki", (MCLK/1024)*132, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/cvs.c b/src/mame/drivers/cvs.c
index c736dcacfaf..563de01da3a 100644
--- a/src/mame/drivers/cvs.c
+++ b/src/mame/drivers/cvs.c
@@ -1061,10 +1061,7 @@ MACHINE_RESET( cvs )
}
-static MACHINE_DRIVER_START( cvs )
-
- /* driver data */
- MDRV_DRIVER_DATA(cvs_state)
+static MACHINE_CONFIG_START( cvs, cvs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, 894886.25)
@@ -1121,7 +1118,7 @@ static MACHINE_DRIVER_START( cvs )
MDRV_SOUND_ADD("tms", TMS5100, 640000)
MDRV_SOUND_CONFIG(tms5100_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cyberbal.c b/src/mame/drivers/cyberbal.c
index 4e243452d3a..c17cb468b71 100644
--- a/src/mame/drivers/cyberbal.c
+++ b/src/mame/drivers/cyberbal.c
@@ -429,8 +429,7 @@ static const ym2151_interface ym2151_config =
*
*************************************/
-static MACHINE_DRIVER_START( cyberbal )
- MDRV_DRIVER_DATA(cyberbal_state)
+static MACHINE_CONFIG_START( cyberbal, cyberbal_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -487,11 +486,10 @@ static MACHINE_DRIVER_START( cyberbal )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cyberbal2p )
- MDRV_DRIVER_DATA(cyberbal_state)
+static MACHINE_CONFIG_START( cyberbal2p, cyberbal_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -517,8 +515,8 @@ static MACHINE_DRIVER_START( cyberbal2p )
MDRV_VIDEO_UPDATE(cyberbal)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_ii_mono)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_ii_mono)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cybertnk.c b/src/mame/drivers/cybertnk.c
index 628914cd50e..59f10048c5e 100644
--- a/src/mame/drivers/cybertnk.c
+++ b/src/mame/drivers/cybertnk.c
@@ -810,7 +810,7 @@ static const y8950_interface y8950_config = {
0 /* TODO */
};
-static MACHINE_DRIVER_START( cybertnk )
+static MACHINE_CONFIG_START( cybertnk, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000,20000000/2)
MDRV_CPU_PROGRAM_MAP(master_mem)
// MDRV_CPU_VBLANK_INT_HACK(master_irq,2)
@@ -852,7 +852,7 @@ static MACHINE_DRIVER_START( cybertnk )
MDRV_SOUND_CONFIG(y8950_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/cyclemb.c b/src/mame/drivers/cyclemb.c
index f52eb6d5bd1..335e6d803aa 100644
--- a/src/mame/drivers/cyclemb.c
+++ b/src/mame/drivers/cyclemb.c
@@ -512,7 +512,7 @@ static GFXDECODE_START( cyclemb )
GFXDECODE_ENTRY( "sprite_data_2", 0, spritelayout_32x32, 0x00, 0x40 )
GFXDECODE_END
-static MACHINE_DRIVER_START( cyclemb )
+static MACHINE_CONFIG_START( cyclemb, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,18000000/4)
MDRV_CPU_PROGRAM_MAP(cyclemb_map)
@@ -543,7 +543,7 @@ static MACHINE_DRIVER_START( cyclemb )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, 18000000/16)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/d9final.c b/src/mame/drivers/d9final.c
index 2d78db4c314..f1ba8b69f10 100644
--- a/src/mame/drivers/d9final.c
+++ b/src/mame/drivers/d9final.c
@@ -255,7 +255,7 @@ static MACHINE_RESET( d9final )
memory_set_bankptr(machine, "bank1", &ROM[0x10000]);
}
-static MACHINE_DRIVER_START( d9final )
+static MACHINE_CONFIG_START( d9final, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 24000000/4)/* ? MHz */
MDRV_CPU_PROGRAM_MAP(d9final_map)
@@ -283,7 +283,7 @@ static MACHINE_DRIVER_START( d9final )
MDRV_SOUND_ADD("ymsnd", YM2413, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( d9final )
diff --git a/src/mame/drivers/dacholer.c b/src/mame/drivers/dacholer.c
index 56ea8b5a50e..64683696bed 100644
--- a/src/mame/drivers/dacholer.c
+++ b/src/mame/drivers/dacholer.c
@@ -502,10 +502,7 @@ static PALETTE_INIT( dacholer )
}
}
-static MACHINE_DRIVER_START( dacholer )
-
- /* driver data */
- MDRV_DRIVER_DATA(dacholer_state)
+static MACHINE_CONFIG_START( dacholer, dacholer_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* ? */
@@ -552,7 +549,7 @@ static MACHINE_DRIVER_START( dacholer )
MDRV_SOUND_CONFIG(msm_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( dacholer )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/dambustr.c b/src/mame/drivers/dambustr.c
index c4b5b457a32..83a9836b724 100644
--- a/src/mame/drivers/dambustr.c
+++ b/src/mame/drivers/dambustr.c
@@ -231,7 +231,7 @@ static DRIVER_INIT(dambustr)
-static MACHINE_DRIVER_START( dambustr )
+static MACHINE_CONFIG_START( dambustr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
MDRV_CPU_PROGRAM_MAP(dambustr_map)
@@ -260,8 +260,8 @@ static MACHINE_DRIVER_START( dambustr )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(galaxian_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(galaxian_audio)
+MACHINE_CONFIG_END
ROM_START( dambustr )
diff --git a/src/mame/drivers/darius.c b/src/mame/drivers/darius.c
index 000ba1cc3a2..ba5c878a8c0 100644
--- a/src/mame/drivers/darius.c
+++ b/src/mame/drivers/darius.c
@@ -930,10 +930,7 @@ static MACHINE_RESET( darius )
}
-static MACHINE_DRIVER_START( darius )
-
- /* driver data */
- MDRV_DRIVER_DATA(darius_state)
+static MACHINE_CONFIG_START( darius, darius_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,16000000/2) /* 8 MHz ? */
@@ -1057,7 +1054,7 @@ static MACHINE_DRIVER_START( darius )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", darius_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/darkhors.c b/src/mame/drivers/darkhors.c
index 9e14368aa43..ee6ccf881e3 100644
--- a/src/mame/drivers/darkhors.c
+++ b/src/mame/drivers/darkhors.c
@@ -621,7 +621,7 @@ static INTERRUPT_GEN( darkhors )
}
}
-static MACHINE_DRIVER_START( darkhors )
+static MACHINE_CONFIG_START( darkhors, driver_data_t )
MDRV_CPU_ADD("maincpu", M68EC020, 12000000) // 36MHz/3 ??
MDRV_CPU_PROGRAM_MAP(darkhors_map)
MDRV_CPU_VBLANK_INT_HACK(darkhors,3)
@@ -647,7 +647,7 @@ static MACHINE_DRIVER_START( darkhors )
MDRV_OKIM6295_ADD("oki", 528000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -671,7 +671,7 @@ static VIDEO_UPDATE(jclub2)
return 0;
}
-static MACHINE_DRIVER_START( jclub2 )
+static MACHINE_CONFIG_START( jclub2, driver_data_t )
MDRV_CPU_ADD("maincpu", M68EC020, 12000000)
MDRV_CPU_PROGRAM_MAP(jclub2_map)
MDRV_CPU_VBLANK_INT_HACK(darkhors,3)
@@ -691,7 +691,7 @@ static MACHINE_DRIVER_START( jclub2 )
MDRV_VIDEO_START(jclub2)
MDRV_VIDEO_UPDATE(jclub2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static ADDRESS_MAP_START( st0016_mem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
@@ -727,7 +727,7 @@ static VIDEO_UPDATE(jclub2o)
return 0;
}
-static MACHINE_DRIVER_START( jclub2o )
+static MACHINE_CONFIG_START( jclub2o, driver_data_t )
MDRV_CPU_ADD("st0016",Z80,8000000)
MDRV_CPU_PROGRAM_MAP(st0016_mem)
MDRV_CPU_IO_MAP(st0016_io)
@@ -759,7 +759,7 @@ static MACHINE_DRIVER_START( jclub2o )
MDRV_SOUND_CONFIG(st0016_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/darkmist.c b/src/mame/drivers/darkmist.c
index 90f45193951..050cb6f18ef 100644
--- a/src/mame/drivers/darkmist.c
+++ b/src/mame/drivers/darkmist.c
@@ -246,7 +246,7 @@ static INTERRUPT_GEN( darkmist_interrupt )
-static MACHINE_DRIVER_START( darkmist )
+static MACHINE_CONFIG_START( darkmist, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,4000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(memmap)
@@ -278,7 +278,7 @@ static MACHINE_DRIVER_START( darkmist )
MDRV_SOUND_ROUTE(0, "mono", 1.0)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( darkmist )
ROM_REGION( 0x18000, "maincpu", 0 )
diff --git a/src/mame/drivers/darkseal.c b/src/mame/drivers/darkseal.c
index abdb069df2d..83e8ac31b9f 100644
--- a/src/mame/drivers/darkseal.c
+++ b/src/mame/drivers/darkseal.c
@@ -239,7 +239,7 @@ static const ym2151_interface ym2151_config =
sound_irq
};
-static MACHINE_DRIVER_START( darkseal )
+static MACHINE_CONFIG_START( darkseal, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000) /* Custom chip 59 */
@@ -281,7 +281,7 @@ static MACHINE_DRIVER_START( darkseal )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/dassault.c b/src/mame/drivers/dassault.c
index 0d1572ffc21..3e23c178b7e 100644
--- a/src/mame/drivers/dassault.c
+++ b/src/mame/drivers/dassault.c
@@ -551,10 +551,7 @@ static const deco16ic_interface dassault_deco16ic_intf =
dassault_bank_callback
};
-static MACHINE_DRIVER_START( dassault )
-
- /* driver data */
- MDRV_DRIVER_DATA(dassault_state)
+static MACHINE_CONFIG_START( dassault, dassault_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000) /* Accurate */
@@ -606,7 +603,7 @@ static MACHINE_DRIVER_START( dassault )
MDRV_OKIM6295_ADD("oki2", 2047848, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**********************************************************************************/
diff --git a/src/mame/drivers/dblewing.c b/src/mame/drivers/dblewing.c
index 29ad1f3c012..d6910937bfd 100644
--- a/src/mame/drivers/dblewing.c
+++ b/src/mame/drivers/dblewing.c
@@ -732,10 +732,7 @@ static MACHINE_RESET( dblewing )
state->sound_irq = 0;
}
-static MACHINE_DRIVER_START( dblewing )
-
- /* driver data */
- MDRV_DRIVER_DATA(dblewing_state)
+static MACHINE_CONFIG_START( dblewing, dblewing_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000) /* DE102 */
@@ -775,7 +772,7 @@ static MACHINE_DRIVER_START( dblewing )
MDRV_OKIM6295_ADD("oki", 32220000/32, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/dbz.c b/src/mame/drivers/dbz.c
index 3cba7c13360..f704c2e07f8 100644
--- a/src/mame/drivers/dbz.c
+++ b/src/mame/drivers/dbz.c
@@ -369,10 +369,7 @@ static MACHINE_RESET( dbz )
state->control = 0;
}
-static MACHINE_DRIVER_START( dbz )
-
- /* driver data */
- MDRV_DRIVER_DATA(dbz_state)
+static MACHINE_CONFIG_START( dbz, dbz_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -419,7 +416,7 @@ static MACHINE_DRIVER_START( dbz )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**********************************************************************************/
diff --git a/src/mame/drivers/dcheese.c b/src/mame/drivers/dcheese.c
index 3c48d4fe978..bece398c023 100644
--- a/src/mame/drivers/dcheese.c
+++ b/src/mame/drivers/dcheese.c
@@ -405,10 +405,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( dcheese )
-
- /* driver data */
- MDRV_DRIVER_DATA(dcheese_state)
+static MACHINE_CONFIG_START( dcheese, dcheese_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MAIN_OSC)
@@ -443,14 +440,13 @@ static MACHINE_DRIVER_START( dcheese )
MDRV_SOUND_ADD("bsmt", BSMT2000, SOUND_OSC)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.2)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fredmem )
- MDRV_IMPORT_FROM(dcheese)
+static MACHINE_CONFIG_DERIVED( fredmem, dcheese )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 359, 0, 239)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/dcon.c b/src/mame/drivers/dcon.c
index 09f7bd0fc98..507405a3a06 100644
--- a/src/mame/drivers/dcon.c
+++ b/src/mame/drivers/dcon.c
@@ -256,7 +256,7 @@ GFXDECODE_END
/******************************************************************************/
-static MACHINE_DRIVER_START( dcon )
+static MACHINE_CONFIG_START( dcon, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -283,9 +283,9 @@ static MACHINE_DRIVER_START( dcon )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM3812_INTERFACE(4000000,1320000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sdgndmps )
+static MACHINE_CONFIG_START( sdgndmps, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -312,7 +312,7 @@ static MACHINE_DRIVER_START( sdgndmps )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM2151_INTERFACE(14318180/4,1320000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/dday.c b/src/mame/drivers/dday.c
index 13ba38d0e8b..c27f9c4ea80 100644
--- a/src/mame/drivers/dday.c
+++ b/src/mame/drivers/dday.c
@@ -242,10 +242,7 @@ static MACHINE_RESET( dday )
}
-static MACHINE_DRIVER_START( dday )
-
- /* driver data */
- MDRV_DRIVER_DATA(dday_state)
+static MACHINE_CONFIG_START( dday, dday_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 2000000) /* 2 MHz ? */
@@ -278,7 +275,7 @@ static MACHINE_DRIVER_START( dday )
MDRV_SOUND_ADD("ay2", AY8910, 1000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ddayjlc.c b/src/mame/drivers/ddayjlc.c
index 439a7158866..9696f8dd1da 100644
--- a/src/mame/drivers/ddayjlc.c
+++ b/src/mame/drivers/ddayjlc.c
@@ -508,10 +508,7 @@ static PALETTE_INIT( ddayjlc )
}
}
-static MACHINE_DRIVER_START( ddayjlc )
-
- /* driver data */
- MDRV_DRIVER_DATA(ddayjlc_state)
+static MACHINE_CONFIG_START( ddayjlc, ddayjlc_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/3)
@@ -550,7 +547,7 @@ static MACHINE_DRIVER_START( ddayjlc )
MDRV_SOUND_ADD("ay2", AY8910, 12000000/6)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ddayjlc )
diff --git a/src/mame/drivers/ddealer.c b/src/mame/drivers/ddealer.c
index 1181b0cf893..b67e3aef626 100644
--- a/src/mame/drivers/ddealer.c
+++ b/src/mame/drivers/ddealer.c
@@ -615,8 +615,7 @@ static INTERRUPT_GEN( ddealer_interrupt )
cpu_set_input_line(device, 4, HOLD_LINE);
}
-static MACHINE_DRIVER_START( ddealer )
- MDRV_DRIVER_DATA(ddealer_state)
+static MACHINE_CONFIG_START( ddealer, ddealer_state )
MDRV_CPU_ADD("maincpu" , M68000, 10000000)
MDRV_CPU_PROGRAM_MAP(ddealer)
@@ -647,7 +646,7 @@ static MACHINE_DRIVER_START( ddealer )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("ymsnd", YM2203, 6000000 / 4)//guess
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ddenlovr.c b/src/mame/drivers/ddenlovr.c
index f3bbf51052e..c25e12eddba 100644
--- a/src/mame/drivers/ddenlovr.c
+++ b/src/mame/drivers/ddenlovr.c
@@ -7710,10 +7710,7 @@ static MACHINE_START( sryudens )
Don Den Lover Vol.1
***************************************************************************/
-static MACHINE_DRIVER_START( ddenlovr )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( ddenlovr, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000, XTAL_24MHz / 2)
@@ -7751,29 +7748,26 @@ static MACHINE_DRIVER_START( ddenlovr )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ddenlovj )
+static MACHINE_CONFIG_DERIVED( ddenlovj, ddenlovr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ddenlovr)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ddenlovj_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ddenlovrk )
- MDRV_IMPORT_FROM(ddenlovr)
+static MACHINE_CONFIG_DERIVED( ddenlovrk, ddenlovr )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ddenlovrk_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( akamaru )
+static MACHINE_CONFIG_DERIVED( akamaru, ddenlovr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ddenlovr)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(akamaru_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const ay8910_interface quiz365_ay8910_interface =
@@ -7786,25 +7780,23 @@ static const ay8910_interface quiz365_ay8910_interface =
DEVCB_HANDLER(ddenlovr_select_w)
};
-static MACHINE_DRIVER_START( quiz365 )
+static MACHINE_CONFIG_DERIVED( quiz365, ddenlovr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ddenlovr)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(quiz365_map)
MDRV_SOUND_MODIFY("aysnd")
MDRV_SOUND_CONFIG(quiz365_ay8910_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nettoqc )
+static MACHINE_CONFIG_DERIVED( nettoqc, ddenlovr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ddenlovr)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(nettoqc_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Rong Rong
@@ -7840,10 +7832,7 @@ static INTERRUPT_GEN( rtc_irq )
}
#endif
-static MACHINE_DRIVER_START( quizchq )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( quizchq, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ? */
@@ -7879,16 +7868,15 @@ static MACHINE_DRIVER_START( quizchq )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rongrong )
+static MACHINE_CONFIG_DERIVED( rongrong, quizchq )
/* basic machine hardware */
- MDRV_IMPORT_FROM(quizchq)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(rongrong_map)
MDRV_CPU_IO_MAP(rongrong_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -7918,10 +7906,7 @@ static INTERRUPT_GEN( mmpanic_irq )
cpu_set_input_line_and_vector(device, 0, HOLD_LINE, 0xcf); // RST 08, vblank
}
-static MACHINE_DRIVER_START( mmpanic )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( mmpanic, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000)
@@ -7965,7 +7950,7 @@ static MACHINE_DRIVER_START( mmpanic )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -7995,10 +7980,7 @@ static INTERRUPT_GEN( hanakanz_irq )
cpu_set_input_line_and_vector(device, 0, HOLD_LINE, 0xe0);
}
-static MACHINE_DRIVER_START( hanakanz )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( hanakanz, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,8000000) // TMPZ84C015BF-8
@@ -8034,21 +8016,21 @@ static MACHINE_DRIVER_START( hanakanz )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( hkagerou, hanakanz )
-static MACHINE_DRIVER_START( hkagerou )
/* basic machine hardware */
- MDRV_IMPORT_FROM( hanakanz )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(hkagerou_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( mjreach1, hanakanz )
-static MACHINE_DRIVER_START( mjreach1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( hanakanz )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(mjreach1_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -8077,21 +8059,19 @@ static INTERRUPT_GEN( mjchuuka_irq )
}
-static MACHINE_DRIVER_START( mjchuuka )
+static MACHINE_CONFIG_DERIVED( mjchuuka, hanakanz )
+
/* basic machine hardware */
- MDRV_IMPORT_FROM( hanakanz )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(mjchuuka_portmap)
MDRV_CPU_VBLANK_INT("screen", mjchuuka_irq)
MDRV_SOUND_ADD("aysnd", AY8910, 1789772)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( funkyfig )
- MDRV_IMPORT_FROM(mmpanic)
+static MACHINE_CONFIG_DERIVED( funkyfig, mmpanic )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(funkyfig_map)
MDRV_CPU_IO_MAP(funkyfig_portmap)
@@ -8103,7 +8083,7 @@ static MACHINE_DRIVER_START( funkyfig )
MDRV_CPU_IO_MAP(funkyfig_sound_portmap)
MDRV_VIDEO_START(ddenlovr) // no extra layers?
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -8152,9 +8132,9 @@ static const ay8910_interface mjmyster_ay8910_interface =
DEVCB_HANDLER(ddenlovr_select_w)
};
-static MACHINE_DRIVER_START( mjmyster )
+static MACHINE_CONFIG_DERIVED( mjmyster, quizchq )
+
/* basic machine hardware */
- MDRV_IMPORT_FROM( quizchq )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjmyster_map)
MDRV_CPU_IO_MAP(mjmyster_portmap)
@@ -8166,7 +8146,7 @@ static MACHINE_DRIVER_START( mjmyster )
MDRV_SOUND_ADD("aysnd", AY8910, 3579545)
MDRV_SOUND_CONFIG(mjmyster_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Hanafuda Hana Ginga
@@ -8203,9 +8183,9 @@ static const ay8910_interface hginga_ay8910_interface =
DEVCB_NULL, DEVCB_HANDLER(ddenlovr_select_w) // W
};
-static MACHINE_DRIVER_START( hginga )
+static MACHINE_CONFIG_DERIVED( hginga, quizchq )
+
/* basic machine hardware */
- MDRV_IMPORT_FROM( quizchq )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hginga_map)
MDRV_CPU_IO_MAP(hginga_portmap)
@@ -8216,11 +8196,11 @@ static MACHINE_DRIVER_START( hginga )
MDRV_SOUND_ADD("aysnd", AY8910, 3579545)
MDRV_SOUND_CONFIG(hginga_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( hgokou, quizchq )
-static MACHINE_DRIVER_START( hgokou )
/* basic machine hardware */
- MDRV_IMPORT_FROM( quizchq )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hgokou_map)
MDRV_CPU_IO_MAP(hgokou_portmap)
@@ -8231,19 +8211,19 @@ static MACHINE_DRIVER_START( hgokou )
MDRV_SOUND_ADD("aysnd", AY8910, 3579545)
MDRV_SOUND_CONFIG(hginga_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( mjmywrld, mjmyster )
-static MACHINE_DRIVER_START( mjmywrld )
/* basic machine hardware */
- MDRV_IMPORT_FROM( mjmyster )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hginga_map)
MDRV_CPU_IO_MAP(mjmywrld_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( mjmyuniv, quizchq )
-static MACHINE_DRIVER_START( mjmyuniv )
/* basic machine hardware */
- MDRV_IMPORT_FROM( quizchq )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjmyster_map)
MDRV_CPU_IO_MAP(mjmyster_portmap)
@@ -8255,11 +8235,11 @@ static MACHINE_DRIVER_START( mjmyuniv )
MDRV_SOUND_ADD("aysnd", AY8910, 1789772)
MDRV_SOUND_CONFIG(mjmyster_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( mjmyornt, quizchq )
-static MACHINE_DRIVER_START( mjmyornt )
/* basic machine hardware */
- MDRV_IMPORT_FROM( quizchq )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(mjmyster_portmap)
MDRV_CPU_VBLANK_INT_HACK(mjmyster_irq, 2)
@@ -8270,7 +8250,7 @@ static MACHINE_DRIVER_START( mjmyornt )
MDRV_SOUND_ADD("aysnd", AY8910, 1789772)
MDRV_SOUND_CONFIG(mjmyster_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INTERRUPT_GEN( mjflove_irq )
{
@@ -8291,9 +8271,9 @@ static INTERRUPT_GEN( mjflove_irq )
}
}
-static MACHINE_DRIVER_START( mjflove )
+static MACHINE_CONFIG_DERIVED( mjflove, quizchq )
+
/* basic machine hardware */
- MDRV_IMPORT_FROM( quizchq )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(rongrong_map)
MDRV_CPU_IO_MAP(mjflove_portmap)
@@ -8305,7 +8285,7 @@ static MACHINE_DRIVER_START( mjflove )
MDRV_SOUND_ADD("aysnd", AY8910, 28636363/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* It runs in IM 2, thus needs a vector on the data bus:
0xee is vblank */
@@ -8314,21 +8294,18 @@ static INTERRUPT_GEN( hparadis_irq )
cpu_set_input_line_and_vector(device, 0, HOLD_LINE, 0xee);
}
-static MACHINE_DRIVER_START( hparadis )
+static MACHINE_CONFIG_DERIVED( hparadis, quizchq )
+
/* basic machine hardware */
- MDRV_IMPORT_FROM( quizchq )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hparadis_map)
MDRV_CPU_IO_MAP(hparadis_portmap)
MDRV_CPU_VBLANK_INT("screen", hparadis_irq)
MDRV_MACHINE_START(hparadis)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( jongtei )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( jongtei, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80, XTAL_20MHz / 2) // ?
@@ -8364,16 +8341,13 @@ static MACHINE_DRIVER_START( jongtei )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Mahjong Seiryu Densetsu
***************************************************************************/
-static MACHINE_DRIVER_START( sryudens )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( sryudens, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80, XTAL_16MHz / 2) // ?
@@ -8412,16 +8386,13 @@ static MACHINE_DRIVER_START( sryudens )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Mahjong Daimyojin
***************************************************************************/
-static MACHINE_DRIVER_START( daimyojn )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( daimyojn, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80, XTAL_20MHz / 2)
@@ -8457,7 +8428,7 @@ static MACHINE_DRIVER_START( daimyojn )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ddragon.c b/src/mame/drivers/ddragon.c
index ea0fee1931a..78184a59152 100644
--- a/src/mame/drivers/ddragon.c
+++ b/src/mame/drivers/ddragon.c
@@ -974,10 +974,7 @@ static const msm5205_interface msm5205_config =
*
*************************************/
-static MACHINE_DRIVER_START( ddragon )
-
- /* driver data */
- MDRV_DRIVER_DATA(ddragon_state)
+static MACHINE_CONFIG_START( ddragon, ddragon_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, MAIN_CLOCK) /* 12 MHz / 4 internally */
@@ -1021,32 +1018,27 @@ static MACHINE_DRIVER_START( ddragon )
MDRV_SOUND_ADD("adpcm2", MSM5205, MAIN_CLOCK/32)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ddragonb )
- MDRV_IMPORT_FROM(ddragon)
+static MACHINE_CONFIG_DERIVED( ddragonb, ddragon )
/* basic machine hardware */
MDRV_CPU_REPLACE("sub", M6809, MAIN_CLOCK / 8) /* 1.5Mhz */
MDRV_CPU_PROGRAM_MAP(sub_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ddragonba )
- MDRV_IMPORT_FROM(ddragon)
+static MACHINE_CONFIG_DERIVED( ddragonba, ddragon )
/* basic machine hardware */
MDRV_CPU_REPLACE("sub", M6803, MAIN_CLOCK / 2) /* 6Mhz / 4 internally */
MDRV_CPU_PROGRAM_MAP(ddragonba_sub_map)
MDRV_CPU_IO_MAP(ddragonba_sub_portmap)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ddragon6809 )
- /* driver data */
- MDRV_DRIVER_DATA(ddragon_state)
+static MACHINE_CONFIG_START( ddragon6809, ddragon_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CLOCK / 8) /* 1.5 MHz */
@@ -1090,13 +1082,10 @@ static MACHINE_DRIVER_START( ddragon6809 )
MDRV_SOUND_ADD("adpcm2", MSM5205, MAIN_CLOCK/32)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ddragon2 )
- /* driver data */
- MDRV_DRIVER_DATA(ddragon_state)
+static MACHINE_CONFIG_START( ddragon2, ddragon_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, MAIN_CLOCK) /* 12 MHz / 4 internally */
@@ -1135,22 +1124,20 @@ static MACHINE_DRIVER_START( ddragon2 )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( darktowr )
- MDRV_IMPORT_FROM(ddragon)
+static MACHINE_CONFIG_DERIVED( darktowr, ddragon )
/* basic machine hardware */
MDRV_CPU_ADD("mcu", M68705,XTAL_4MHz)
MDRV_CPU_PROGRAM_MAP(mcu_map)
/* video hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( toffy )
- MDRV_IMPORT_FROM(ddragon)
+static MACHINE_CONFIG_DERIVED( toffy, ddragon )
/* basic machine hardware */
MDRV_DEVICE_REMOVE("sub")
@@ -1158,7 +1145,7 @@ static MACHINE_DRIVER_START( toffy )
/* sound hardware */
MDRV_DEVICE_REMOVE("adpcm1")
MDRV_DEVICE_REMOVE("adpcm2")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ddragon3.c b/src/mame/drivers/ddragon3.c
index 7afea6c6659..fd2a9e8b7a5 100644
--- a/src/mame/drivers/ddragon3.c
+++ b/src/mame/drivers/ddragon3.c
@@ -590,10 +590,7 @@ static MACHINE_RESET( ddragon3 )
state->io_reg[i] = 0;
}
-static MACHINE_DRIVER_START( ddragon3 )
-
- /* driver data */
- MDRV_DRIVER_DATA(ddragon3_state)
+static MACHINE_CONFIG_START( ddragon3, ddragon3_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
@@ -628,17 +625,15 @@ static MACHINE_DRIVER_START( ddragon3 )
MDRV_OKIM6295_ADD("oki", XTAL_1_056MHz, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ddragon3b )
- MDRV_IMPORT_FROM(ddragon3)
+static MACHINE_CONFIG_DERIVED( ddragon3b, ddragon3 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dd3b_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ctribe )
- MDRV_IMPORT_FROM(ddragon3)
+static MACHINE_CONFIG_DERIVED( ctribe, ddragon3 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ctribe_map)
@@ -655,7 +650,7 @@ static MACHINE_DRIVER_START( ctribe )
MDRV_SOUND_MODIFY("oki")
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/ddribble.c b/src/mame/drivers/ddribble.c
index cf12887be13..dc084ca71d4 100644
--- a/src/mame/drivers/ddribble.c
+++ b/src/mame/drivers/ddribble.c
@@ -282,10 +282,7 @@ static MACHINE_RESET( ddribble )
state->charbank[1] = 0;
}
-static MACHINE_DRIVER_START( ddribble )
-
- /* driver data */
- MDRV_DRIVER_DATA(ddribble_state)
+static MACHINE_CONFIG_START( ddribble, ddribble_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, XTAL_18_432MHz/12) /* verified on pcb */
@@ -341,7 +338,7 @@ static MACHINE_DRIVER_START( ddribble )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_SOUND_ADD("filter3", FILTER_RC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ddribble )
diff --git a/src/mame/drivers/ddz.c b/src/mame/drivers/ddz.c
index e0aa53485e1..a85d063ecae 100644
--- a/src/mame/drivers/ddz.c
+++ b/src/mame/drivers/ddz.c
@@ -51,7 +51,7 @@ static const vr0_interface vr0_config =
};
-static MACHINE_DRIVER_START( ddz )
+static MACHINE_CONFIG_START( ddz, driver_data_t )
MDRV_CPU_ADD("maincpu", SE3208, 43000000)
MDRV_CPU_PROGRAM_MAP(ddz_mem)
MDRV_CPU_VBLANK_INT("screen", ddz_interrupt)
@@ -79,7 +79,7 @@ static MACHINE_DRIVER_START( ddz )
MDRV_SOUND_CONFIG(vr0_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/deadang.c b/src/mame/drivers/deadang.c
index aba6c510e15..08d97f8035c 100644
--- a/src/mame/drivers/deadang.c
+++ b/src/mame/drivers/deadang.c
@@ -225,7 +225,7 @@ static INTERRUPT_GEN( deadang_interrupt )
/* Machine Drivers */
-static MACHINE_DRIVER_START( deadang )
+static MACHINE_CONFIG_START( deadang, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,XTAL_16MHz/2) /* Sony 8623h9 CXQ70116D-8 (V30 compatible) */
@@ -259,7 +259,7 @@ static MACHINE_DRIVER_START( deadang )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM2203_INTERFACE(XTAL_14_31818MHz/4)
SEIBU_SOUND_SYSTEM_ADPCM_INTERFACE
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/dec0.c b/src/mame/drivers/dec0.c
index 0d71cadfa65..23790e7c05c 100644
--- a/src/mame/drivers/dec0.c
+++ b/src/mame/drivers/dec0.c
@@ -1142,7 +1142,7 @@ static const msm5205_interface msm5205_config =
};
-static MACHINE_DRIVER_START( automat )
+static MACHINE_CONFIG_START( automat, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -1183,10 +1183,10 @@ static MACHINE_DRIVER_START( automat )
MDRV_SOUND_ADD("msm", MSM5205, 384000/2)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hbarrel )
+static MACHINE_CONFIG_START( hbarrel, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
@@ -1228,9 +1228,9 @@ static MACHINE_DRIVER_START( hbarrel )
MDRV_OKIM6295_ADD("oki", XTAL_20MHz / 2 / 10, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( baddudes )
+static MACHINE_CONFIG_START( baddudes, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
@@ -1269,9 +1269,9 @@ static MACHINE_DRIVER_START( baddudes )
MDRV_OKIM6295_ADD("oki", XTAL_20MHz / 2 / 10, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( birdtry )
+static MACHINE_CONFIG_START( birdtry, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
@@ -1310,9 +1310,9 @@ static MACHINE_DRIVER_START( birdtry )
MDRV_OKIM6295_ADD("oki", XTAL_20MHz / 2 / 10, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( robocop )
+static MACHINE_CONFIG_START( robocop, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
@@ -1356,9 +1356,9 @@ static MACHINE_DRIVER_START( robocop )
MDRV_OKIM6295_ADD("oki", XTAL_20MHz / 2 / 10, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( robocopb )
+static MACHINE_CONFIG_START( robocopb, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -1397,9 +1397,9 @@ static MACHINE_DRIVER_START( robocopb )
MDRV_OKIM6295_ADD("oki", 1023924, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hippodrm )
+static MACHINE_CONFIG_START( hippodrm, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
@@ -1443,9 +1443,9 @@ static MACHINE_DRIVER_START( hippodrm )
MDRV_OKIM6295_ADD("oki", XTAL_20MHz / 2 / 10, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( slyspy )
+static MACHINE_CONFIG_START( slyspy, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz/2) /* verified on pcb (20MHZ OSC) 68000P12 running at 10Mhz */
@@ -1484,9 +1484,9 @@ static MACHINE_DRIVER_START( slyspy )
MDRV_OKIM6295_ADD("oki", XTAL_12MHz/12, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( secretab )
+static MACHINE_CONFIG_START( secretab, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz/2) /* verified on pcb (20MHZ OSC) 68000P12 running at 10Mhz */
@@ -1526,9 +1526,9 @@ static MACHINE_DRIVER_START( secretab )
MDRV_OKIM6295_ADD("oki", XTAL_12MHz/12, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( midres )
+static MACHINE_CONFIG_START( midres, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz/2) /* verified on pcb (20MHZ OSC) 68000P12 running at 10Mhz */
@@ -1567,10 +1567,9 @@ static MACHINE_DRIVER_START( midres )
MDRV_OKIM6295_ADD("oki", XTAL_1MHz, OKIM6295_PIN7_HIGH) /* verified on pcb (1mhz crystal) */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( midresb )
- MDRV_IMPORT_FROM(midres)
+static MACHINE_CONFIG_DERIVED( midresb, midres )
MDRV_CPU_REPLACE("audiocpu", M6502, 1500000 )
MDRV_CPU_PROGRAM_MAP(dec0_s_map)
@@ -1578,7 +1577,7 @@ static MACHINE_DRIVER_START( midresb )
MDRV_SOUND_MODIFY("ym2")
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/dec8.c b/src/mame/drivers/dec8.c
index 16936eec9e5..4329792860d 100644
--- a/src/mame/drivers/dec8.c
+++ b/src/mame/drivers/dec8.c
@@ -1973,10 +1973,7 @@ static MACHINE_RESET( dec8 )
}
-static MACHINE_DRIVER_START( cobracom )
-
- /* driver data */
- MDRV_DRIVER_DATA(dec8_state)
+static MACHINE_CONFIG_START( cobracom, dec8_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2000000)
@@ -2018,12 +2015,9 @@ static MACHINE_DRIVER_START( cobracom )
MDRV_SOUND_ADD("ym2", YM3812, 3000000)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( ghostb )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(dec8_state)
+static MACHINE_CONFIG_START( ghostb, dec8_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, 3000000*4)
@@ -2070,13 +2064,10 @@ static MACHINE_DRIVER_START( ghostb )
MDRV_SOUND_ADD("ym2", YM3812, 3000000)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( srdarwin )
- /* driver data */
- MDRV_DRIVER_DATA(dec8_state)
+static MACHINE_CONFIG_START( srdarwin, dec8_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809,2000000) /* MC68A09EP */
@@ -2118,12 +2109,9 @@ static MACHINE_DRIVER_START( srdarwin )
MDRV_SOUND_ADD("ym2", YM3812, 3000000)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gondo )
-
- /* driver data */
- MDRV_DRIVER_DATA(dec8_state)
+static MACHINE_CONFIG_START( gondo, dec8_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309,3000000*4) /* HD63C09EP */
@@ -2169,12 +2157,9 @@ static MACHINE_DRIVER_START( gondo )
MDRV_SOUND_ADD("ym2", YM3526, 3000000)
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( oscar )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(dec8_state)
+static MACHINE_CONFIG_START( oscar, dec8_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, XTAL_12MHz/2) /* verified on pcb */
@@ -2220,12 +2205,9 @@ static MACHINE_DRIVER_START( oscar )
MDRV_SOUND_ADD("ym2", YM3526, XTAL_12MHz/4) /* verified on pcb */
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lastmisn )
-
- /* driver data */
- MDRV_DRIVER_DATA(dec8_state)
+static MACHINE_CONFIG_START( lastmisn, dec8_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2000000)
@@ -2270,12 +2252,9 @@ static MACHINE_DRIVER_START( lastmisn )
MDRV_SOUND_ADD("ym2", YM3526, 3000000)
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( shackled )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(dec8_state)
+static MACHINE_CONFIG_START( shackled, dec8_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2000000)
@@ -2320,12 +2299,9 @@ static MACHINE_DRIVER_START( shackled )
MDRV_SOUND_ADD("ym2", YM3526, 3000000)
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( csilver )
-
- /* driver data */
- MDRV_DRIVER_DATA(dec8_state)
+static MACHINE_CONFIG_START( csilver, dec8_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, XTAL_12MHz/8) /* verified on pcb */
@@ -2375,12 +2351,9 @@ static MACHINE_DRIVER_START( csilver )
MDRV_SOUND_ADD("msm", MSM5205, XTAL_384kHz) /* verified on pcb */
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.88)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( garyoret )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(dec8_state)
+static MACHINE_CONFIG_START( garyoret, dec8_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309,3000000*4) /* HD63C09EP */
@@ -2423,7 +2396,7 @@ static MACHINE_DRIVER_START( garyoret )
MDRV_SOUND_ADD("ym2", YM3526, 3000000)
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/deco156.c b/src/mame/drivers/deco156.c
index e37918e4aa8..d25ffb72e01 100644
--- a/src/mame/drivers/deco156.c
+++ b/src/mame/drivers/deco156.c
@@ -409,10 +409,7 @@ static MACHINE_START( deco156 )
state->deco16ic = machine->device<deco16ic_device>("deco_custom");
}
-static MACHINE_DRIVER_START( hvysmsh )
-
- /* driver data */
- MDRV_DRIVER_DATA(deco156_state)
+static MACHINE_CONFIG_START( hvysmsh, deco156_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000) /* Unconfirmed */
@@ -451,12 +448,9 @@ static MACHINE_DRIVER_START( hvysmsh )
MDRV_OKIM6295_ADD("oki2", 28000000/14, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.35)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.35)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( wcvol95 )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(deco156_state)
+static MACHINE_CONFIG_START( wcvol95, deco156_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000) /* Unconfirmed */
@@ -492,7 +486,7 @@ static MACHINE_DRIVER_START( wcvol95 )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**********************************************************************************/
diff --git a/src/mame/drivers/deco32.c b/src/mame/drivers/deco32.c
index 072499f3968..452da37ec58 100644
--- a/src/mame/drivers/deco32.c
+++ b/src/mame/drivers/deco32.c
@@ -1655,7 +1655,7 @@ static INTERRUPT_GEN( tattass_snd_interrupt )
cpu_set_input_line(device, M6809_FIRQ_LINE, HOLD_LINE);
}
-static MACHINE_DRIVER_START( captaven )
+static MACHINE_CONFIG_START( captaven, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, XTAL_28MHz/4) /* verified on pcb (Data East 101 custom)*/
@@ -1700,9 +1700,9 @@ static MACHINE_DRIVER_START( captaven )
MDRV_OKIM6295_ADD("oki2", XTAL_32_22MHz/16, OKIM6295_PIN7_HIGH) /* verified on pcb; pin 7 is floating to 2.5V (left unconnected), so I presume High */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.35)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fghthist )
+static MACHINE_CONFIG_START( fghthist, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000/4)
@@ -1744,9 +1744,9 @@ static MACHINE_DRIVER_START( fghthist )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.35)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fghthsta )
+static MACHINE_CONFIG_START( fghthsta, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000/4)
@@ -1788,9 +1788,9 @@ static MACHINE_DRIVER_START( fghthsta )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.35)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dragngun )
+static MACHINE_CONFIG_START( dragngun, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000/4)
@@ -1840,9 +1840,9 @@ static MACHINE_DRIVER_START( dragngun )
MDRV_OKIM6295_ADD("oki3", 32220000/32, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lockload )
+static MACHINE_CONFIG_START( lockload, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000/4)
@@ -1892,9 +1892,9 @@ static MACHINE_DRIVER_START( lockload )
MDRV_OKIM6295_ADD("oki3", 32220000/32, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tattass )
+static MACHINE_CONFIG_START( tattass, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000/4) /* Unconfirmed */
@@ -1928,9 +1928,9 @@ static MACHINE_DRIVER_START( tattass )
MDRV_SOUND_ADD("bsmt", BSMT2000, 24000000)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nslasher )
+static MACHINE_CONFIG_START( nslasher, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28322000/4)
@@ -1975,7 +1975,7 @@ static MACHINE_DRIVER_START( nslasher )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.10)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**********************************************************************************/
diff --git a/src/mame/drivers/deco_ld.c b/src/mame/drivers/deco_ld.c
index 365e4646d25..9f6cb18aa21 100644
--- a/src/mame/drivers/deco_ld.c
+++ b/src/mame/drivers/deco_ld.c
@@ -487,7 +487,7 @@ static MACHINE_START( rblaster )
laserdisc = machine->device("laserdisc");
}
-static MACHINE_DRIVER_START( rblaster )
+static MACHINE_CONFIG_START( rblaster, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M6502,8000000/2)
@@ -520,21 +520,19 @@ static MACHINE_DRIVER_START( rblaster )
MDRV_SOUND_ADD("ldsound", LASERDISC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( begas )
- MDRV_IMPORT_FROM( rblaster )
+static MACHINE_CONFIG_DERIVED( begas, rblaster )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(begas_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cobra )
- MDRV_IMPORT_FROM( rblaster )
+static MACHINE_CONFIG_DERIVED( cobra, rblaster )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(cobra_map)
MDRV_DEVICE_REMOVE("audiocpu")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/deco_mlc.c b/src/mame/drivers/deco_mlc.c
index c63ef04c3bd..d2dd2183010 100644
--- a/src/mame/drivers/deco_mlc.c
+++ b/src/mame/drivers/deco_mlc.c
@@ -382,7 +382,7 @@ static MACHINE_RESET( mlc )
raster_irq_timer = machine->device<timer_device>("int_timer");
}
-static MACHINE_DRIVER_START( avengrgs )
+static MACHINE_CONFIG_START( avengrgs, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", SH2,42000000/2) /* 21 MHz clock confirmed on real board */
@@ -413,9 +413,9 @@ static MACHINE_DRIVER_START( avengrgs )
MDRV_SOUND_ADD("ymz", YMZ280B, 42000000 / 3)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mlc )
+static MACHINE_CONFIG_START( mlc, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM,42000000/6) /* 42 MHz -> 7MHz clock confirmed on real board */
@@ -446,17 +446,15 @@ static MACHINE_DRIVER_START( mlc )
MDRV_SOUND_ADD("ymz", YMZ280B, 42000000 / 3)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mlc_6bpp )
- MDRV_IMPORT_FROM(mlc)
+static MACHINE_CONFIG_DERIVED( mlc_6bpp, mlc )
MDRV_GFXDECODE(6bpp)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mlc_5bpp )
- MDRV_IMPORT_FROM(mlc)
+static MACHINE_CONFIG_DERIVED( mlc_5bpp, mlc )
MDRV_GFXDECODE(5bpp)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/decocass.c b/src/mame/drivers/decocass.c
index 22074b0dc9e..74ce2d79240 100644
--- a/src/mame/drivers/decocass.c
+++ b/src/mame/drivers/decocass.c
@@ -626,10 +626,7 @@ static PALETTE_INIT( decocass )
}
-static MACHINE_DRIVER_START( decocass )
-
- /* driver data */
- MDRV_DRIVER_DATA(decocass_state)
+static MACHINE_CONFIG_START( decocass, decocass_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, HCLK4)
@@ -669,241 +666,212 @@ static MACHINE_DRIVER_START( decocass )
MDRV_SOUND_ADD("ay2", AY8910, HCLK2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ctsttape )
+static MACHINE_CONFIG_DERIVED( ctsttape, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(ctsttape)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( chwy )
+static MACHINE_CONFIG_DERIVED( chwy, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(chwy)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( clocknch )
+static MACHINE_CONFIG_DERIVED( clocknch, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(clocknch)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ctisland )
+static MACHINE_CONFIG_DERIVED( ctisland, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(ctisland)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( csuperas )
+static MACHINE_CONFIG_DERIVED( csuperas, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(csuperas)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( castfant )
+static MACHINE_CONFIG_DERIVED( castfant, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(castfant)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cluckypo )
+static MACHINE_CONFIG_DERIVED( cluckypo, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cluckypo)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cterrani )
+static MACHINE_CONFIG_DERIVED( cterrani, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cterrani)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cexplore )
+static MACHINE_CONFIG_DERIVED( cexplore, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cexplore)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cprogolf )
+static MACHINE_CONFIG_DERIVED( cprogolf, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cprogolf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cmissnx )
+static MACHINE_CONFIG_DERIVED( cmissnx, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cmissnx)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cdiscon1 )
+static MACHINE_CONFIG_DERIVED( cdiscon1, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cdiscon1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cptennis )
+static MACHINE_CONFIG_DERIVED( cptennis, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cptennis)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ctornado )
+static MACHINE_CONFIG_DERIVED( ctornado, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(ctornado)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cbnj )
+static MACHINE_CONFIG_DERIVED( cbnj, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cbnj)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cburnrub )
+static MACHINE_CONFIG_DERIVED( cburnrub, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cburnrub)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cbtime )
+static MACHINE_CONFIG_DERIVED( cbtime, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cbtime)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cgraplop )
+static MACHINE_CONFIG_DERIVED( cgraplop, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cgraplop)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cgraplop2 )
+static MACHINE_CONFIG_DERIVED( cgraplop2, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cgraplop2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( clapapa )
+static MACHINE_CONFIG_DERIVED( clapapa, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(clapapa)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cfghtice )
+static MACHINE_CONFIG_DERIVED( cfghtice, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cfghtice)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cprobowl )
+static MACHINE_CONFIG_DERIVED( cprobowl, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cprobowl)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cnightst )
+static MACHINE_CONFIG_DERIVED( cnightst, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cnightst)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cprosocc )
+static MACHINE_CONFIG_DERIVED( cprosocc, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cprosocc)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cppicf )
+static MACHINE_CONFIG_DERIVED( cppicf, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cppicf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cbdash )
+static MACHINE_CONFIG_DERIVED( cbdash, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cbdash)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cscrtry )
+static MACHINE_CONFIG_DERIVED( cscrtry, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cscrtry)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cflyball )
+static MACHINE_CONFIG_DERIVED( cflyball, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(cflyball)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( czeroize )
+static MACHINE_CONFIG_DERIVED( czeroize, decocass )
/* basic machine hardware */
- MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(czeroize)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(1*8, 32*8-1, 1*8, 31*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#define ROM_LOAD_BIOS(bios,name,offset,length,hash) \
diff --git a/src/mame/drivers/deniam.c b/src/mame/drivers/deniam.c
index 6282ad4c7eb..9a14304b429 100644
--- a/src/mame/drivers/deniam.c
+++ b/src/mame/drivers/deniam.c
@@ -267,10 +267,7 @@ static MACHINE_RESET( deniam )
machine->device<okim6295_device>("oki")->set_bank_base(0x00000);
}
-static MACHINE_DRIVER_START( deniam16b )
-
- /* driver data */
- MDRV_DRIVER_DATA(deniam_state)
+static MACHINE_CONFIG_START( deniam16b, deniam_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,XTAL_25MHz/2) /* 12.5Mhz verified */
@@ -308,12 +305,9 @@ static MACHINE_DRIVER_START( deniam16b )
MDRV_OKIM6295_ADD("oki", XTAL_25MHz/24, OKIM6295_PIN7_HIGH) /* 1.041620 measured, = 1.0416666Mhz verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( deniam16c )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(deniam_state)
+static MACHINE_CONFIG_START( deniam16c, deniam_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,XTAL_25MHz/2) /* 12.5Mhz verified */
@@ -347,7 +341,7 @@ static MACHINE_DRIVER_START( deniam16c )
MDRV_OKIM6295_ADD("oki", XTAL_25MHz/24, OKIM6295_PIN7_HIGH) /* 1.041620 measured, = 1.0416666Mhz verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/deshoros.c b/src/mame/drivers/deshoros.c
index cc023b06842..d8cf8c3a8f2 100644
--- a/src/mame/drivers/deshoros.c
+++ b/src/mame/drivers/deshoros.c
@@ -154,7 +154,7 @@ static MACHINE_RESET( deshoros )
bank = -1;
}
-static MACHINE_DRIVER_START( deshoros )
+static MACHINE_CONFIG_START( deshoros, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M6809,2000000)
@@ -178,7 +178,7 @@ static MACHINE_DRIVER_START( deshoros )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/destroyr.c b/src/mame/drivers/destroyr.c
index 1d6fd9b832d..b5c49faee0a 100644
--- a/src/mame/drivers/destroyr.c
+++ b/src/mame/drivers/destroyr.c
@@ -448,10 +448,7 @@ static MACHINE_START( destroyr )
state_save_register_global_array(machine, state->potsense);
}
-static MACHINE_DRIVER_START( destroyr )
-
- /* driver data */
- MDRV_DRIVER_DATA(destroyr_state)
+static MACHINE_CONFIG_START( destroyr, destroyr_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, XTAL_12_096MHz / 16)
@@ -474,7 +471,7 @@ static MACHINE_DRIVER_START( destroyr )
MDRV_VIDEO_UPDATE(destroyr)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( destroyr )
diff --git a/src/mame/drivers/dgpix.c b/src/mame/drivers/dgpix.c
index 00c12b3ee3f..52f6eb7c9f5 100644
--- a/src/mame/drivers/dgpix.c
+++ b/src/mame/drivers/dgpix.c
@@ -303,7 +303,7 @@ static MACHINE_RESET( dgpix )
}
-static MACHINE_DRIVER_START( dgpix )
+static MACHINE_CONFIG_START( dgpix, driver_data_t )
MDRV_CPU_ADD("maincpu", E132XT, 20000000*4) /* 4x internal multiplier */
MDRV_CPU_PROGRAM_MAP(cpu_map)
MDRV_CPU_IO_MAP(io_map)
@@ -332,7 +332,7 @@ static MACHINE_DRIVER_START( dgpix )
/* sound hardware */
// KS0164 sound chip
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/dietgo.c b/src/mame/drivers/dietgo.c
index 8367f19c0d2..38bd7e84b0b 100644
--- a/src/mame/drivers/dietgo.c
+++ b/src/mame/drivers/dietgo.c
@@ -199,10 +199,7 @@ static MACHINE_START( dietgo )
state->deco16ic = machine->device("deco_custom");
}
-static MACHINE_DRIVER_START( dietgo )
-
- /* driver data */
- MDRV_DRIVER_DATA(dietgo_state)
+static MACHINE_CONFIG_START( dietgo, dietgo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_28MHz/2) /* DE102 (verified on pcb) */
@@ -238,7 +235,7 @@ static MACHINE_DRIVER_START( dietgo )
MDRV_OKIM6295_ADD("oki", XTAL_32_22MHz/32, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Diet Go Go */
diff --git a/src/mame/drivers/discoboy.c b/src/mame/drivers/discoboy.c
index 2f1ce2e6800..c059a0db16c 100644
--- a/src/mame/drivers/discoboy.c
+++ b/src/mame/drivers/discoboy.c
@@ -464,10 +464,7 @@ static MACHINE_RESET( discoboy )
state->adpcm_data = 0x80;
}
-static MACHINE_DRIVER_START( discoboy )
-
- /* driver data */
- MDRV_DRIVER_DATA(discoboy_state)
+static MACHINE_CONFIG_START( discoboy, discoboy_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6 MHz? */
@@ -508,7 +505,7 @@ static MACHINE_DRIVER_START( discoboy )
MDRV_SOUND_ADD("msm", MSM5205, 384000) // ???? unknown
MDRV_SOUND_CONFIG(discoboy_msm5205_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( discoboy )
diff --git a/src/mame/drivers/diverboy.c b/src/mame/drivers/diverboy.c
index 2588fc19b5b..538003ba0e1 100644
--- a/src/mame/drivers/diverboy.c
+++ b/src/mame/drivers/diverboy.c
@@ -251,8 +251,7 @@ static MACHINE_START( diverboy )
state->audiocpu = machine->device("audiocpu");
}
-static MACHINE_DRIVER_START( diverboy )
- MDRV_DRIVER_DATA(diverboy_state)
+static MACHINE_CONFIG_START( diverboy, diverboy_state )
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* guess */
MDRV_CPU_PROGRAM_MAP(diverboy_map)
@@ -281,7 +280,7 @@ static MACHINE_DRIVER_START( diverboy )
MDRV_OKIM6295_ADD("oki", 1320000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/djboy.c b/src/mame/drivers/djboy.c
index 86ae9b6e8e5..91ad6974de1 100644
--- a/src/mame/drivers/djboy.c
+++ b/src/mame/drivers/djboy.c
@@ -582,8 +582,7 @@ static MACHINE_RESET( djboy )
state->z80_to_beast_full = 0;
}
-static MACHINE_DRIVER_START( djboy )
- MDRV_DRIVER_DATA(djboy_state)
+static MACHINE_CONFIG_START( djboy, djboy_state )
MDRV_CPU_ADD("maincpu", Z80, 6000000)
MDRV_CPU_PROGRAM_MAP(cpu0_am)
@@ -634,7 +633,7 @@ static MACHINE_DRIVER_START( djboy )
MDRV_OKIM6295_ADD("oki2", 12000000 / 8, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( djboy )
diff --git a/src/mame/drivers/djmain.c b/src/mame/drivers/djmain.c
index 66f7ac382a2..4c722a8704c 100644
--- a/src/mame/drivers/djmain.c
+++ b/src/mame/drivers/djmain.c
@@ -1485,7 +1485,7 @@ static const k056832_interface djmain_k056832_intf =
djmain_tile_callback, "none"
};
-static MACHINE_DRIVER_START( djmain )
+static MACHINE_CONFIG_START( djmain, driver_data_t )
/* basic machine hardware */
// popn3 works 9.6 MHz or slower in some songs */
@@ -1527,7 +1527,7 @@ static MACHINE_DRIVER_START( djmain )
MDRV_SOUND_CONFIG(k054539_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/dkong.c b/src/mame/drivers/dkong.c
index af03d9bc6d2..ed4249017e7 100644
--- a/src/mame/drivers/dkong.c
+++ b/src/mame/drivers/dkong.c
@@ -1658,10 +1658,7 @@ static void braze_decrypt_rom(running_machine *machine, UINT8 *dest)
*
*************************************/
-static MACHINE_DRIVER_START( dkong_base )
-
- /* driver data */
- MDRV_DRIVER_DATA(dkong_state)
+static MACHINE_CONFIG_START( dkong_base, dkong_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CLOCK_1H)
@@ -1685,57 +1682,47 @@ static MACHINE_DRIVER_START( dkong_base )
MDRV_VIDEO_START(dkong)
MDRV_VIDEO_UPDATE(dkong)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( radarscp )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(dkong_base)
+static MACHINE_CONFIG_DERIVED( radarscp, dkong_base )
MDRV_MACHINE_START(radarscp)
MDRV_PALETTE_LENGTH(RS_PALETTE_LENGTH)
MDRV_PALETTE_INIT(radarscp)
/* sound hardware */
- MDRV_IMPORT_FROM(radarscp_audio)
+ MDRV_FRAGMENT_ADD(radarscp_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( radarscp1 )
-
- MDRV_IMPORT_FROM(dkong_base)
+static MACHINE_CONFIG_DERIVED( radarscp1, dkong_base )
MDRV_MACHINE_START(radarscp1)
MDRV_PALETTE_LENGTH(RS_PALETTE_LENGTH)
MDRV_PALETTE_INIT(radarscp1)
/* sound hardware */
- MDRV_IMPORT_FROM(radarscp1_audio)
-
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(radarscp1_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dkong2b )
- MDRV_IMPORT_FROM(dkong_base)
+static MACHINE_CONFIG_DERIVED( dkong2b, dkong_base )
MDRV_MACHINE_START(dkong2b)
MDRV_PALETTE_LENGTH(DK2B_PALETTE_LENGTH)
/* sound hardware */
- MDRV_IMPORT_FROM(dkong2b_audio)
+ MDRV_FRAGMENT_ADD(dkong2b_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( braze )
- MDRV_IMPORT_FROM(dkong2b)
+static MACHINE_CONFIG_DERIVED( braze, dkong2b )
MDRV_EEPROM_ADD("eeprom", braze_eeprom_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dkong3 )
-
- /* driver data */
- MDRV_DRIVER_DATA(dkong_state)
+static MACHINE_CONFIG_START( dkong3, dkong_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_8MHz / 2) /* verified in schematics */
@@ -1760,38 +1747,33 @@ static MACHINE_DRIVER_START( dkong3 )
MDRV_VIDEO_UPDATE(dkong)
/* sound hardware */
- MDRV_IMPORT_FROM(dkong3_audio)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( dkongjr )
+ MDRV_FRAGMENT_ADD(dkong3_audio)
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(dkong_base)
+static MACHINE_CONFIG_DERIVED( dkongjr, dkong_base )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dkongjr_map)
/* sound hardware */
- MDRV_IMPORT_FROM(dkongjr_audio)
+ MDRV_FRAGMENT_ADD(dkongjr_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pestplce )
-
- MDRV_IMPORT_FROM(dkongjr)
+static MACHINE_CONFIG_DERIVED( pestplce, dkongjr )
MDRV_GFXDECODE(pestplce)
MDRV_PALETTE_LENGTH(DK2B_PALETTE_LENGTH)
MDRV_PALETTE_INIT(dkong2b) /* wrong! */
MDRV_VIDEO_UPDATE(pestplce)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dkong3b )
+static MACHINE_CONFIG_DERIVED( dkong3b, dkongjr )
- /* basic machine hardware */
- MDRV_IMPORT_FROM(dkongjr)
+ /* basic machine hardware */
MDRV_PALETTE_INIT(dkong3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
@@ -1799,9 +1781,7 @@ MACHINE_DRIVER_END
*
*************************************/
-static MACHINE_DRIVER_START( s2650 )
-
- MDRV_IMPORT_FROM(dkong2b)
+static MACHINE_CONFIG_DERIVED( s2650, dkong2b )
/* basic machine hardware */
MDRV_CPU_REPLACE("maincpu", S2650, CLOCK_1H / 2) /* ??? */
@@ -1814,18 +1794,17 @@ static MACHINE_DRIVER_START( s2650 )
MDRV_MACHINE_START(s2650)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spclforc )
+static MACHINE_CONFIG_DERIVED( spclforc, s2650 )
- /* basic machine hardware */
- MDRV_IMPORT_FROM(s2650)
+ /* basic machine hardware */
MDRV_DEVICE_REMOVE("soundcpu")
/* video hardware */
MDRV_VIDEO_UPDATE(spclforc)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
@@ -1833,35 +1812,35 @@ MACHINE_DRIVER_END
*
*************************************/
-static MACHINE_DRIVER_START( strtheat )
- /* basic machine hardware */
- MDRV_IMPORT_FROM(dkong2b)
+static MACHINE_CONFIG_DERIVED( strtheat, dkong2b )
+
+ /* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(epos_readport)
MDRV_MACHINE_RESET(strtheat)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( drakton )
- /* basic machine hardware */
- MDRV_IMPORT_FROM(dkong2b)
+static MACHINE_CONFIG_DERIVED( drakton, dkong2b )
+
+ /* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(epos_readport)
MDRV_MACHINE_RESET(drakton)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( drktnjr )
- /* basic machine hardware */
- MDRV_IMPORT_FROM(dkongjr)
+static MACHINE_CONFIG_DERIVED( drktnjr, dkongjr )
+
+ /* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(epos_readport)
MDRV_MACHINE_RESET(drakton)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/dlair.c b/src/mame/drivers/dlair.c
index 7df3a7e7f5a..82fb675a320 100644
--- a/src/mame/drivers/dlair.c
+++ b/src/mame/drivers/dlair.c
@@ -669,7 +669,7 @@ static const ay8910_interface ay8910_config =
*
*************************************/
-static MACHINE_DRIVER_START( dlair_base )
+static MACHINE_CONFIG_START( dlair_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK_US/4)
@@ -693,22 +693,20 @@ static MACHINE_DRIVER_START( dlair_base )
MDRV_SOUND_ADD("ldsound", LASERDISC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dlair_pr7820 )
- MDRV_IMPORT_FROM(dlair_base)
+static MACHINE_CONFIG_DERIVED( dlair_pr7820, dlair_base )
MDRV_LASERDISC_ADD("laserdisc", PIONEER_PR7820, "screen", "ldsound")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dlair_ldv1000 )
- MDRV_IMPORT_FROM(dlair_base)
+static MACHINE_CONFIG_DERIVED( dlair_ldv1000, dlair_base )
MDRV_LASERDISC_ADD("laserdisc", PIONEER_LDV1000, "screen", "ldsound")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dleuro )
+static MACHINE_CONFIG_START( dleuro, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK_EURO/4)
@@ -746,7 +744,7 @@ static MACHINE_DRIVER_START( dleuro )
MDRV_SOUND_ADD("ldsound", LASERDISC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/dmndrby.c b/src/mame/drivers/dmndrby.c
index 773a4015b8b..67d7c8ecb20 100644
--- a/src/mame/drivers/dmndrby.c
+++ b/src/mame/drivers/dmndrby.c
@@ -486,7 +486,7 @@ static INTERRUPT_GEN( dderby_timer_irq )
cputag_set_input_line_and_vector(device->machine, "maincpu", 0, HOLD_LINE, 0xcf); /* RST 08h */
}
-static MACHINE_DRIVER_START( dderby )
+static MACHINE_CONFIG_START( dderby, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,4000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(memmap)
@@ -518,7 +518,7 @@ static MACHINE_DRIVER_START( dderby )
MDRV_SOUND_ADD("ay1", AY8910, 1789750) // frequency guessed
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( dmndrby )
diff --git a/src/mame/drivers/docastle.c b/src/mame/drivers/docastle.c
index d31bf81f8e1..496bdaff3e6 100644
--- a/src/mame/drivers/docastle.c
+++ b/src/mame/drivers/docastle.c
@@ -592,10 +592,7 @@ static MACHINE_START( docastle )
state_save_register_global_array(machine, state->buffer1);
}
-static MACHINE_DRIVER_START( docastle )
-
- /* driver data */
- MDRV_DRIVER_DATA(docastle_state)
+static MACHINE_CONFIG_START( docastle, docastle_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_4MHz)
@@ -643,11 +640,11 @@ static MACHINE_DRIVER_START( docastle )
MDRV_SOUND_ADD("sn4", SN76489A, XTAL_4MHz)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( dorunrun, docastle )
-static MACHINE_DRIVER_START( dorunrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(docastle)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dorunrun_map)
@@ -657,11 +654,11 @@ static MACHINE_DRIVER_START( dorunrun )
/* video hardware */
MDRV_VIDEO_START(dorunrun)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( idsoccer, docastle )
-static MACHINE_DRIVER_START( idsoccer )
/* basic machine hardware */
- MDRV_IMPORT_FROM(docastle)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(idsoccer_map)
@@ -676,7 +673,7 @@ static MACHINE_DRIVER_START( idsoccer )
MDRV_SOUND_ADD("msm", MSM5205, XTAL_384kHz) /* Crystal verified on American Soccer board. */
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/dogfgt.c b/src/mame/drivers/dogfgt.c
index 6ef7d5dbe5d..7dca8f6f1a1 100644
--- a/src/mame/drivers/dogfgt.c
+++ b/src/mame/drivers/dogfgt.c
@@ -246,10 +246,7 @@ static MACHINE_RESET( dogfgt )
}
-static MACHINE_DRIVER_START( dogfgt )
-
- /* driver data */
- MDRV_DRIVER_DATA(dogfgt_state)
+static MACHINE_CONFIG_START( dogfgt, dogfgt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1500000) /* 1.5 MHz ???? */
@@ -287,7 +284,7 @@ static MACHINE_DRIVER_START( dogfgt )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/dominob.c b/src/mame/drivers/dominob.c
index 2b7c16906c4..812d5a09d3b 100644
--- a/src/mame/drivers/dominob.c
+++ b/src/mame/drivers/dominob.c
@@ -290,10 +290,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( dominob )
-
- /* driver data */
- MDRV_DRIVER_DATA(dominob_state)
+static MACHINE_CONFIG_START( dominob, dominob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,XTAL_12MHz/2)
@@ -320,7 +317,7 @@ static MACHINE_DRIVER_START( dominob )
MDRV_SOUND_ADD("aysnd", AY8910, XTAL_12MHz/4)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/dooyong.c b/src/mame/drivers/dooyong.c
index d16514da362..ed061e23f47 100644
--- a/src/mame/drivers/dooyong.c
+++ b/src/mame/drivers/dooyong.c
@@ -773,7 +773,7 @@ static const ym2151_interface ym2151_config =
***************************************************************************/
-static MACHINE_DRIVER_START( sound_2203 )
+static MACHINE_CONFIG_FRAGMENT( sound_2203 )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("ym1", YM2203, 4000000)
@@ -783,9 +783,9 @@ static MACHINE_DRIVER_START( sound_2203 )
MDRV_SOUND_ADD("ym2", YM2203, 4000000)
MDRV_SOUND_CONFIG(ym2203_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sound_2151 )
+static MACHINE_CONFIG_FRAGMENT( sound_2151 )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("ymsnd", YM2151, 3579545)
@@ -795,9 +795,9 @@ static MACHINE_DRIVER_START( sound_2151 )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sound_2151_m68k )
+static MACHINE_CONFIG_FRAGMENT( sound_2151_m68k )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("ymsnd", YM2151, 4000000)
@@ -807,9 +807,9 @@ static MACHINE_DRIVER_START( sound_2151_m68k )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lastday )
+static MACHINE_CONFIG_START( lastday, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ??? */
@@ -839,10 +839,10 @@ static MACHINE_DRIVER_START( lastday )
MDRV_VIDEO_UPDATE(lastday)
/* sound hardware */
- MDRV_IMPORT_FROM( sound_2203 )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( sound_2203 )
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gulfstrm )
+static MACHINE_CONFIG_START( gulfstrm, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ??? */
@@ -872,10 +872,10 @@ static MACHINE_DRIVER_START( gulfstrm )
MDRV_VIDEO_UPDATE(gulfstrm)
/* sound hardware */
- MDRV_IMPORT_FROM( sound_2203 )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( sound_2203 )
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pollux )
+static MACHINE_CONFIG_START( pollux, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ??? */
@@ -905,10 +905,10 @@ static MACHINE_DRIVER_START( pollux )
MDRV_VIDEO_UPDATE(pollux)
/* sound hardware */
- MDRV_IMPORT_FROM( sound_2203 )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( sound_2203 )
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bluehawk )
+static MACHINE_CONFIG_START( bluehawk, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ??? */
@@ -938,10 +938,10 @@ static MACHINE_DRIVER_START( bluehawk )
MDRV_VIDEO_UPDATE(bluehawk)
/* sound hardware */
- MDRV_IMPORT_FROM( sound_2151 )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( sound_2151 )
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( flytiger )
+static MACHINE_CONFIG_START( flytiger, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ??? */
@@ -971,10 +971,10 @@ static MACHINE_DRIVER_START( flytiger )
MDRV_VIDEO_UPDATE(flytiger)
/* sound hardware */
- MDRV_IMPORT_FROM( sound_2151 )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( sound_2151 )
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( primella )
+static MACHINE_CONFIG_START( primella, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ??? */
@@ -1002,8 +1002,8 @@ static MACHINE_DRIVER_START( primella )
MDRV_VIDEO_UPDATE(primella)
/* sound hardware */
- MDRV_IMPORT_FROM( sound_2151 )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( sound_2151 )
+MACHINE_CONFIG_END
static INTERRUPT_GEN( rshark_interrupt )
{
@@ -1013,7 +1013,7 @@ static INTERRUPT_GEN( rshark_interrupt )
cpu_set_input_line(device, 6, HOLD_LINE);
}
-static MACHINE_DRIVER_START( rshark )
+static MACHINE_CONFIG_START( rshark, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* measured on super-x */
@@ -1041,10 +1041,10 @@ static MACHINE_DRIVER_START( rshark )
MDRV_VIDEO_UPDATE(rshark)
/* sound hardware */
- MDRV_IMPORT_FROM( sound_2151_m68k )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( sound_2151_m68k )
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( superx ) // dif mem map
+static MACHINE_CONFIG_START( superx, driver_data_t ) // dif mem map
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* measured on super-x */
@@ -1072,10 +1072,10 @@ static MACHINE_DRIVER_START( superx ) // dif mem map
MDRV_VIDEO_UPDATE(rshark)
/* sound hardware */
- MDRV_IMPORT_FROM( sound_2151_m68k )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( sound_2151_m68k )
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( popbingo )
+static MACHINE_CONFIG_START( popbingo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -1103,8 +1103,8 @@ static MACHINE_DRIVER_START( popbingo )
MDRV_VIDEO_UPDATE(popbingo)
/* sound hardware */
- MDRV_IMPORT_FROM( sound_2151_m68k )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( sound_2151_m68k )
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/dorachan.c b/src/mame/drivers/dorachan.c
index 4acb628209d..0f1284752f5 100644
--- a/src/mame/drivers/dorachan.c
+++ b/src/mame/drivers/dorachan.c
@@ -240,10 +240,7 @@ static MACHINE_RESET( dorachan )
state->flip_screen = 0;
}
-static MACHINE_DRIVER_START( dorachan )
-
- /* driver data */
- MDRV_DRIVER_DATA(dorachan_state)
+static MACHINE_CONFIG_START( dorachan, dorachan_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 2000000)
@@ -263,7 +260,7 @@ static MACHINE_DRIVER_START( dorachan )
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 31*8-1)
MDRV_SCREEN_REFRESH_RATE(60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/dotrikun.c b/src/mame/drivers/dotrikun.c
index 539843a3e58..70ed3ad576a 100644
--- a/src/mame/drivers/dotrikun.c
+++ b/src/mame/drivers/dotrikun.c
@@ -146,10 +146,7 @@ static MACHINE_RESET( dotrikun )
}
-static MACHINE_DRIVER_START( dotrikun )
-
- /* driver data */
- MDRV_DRIVER_DATA(dotrikun_state)
+static MACHINE_CONFIG_START( dotrikun, dotrikun_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz */
@@ -171,7 +168,7 @@ static MACHINE_DRIVER_START( dotrikun )
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 192-1)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/dragrace.c b/src/mame/drivers/dragrace.c
index 232ceebe6dc..0f42b5b9d5b 100644
--- a/src/mame/drivers/dragrace.c
+++ b/src/mame/drivers/dragrace.c
@@ -333,10 +333,7 @@ static MACHINE_RESET( dragrace )
state->gear[1] = 0;
}
-static MACHINE_DRIVER_START( dragrace )
-
- /* driver data */
- MDRV_DRIVER_DATA(dragrace_state)
+static MACHINE_CONFIG_START( dragrace, dragrace_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, 12096000 / 12)
@@ -369,7 +366,7 @@ static MACHINE_DRIVER_START( dragrace )
MDRV_SOUND_CONFIG_DISCRETE(dragrace)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( dragrace )
diff --git a/src/mame/drivers/dreamwld.c b/src/mame/drivers/dreamwld.c
index d2c5f150807..8f33539ca4f 100644
--- a/src/mame/drivers/dreamwld.c
+++ b/src/mame/drivers/dreamwld.c
@@ -420,10 +420,7 @@ static MACHINE_RESET( dreamwld )
state->protindex = 0;
}
-static MACHINE_DRIVER_START( dreamwld )
-
- /* driver data */
- MDRV_DRIVER_DATA(dreamwld_state)
+static MACHINE_CONFIG_START( dreamwld, dreamwld_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, MASTER_CLOCK/2)
@@ -456,7 +453,7 @@ static MACHINE_DRIVER_START( dreamwld )
MDRV_OKIM6295_ADD("oki2", MASTER_CLOCK/32, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/drgnmst.c b/src/mame/drivers/drgnmst.c
index d895563a931..2365c5ae743 100644
--- a/src/mame/drivers/drgnmst.c
+++ b/src/mame/drivers/drgnmst.c
@@ -403,8 +403,7 @@ static MACHINE_RESET( drgnmst )
state->oki0_bank = 0;
}
-static MACHINE_DRIVER_START( drgnmst )
- MDRV_DRIVER_DATA(drgnmst_state)
+static MACHINE_CONFIG_START( drgnmst, drgnmst_state )
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* Confirmed */
MDRV_CPU_PROGRAM_MAP(drgnmst_main_map)
@@ -441,7 +440,7 @@ static MACHINE_DRIVER_START( drgnmst )
MDRV_OKIM6295_ADD("oki2", 32000000/32, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( drgnmst )
diff --git a/src/mame/drivers/dribling.c b/src/mame/drivers/dribling.c
index bf933353bf7..9a457c2848f 100644
--- a/src/mame/drivers/dribling.c
+++ b/src/mame/drivers/dribling.c
@@ -312,10 +312,7 @@ static MACHINE_RESET( dribling )
}
-static MACHINE_DRIVER_START( dribling )
-
- /* driver data */
- MDRV_DRIVER_DATA(dribling_state)
+static MACHINE_CONFIG_START( dribling, dribling_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000)
@@ -345,7 +342,7 @@ static MACHINE_DRIVER_START( dribling )
MDRV_VIDEO_UPDATE(dribling)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/drmicro.c b/src/mame/drivers/drmicro.c
index a19732cc1a7..a8d764efa09 100644
--- a/src/mame/drivers/drmicro.c
+++ b/src/mame/drivers/drmicro.c
@@ -247,10 +247,7 @@ static MACHINE_RESET( drmicro )
}
-static MACHINE_DRIVER_START( drmicro )
-
- /* driver data */
- MDRV_DRIVER_DATA(drmicro_state)
+static MACHINE_CONFIG_START( drmicro, drmicro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,MCLK/6) /* 3.072MHz? */
@@ -293,7 +290,7 @@ static MACHINE_DRIVER_START( drmicro )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/drtomy.c b/src/mame/drivers/drtomy.c
index 1c6057ee664..92110770c8f 100644
--- a/src/mame/drivers/drtomy.c
+++ b/src/mame/drivers/drtomy.c
@@ -292,10 +292,7 @@ static MACHINE_RESET( drtomy )
state->oki_bank = 0;
}
-static MACHINE_DRIVER_START( drtomy )
-
- /* driver data */
- MDRV_DRIVER_DATA(drtomy_state)
+static MACHINE_CONFIG_START( drtomy, drtomy_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* ? MHz */
@@ -324,7 +321,7 @@ static MACHINE_DRIVER_START( drtomy )
MDRV_OKIM6295_ADD("oki", 26000000/16, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.8)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( drtomy )
diff --git a/src/mame/drivers/drw80pkr.c b/src/mame/drivers/drw80pkr.c
index f2a894cef72..14a8aac6dfb 100644
--- a/src/mame/drivers/drw80pkr.c
+++ b/src/mame/drivers/drw80pkr.c
@@ -444,7 +444,7 @@ INPUT_PORTS_END
* Machine Driver *
*************************/
-static MACHINE_DRIVER_START( drw80pkr )
+static MACHINE_CONFIG_START( drw80pkr, driver_data_t )
// basic machine hardware
MDRV_CPU_ADD("maincpu", I8039, CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(drw80pkr_map)
@@ -473,7 +473,7 @@ static MACHINE_DRIVER_START( drw80pkr )
MDRV_SOUND_ADD("aysnd", AY8912, 20000000/12)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
* Rom Load *
diff --git a/src/mame/drivers/dunhuang.c b/src/mame/drivers/dunhuang.c
index 75ed5626be8..677550e3367 100644
--- a/src/mame/drivers/dunhuang.c
+++ b/src/mame/drivers/dunhuang.c
@@ -814,10 +814,7 @@ static MACHINE_RESET( dunhuang )
}
-static MACHINE_DRIVER_START( dunhuang )
-
- /* driver data */
- MDRV_DRIVER_DATA(dunhuang_state)
+static MACHINE_CONFIG_START( dunhuang, dunhuang_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2)
@@ -856,7 +853,7 @@ static MACHINE_DRIVER_START( dunhuang )
MDRV_OKIM6295_ADD("oki", 12000000/8, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/dwarfd.c b/src/mame/drivers/dwarfd.c
index 1ec6df77adc..c3906992654 100644
--- a/src/mame/drivers/dwarfd.c
+++ b/src/mame/drivers/dwarfd.c
@@ -959,10 +959,7 @@ static MACHINE_RESET( dwarfd )
state->i8275HorizontalRetrace = 0;
}
-static MACHINE_DRIVER_START( dwarfd )
-
- /* driver data */
- MDRV_DRIVER_DATA(dwarfd_state)
+static MACHINE_CONFIG_START( dwarfd, dwarfd_state )
/* basic machine hardware */
/* FIXME: The 8085A had a max clock of 6MHz, internally divided by 2! */
@@ -995,15 +992,14 @@ static MACHINE_DRIVER_START( dwarfd )
MDRV_SOUND_ADD("aysnd", AY8910, 1500000)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qc )
- MDRV_IMPORT_FROM( dwarfd )
+static MACHINE_CONFIG_DERIVED( qc, dwarfd )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(qc_map)
MDRV_CPU_IO_MAP(qc_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( dwarfd )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/dynadice.c b/src/mame/drivers/dynadice.c
index a79747a38ed..75896eea24a 100644
--- a/src/mame/drivers/dynadice.c
+++ b/src/mame/drivers/dynadice.c
@@ -235,10 +235,7 @@ static MACHINE_RESET( dynadice )
state->ay_data = 0;
}
-static MACHINE_DRIVER_START( dynadice )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynadice_state)
+static MACHINE_CONFIG_START( dynadice, dynadice_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080,18432000/8)
@@ -273,7 +270,7 @@ static MACHINE_DRIVER_START( dynadice )
MDRV_SOUND_ADD("aysnd", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( dynadice )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/dynax.c b/src/mame/drivers/dynax.c
index 21bb6e54689..398be4fd8ef 100644
--- a/src/mame/drivers/dynax.c
+++ b/src/mame/drivers/dynax.c
@@ -4332,10 +4332,7 @@ static const msm5205_interface hanamai_msm5205_interface =
-static MACHINE_DRIVER_START( hanamai )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( hanamai, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,22000000 / 4) /* 5.5MHz */
@@ -4378,7 +4375,7 @@ static MACHINE_DRIVER_START( hanamai )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(hanamai_msm5205_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -4393,10 +4390,7 @@ static const ay8910_interface hnoridur_ay8910_interface =
DEVCB_INPUT_PORT("DSW0") /* Port A Read: DSW */
};
-static MACHINE_DRIVER_START( hnoridur )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( hnoridur, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,22000000 / 4) /* 5.5MHz */
@@ -4435,17 +4429,14 @@ static MACHINE_DRIVER_START( hnoridur )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(hanamai_msm5205_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Hana Jingi
***************************************************************************/
-static MACHINE_DRIVER_START( hjingi )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( hjingi, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80, XTAL_22MHz / 4)
@@ -4484,7 +4475,7 @@ static MACHINE_DRIVER_START( hjingi )
MDRV_SOUND_ADD("msm", MSM5205, XTAL_384kHz )
MDRV_SOUND_CONFIG(hanamai_msm5205_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -4504,10 +4495,7 @@ static const ym2203_interface sprtmtch_ym2203_interface =
sprtmtch_sound_callback, /* IRQ handler */
};
-static MACHINE_DRIVER_START( sprtmtch )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( sprtmtch, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,22000000 / 4) /* 5.5MHz */
@@ -4543,17 +4531,14 @@ static MACHINE_DRIVER_START( sprtmtch )
MDRV_SOUND_ROUTE(1, "mono", 0.20)
MDRV_SOUND_ROUTE(2, "mono", 0.20)
MDRV_SOUND_ROUTE(3, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Mahjong Friday
***************************************************************************/
-static MACHINE_DRIVER_START( mjfriday )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( mjfriday, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,24000000/4) /* 6 MHz? */
@@ -4585,20 +4570,19 @@ static MACHINE_DRIVER_START( mjfriday )
MDRV_SOUND_ADD("ymsnd", YM2413, 24000000/6)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Mahjong Dial Q2
***************************************************************************/
-static MACHINE_DRIVER_START( mjdialq2 )
+static MACHINE_CONFIG_DERIVED( mjdialq2, mjfriday )
/* basic machine hardware */
- MDRV_IMPORT_FROM( mjfriday )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjdialq2_mem_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -4622,10 +4606,9 @@ static INTERRUPT_GEN( yarunara_clock_interrupt )
sprtmtch_update_irq(device->machine);
}
-static MACHINE_DRIVER_START( yarunara )
+static MACHINE_CONFIG_DERIVED( yarunara, hnoridur )
/* basic machine hardware */
- MDRV_IMPORT_FROM( hnoridur )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(yarunara_mem_map)
MDRV_CPU_IO_MAP(yarunara_io_map)
@@ -4639,35 +4622,31 @@ static MACHINE_DRIVER_START( yarunara )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Mahjong Campus Hunting
***************************************************************************/
-static MACHINE_DRIVER_START( mcnpshnt )
-
- MDRV_IMPORT_FROM( hnoridur )
+static MACHINE_CONFIG_DERIVED( mcnpshnt, hnoridur )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mcnpshnt_mem_map)
MDRV_CPU_IO_MAP(mcnpshnt_io_map)
MDRV_VIDEO_START(mcnpshnt) // different priorities
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
7jigen
***************************************************************************/
-static MACHINE_DRIVER_START( nanajign )
-
- MDRV_IMPORT_FROM( hnoridur )
+static MACHINE_CONFIG_DERIVED( nanajign, hnoridur )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(nanajign_mem_map)
MDRV_CPU_IO_MAP(nanajign_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -4707,10 +4686,7 @@ static MACHINE_START( jantouki )
MACHINE_START_CALL(dynax);
}
-static MACHINE_DRIVER_START( jantouki )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( jantouki, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,22000000 / 4) /* 5.5MHz */
@@ -4769,7 +4745,7 @@ static MACHINE_DRIVER_START( jantouki )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -4796,16 +4772,14 @@ static INTERRUPT_GEN( mjelctrn_vblank_interrupt )
cpu_set_input_line_and_vector(device, 0, HOLD_LINE, 0xf8);
}
-static MACHINE_DRIVER_START( mjelctrn )
-
- MDRV_IMPORT_FROM( hnoridur )
+static MACHINE_CONFIG_DERIVED( mjelctrn, hnoridur )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(nanajign_mem_map)
MDRV_CPU_IO_MAP(mjelctrn_io_map)
MDRV_CPU_VBLANK_INT("screen", mjelctrn_vblank_interrupt) /* IM 2 needs a vector on the data bus */
MDRV_VIDEO_START(mjelctrn)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -4838,14 +4812,12 @@ static INTERRUPT_GEN( neruton_vblank_interrupt )
}
}
-static MACHINE_DRIVER_START( neruton )
-
- MDRV_IMPORT_FROM( mjelctrn )
+static MACHINE_CONFIG_DERIVED( neruton, mjelctrn )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT_HACK(neruton_vblank_interrupt,1+10) /* IM 2 needs a vector on the data bus */
MDRV_VIDEO_START(neruton)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Mahjong X-Tal 7
@@ -4865,13 +4837,11 @@ static INTERRUPT_GEN( majxtal7_vblank_interrupt )
cpu_set_input_line_and_vector(device, 0, HOLD_LINE, 0x40);
}
-static MACHINE_DRIVER_START( majxtal7 )
-
- MDRV_IMPORT_FROM( neruton )
+static MACHINE_CONFIG_DERIVED( majxtal7, neruton )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", majxtal7_vblank_interrupt) /* IM 2 needs a vector on the data bus */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -4887,10 +4857,7 @@ static const ay8910_interface htengoku_ay8910_interface =
DEVCB_NULL, DEVCB_HANDLER(htengoku_dsw_w) // W
};
-static MACHINE_DRIVER_START( htengoku )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( htengoku, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,20000000 / 4)
@@ -4930,7 +4897,7 @@ static MACHINE_DRIVER_START( htengoku )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -4968,10 +4935,7 @@ static MACHINE_START( tenkai )
state_save_register_postload(machine, tenkai_bank_postload, NULL);
}
-static MACHINE_DRIVER_START( tenkai )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( tenkai, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",TMP91640, 21472700 / 2)
@@ -5009,13 +4973,12 @@ static MACHINE_DRIVER_START( tenkai )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( majrjhdx )
- MDRV_IMPORT_FROM( tenkai )
+static MACHINE_CONFIG_DERIVED( majrjhdx, tenkai )
MDRV_PALETTE_LENGTH(512)
MDRV_PALETTE_INIT(sprtmtch) // static palette
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Mahjong Gekisha
@@ -5042,10 +5005,7 @@ static MACHINE_RESET( gekisha )
gekisha_set_rombank(machine, 0);
}
-static MACHINE_DRIVER_START( gekisha )
-
- /* driver data */
- MDRV_DRIVER_DATA(dynax_state)
+static MACHINE_CONFIG_START( gekisha, dynax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",TMP90841, XTAL_10MHz ) // ?
@@ -5080,7 +5040,7 @@ static MACHINE_DRIVER_START( gekisha )
MDRV_SOUND_ADD("ymsnd", YM2413, XTAL_24MHz / 8) // ?
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/dynduke.c b/src/mame/drivers/dynduke.c
index cd36ac89620..113b09af09e 100644
--- a/src/mame/drivers/dynduke.c
+++ b/src/mame/drivers/dynduke.c
@@ -281,7 +281,7 @@ static INTERRUPT_GEN( dynduke_interrupt )
/* Machine Driver */
-static MACHINE_DRIVER_START( dynduke )
+static MACHINE_CONFIG_START( dynduke, driver_data_t )
// basic machine hardware
MDRV_CPU_ADD("maincpu", V30, 16000000/2) // NEC V30-8 CPU
MDRV_CPU_PROGRAM_MAP(master_map)
@@ -316,14 +316,13 @@ static MACHINE_DRIVER_START( dynduke )
// sound hardware
SEIBU_SOUND_SYSTEM_YM3812_INTERFACE(14318180/4,1320000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dbldyn )
- MDRV_IMPORT_FROM(dynduke)
+static MACHINE_CONFIG_DERIVED( dbldyn, dynduke )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(masterj_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/egghunt.c b/src/mame/drivers/egghunt.c
index a1176a17df8..a3829775e03 100644
--- a/src/mame/drivers/egghunt.c
+++ b/src/mame/drivers/egghunt.c
@@ -410,10 +410,7 @@ static MACHINE_RESET( egghunt )
state->vidram_bank = 0;
}
-static MACHINE_DRIVER_START( egghunt )
-
- /* driver data */
- MDRV_DRIVER_DATA(egghunt_state)
+static MACHINE_CONFIG_START( egghunt, egghunt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6 MHz ?*/
@@ -446,7 +443,7 @@ static MACHINE_DRIVER_START( egghunt )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( egghunt )
ROM_REGION( 0x20000, "maincpu", 0 )
diff --git a/src/mame/drivers/embargo.c b/src/mame/drivers/embargo.c
index f027b7334dc..8ffea03c675 100644
--- a/src/mame/drivers/embargo.c
+++ b/src/mame/drivers/embargo.c
@@ -254,10 +254,7 @@ static MACHINE_RESET( embargo )
*
*************************************/
-static MACHINE_DRIVER_START( embargo )
-
- /* driver data */
- MDRV_DRIVER_DATA(embargo_state)
+static MACHINE_CONFIG_START( embargo, embargo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, 625000)
@@ -276,7 +273,7 @@ static MACHINE_DRIVER_START( embargo )
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_SCREEN_REFRESH_RATE(60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/enigma2.c b/src/mame/drivers/enigma2.c
index 98048c88137..e8ab74d78a5 100644
--- a/src/mame/drivers/enigma2.c
+++ b/src/mame/drivers/enigma2.c
@@ -603,10 +603,7 @@ static INPUT_PORTS_START( enigma2a )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( enigma2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(enigma2_state)
+static MACHINE_CONFIG_START( enigma2, enigma2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -632,13 +629,10 @@ static MACHINE_DRIVER_START( enigma2 )
MDRV_SOUND_ADD("aysnd", AY8910, AY8910_CLOCK)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( enigma2a )
- /* driver data */
- MDRV_DRIVER_DATA(enigma2_state)
+static MACHINE_CONFIG_START( enigma2a, enigma2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, CPU_CLOCK)
@@ -665,7 +659,7 @@ static MACHINE_DRIVER_START( enigma2a )
MDRV_SOUND_ADD("aysnd", AY8910, AY8910_CLOCK)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/eolith.c b/src/mame/drivers/eolith.c
index ee7e8562be3..b0be411de11 100644
--- a/src/mame/drivers/eolith.c
+++ b/src/mame/drivers/eolith.c
@@ -337,7 +337,7 @@ INPUT_PORTS_END
-static MACHINE_DRIVER_START( eolith45 )
+static MACHINE_CONFIG_START( eolith45, driver_data_t )
MDRV_CPU_ADD("maincpu", E132N, 45000000) /* 45 MHz */
MDRV_CPU_PROGRAM_MAP(eolith_map)
MDRV_CPU_VBLANK_INT_HACK(eolith_speedup,262)
@@ -361,19 +361,17 @@ static MACHINE_DRIVER_START( eolith45 )
MDRV_VIDEO_UPDATE(eolith)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( eolith50 )
- MDRV_IMPORT_FROM(eolith45)
+static MACHINE_CONFIG_DERIVED( eolith50, eolith45 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(50000000) /* 50 MHz */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ironfort )
- MDRV_IMPORT_FROM(eolith45)
+static MACHINE_CONFIG_DERIVED( ironfort, eolith45 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(44900000) /* Normaly 45MHz??? but PCB actually had a 44.9MHz OSC, so it's value is used */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/eolith16.c b/src/mame/drivers/eolith16.c
index afe53c6c9a2..2740e6544e7 100644
--- a/src/mame/drivers/eolith16.c
+++ b/src/mame/drivers/eolith16.c
@@ -157,7 +157,7 @@ static PALETTE_INIT( eolith16 )
-static MACHINE_DRIVER_START( eolith16 )
+static MACHINE_CONFIG_START( eolith16, driver_data_t )
MDRV_CPU_ADD("maincpu", E116T, 60000000) /* no internal multiplier */
MDRV_CPU_PROGRAM_MAP(eolith16_map)
MDRV_CPU_VBLANK_INT_HACK(eolith_speedup,262)
@@ -183,7 +183,7 @@ static MACHINE_DRIVER_START( eolith16 )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/epos.c b/src/mame/drivers/epos.c
index e2a07547e3e..21cec0862fc 100644
--- a/src/mame/drivers/epos.c
+++ b/src/mame/drivers/epos.c
@@ -392,10 +392,7 @@ static MACHINE_START( dealer )
MACHINE_START_CALL(epos);
}
-static MACHINE_DRIVER_START( epos )
-
- /* driver data */
- MDRV_DRIVER_DATA(epos_state)
+static MACHINE_CONFIG_START( epos, epos_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 11000000/4) /* 2.75 MHz (see notes) */
@@ -420,13 +417,10 @@ static MACHINE_DRIVER_START( epos )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, 11000000/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dealer )
- /* driver data */
- MDRV_DRIVER_DATA(epos_state)
+static MACHINE_CONFIG_START( dealer, epos_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 11000000/4) /* 2.75 MHz (see notes) */
@@ -453,7 +447,7 @@ static MACHINE_DRIVER_START( dealer )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, 11000000/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/eprom.c b/src/mame/drivers/eprom.c
index 55d330146ca..c762b0ae535 100644
--- a/src/mame/drivers/eprom.c
+++ b/src/mame/drivers/eprom.c
@@ -406,8 +406,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( eprom )
- MDRV_DRIVER_DATA(eprom_state)
+static MACHINE_CONFIG_START( eprom, eprom_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -438,12 +437,11 @@ static MACHINE_DRIVER_START( eprom )
MDRV_VIDEO_UPDATE(eprom)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_i_mono_speech)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_i_mono_speech)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( klaxp )
- MDRV_DRIVER_DATA(eprom_state)
+static MACHINE_CONFIG_START( klaxp, eprom_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -471,12 +469,11 @@ static MACHINE_DRIVER_START( klaxp )
MDRV_VIDEO_UPDATE(eprom)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_ii_mono)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_ii_mono)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( guts )
- MDRV_DRIVER_DATA(eprom_state)
+static MACHINE_CONFIG_START( guts, eprom_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -504,8 +501,8 @@ static MACHINE_DRIVER_START( guts )
MDRV_VIDEO_UPDATE(guts)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_ii_mono)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_ii_mono)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/equites.c b/src/mame/drivers/equites.c
index ba484105d22..f7c07f88341 100644
--- a/src/mame/drivers/equites.c
+++ b/src/mame/drivers/equites.c
@@ -1139,7 +1139,7 @@ static const samples_interface alphamc07_samples_interface =
#define MSM5232_BASE_VOLUME 1.0
// the sound board is the same in all games
-static MACHINE_DRIVER_START( common_sound )
+static MACHINE_CONFIG_FRAGMENT( common_sound )
MDRV_CPU_ADD("audiocpu", I8085A, XTAL_6_144MHz) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(sound_map)
@@ -1177,7 +1177,7 @@ static MACHINE_DRIVER_START( common_sound )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(alphamc07_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
@@ -1241,17 +1241,14 @@ static MACHINE_RESET( equites )
}
-static MACHINE_DRIVER_START( equites )
-
- /* driver data */
- MDRV_DRIVER_DATA(equites_state)
+static MACHINE_CONFIG_START( equites, equites_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz/4) /* 68000P8 running at 3mhz! verified on pcb */
MDRV_CPU_PROGRAM_MAP(equites_map)
MDRV_CPU_VBLANK_INT_HACK(equites_interrupt, 2)
- MDRV_IMPORT_FROM(common_sound)
+ MDRV_FRAGMENT_ADD(common_sound)
MDRV_CPU_ADD("mcu", ALPHA8301, 4000000/8)
MDRV_CPU_PROGRAM_MAP(mcu_map)
@@ -1271,29 +1268,25 @@ static MACHINE_DRIVER_START( equites )
MDRV_MACHINE_START(equites)
MDRV_MACHINE_RESET(equites)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gekisou )
- MDRV_IMPORT_FROM(equites)
+static MACHINE_CONFIG_DERIVED( gekisou, equites )
// gekisou has battery-backed RAM to store settings
MDRV_NVRAM_HANDLER(generic_0fill)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( splndrbt )
- /* driver data */
- MDRV_DRIVER_DATA(equites_state)
+static MACHINE_CONFIG_START( splndrbt, equites_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz/4) /* 68000P8 running at 6mhz, verified on pcb */
MDRV_CPU_PROGRAM_MAP(splndrbt_map)
MDRV_CPU_VBLANK_INT_HACK(equites_interrupt, 2)
- MDRV_IMPORT_FROM(common_sound)
+ MDRV_FRAGMENT_ADD(common_sound)
MDRV_CPU_ADD("mcu", ALPHA8301, 4000000/8)
MDRV_CPU_PROGRAM_MAP(mcu_map)
@@ -1313,7 +1306,7 @@ static MACHINE_DRIVER_START( splndrbt )
MDRV_MACHINE_START(equites)
MDRV_MACHINE_RESET(equites)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/ertictac.c b/src/mame/drivers/ertictac.c
index fac4127801a..8e2eacf2d37 100644
--- a/src/mame/drivers/ertictac.c
+++ b/src/mame/drivers/ertictac.c
@@ -216,7 +216,7 @@ static const i2cmem_interface i2cmem_interface =
I2CMEM_SLAVE_ADDRESS, NVRAM_PAGE_SIZE, NVRAM_SIZE
};
-static MACHINE_DRIVER_START( ertictac )
+static MACHINE_CONFIG_START( ertictac, driver_data_t )
MDRV_CPU_ADD("maincpu", ARM, 8000000) /* guess */
MDRV_CPU_PROGRAM_MAP(ertictac_map)
@@ -263,7 +263,7 @@ static MACHINE_DRIVER_START( ertictac )
MDRV_SOUND_ADD("dac7", DAC, 0)
MDRV_SOUND_ROUTE(0, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ertictac )
ROM_REGION(0x800000, "maincpu", 0 )
diff --git a/src/mame/drivers/esd16.c b/src/mame/drivers/esd16.c
index ef9c7e02156..3f77947595e 100644
--- a/src/mame/drivers/esd16.c
+++ b/src/mame/drivers/esd16.c
@@ -536,10 +536,7 @@ static MACHINE_RESET( esd16 )
state->tilemap0_color = 0;
}
-static MACHINE_DRIVER_START( multchmp )
-
- /* driver data */
- MDRV_DRIVER_DATA(esd16_state)
+static MACHINE_CONFIG_START( multchmp, esd16_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000, 16000000)
@@ -576,12 +573,11 @@ static MACHINE_DRIVER_START( multchmp )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hedpanic )
+static MACHINE_CONFIG_DERIVED( hedpanic, multchmp )
/* basic machine hardware */
- MDRV_IMPORT_FROM(multchmp)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hedpanic_map)
@@ -593,43 +589,39 @@ static MACHINE_DRIVER_START( hedpanic )
MDRV_GFXDECODE(hedpanic)
MDRV_VIDEO_UPDATE(hedpanic)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mchampdx )
+static MACHINE_CONFIG_DERIVED( mchampdx, hedpanic )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hedpanic)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mchampdx_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tangtang )
+static MACHINE_CONFIG_DERIVED( tangtang, hedpanic )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hedpanic)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tangtang_map)
MDRV_GFXDECODE(tangtang)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( swatpolc )
+static MACHINE_CONFIG_DERIVED( swatpolc, hedpanic )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hedpanic)
MDRV_GFXDECODE(tangtang)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hedpanio )
+static MACHINE_CONFIG_DERIVED( hedpanio, hedpanic )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hedpanic)
MDRV_VIDEO_UPDATE(hedpanio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/esh.c b/src/mame/drivers/esh.c
index 359c78ba0f1..1c2b780dd32 100644
--- a/src/mame/drivers/esh.c
+++ b/src/mame/drivers/esh.c
@@ -277,7 +277,7 @@ static MACHINE_START( esh )
/* DRIVER */
-static MACHINE_DRIVER_START( esh )
+static MACHINE_CONFIG_START( esh, driver_data_t )
/* main cpu */
MDRV_CPU_ADD("maincpu", Z80, PCB_CLOCK/6) /* The denominator is a Daphne guess based on PacMan's hardware */
@@ -306,7 +306,7 @@ static MACHINE_DRIVER_START( esh )
MDRV_SOUND_ADD("ldsound", LASERDISC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( esh )
diff --git a/src/mame/drivers/espial.c b/src/mame/drivers/espial.c
index 5f6c754d79c..a2f11f7829a 100644
--- a/src/mame/drivers/espial.c
+++ b/src/mame/drivers/espial.c
@@ -324,10 +324,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( espial )
-
- /* driver data */
- MDRV_DRIVER_DATA(espial_state)
+static MACHINE_CONFIG_START( espial, espial_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3072000) /* 3.072 MHz */
@@ -361,12 +358,11 @@ static MACHINE_DRIVER_START( espial )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( netwars )
+static MACHINE_CONFIG_DERIVED( netwars, espial )
/* basic machine hardware */
- MDRV_IMPORT_FROM(espial)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(netwars_map)
@@ -376,7 +372,7 @@ static MACHINE_DRIVER_START( netwars )
MDRV_SCREEN_SIZE(32*8, 64*8)
MDRV_VIDEO_START(netwars)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/esripsys.c b/src/mame/drivers/esripsys.c
index dd6d24301de..8f07c60293b 100644
--- a/src/mame/drivers/esripsys.c
+++ b/src/mame/drivers/esripsys.c
@@ -734,7 +734,7 @@ static const esrip_config rip_config =
"proms"
};
-static MACHINE_DRIVER_START( esripsys )
+static MACHINE_CONFIG_START( esripsys, driver_data_t )
MDRV_CPU_ADD("game_cpu", M6809E, XTAL_8MHz)
MDRV_CPU_PROGRAM_MAP(game_cpu_map)
MDRV_CPU_VBLANK_INT("screen", esripsys_vblank_irq)
@@ -771,7 +771,7 @@ static MACHINE_DRIVER_START( esripsys )
/* 6840 PTM */
MDRV_PTM6840_ADD("6840ptm", ptm_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/ettrivia.c b/src/mame/drivers/ettrivia.c
index 5de4cb5f121..d9b80b9f41e 100644
--- a/src/mame/drivers/ettrivia.c
+++ b/src/mame/drivers/ettrivia.c
@@ -237,7 +237,7 @@ static INTERRUPT_GEN( ettrivia_interrupt )
cpu_set_input_line(device, 0, HOLD_LINE);
}
-static MACHINE_DRIVER_START( ettrivia )
+static MACHINE_CONFIG_START( ettrivia, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80,12000000/4-48000) //should be ok, it gives the 300 interrupts expected
MDRV_CPU_PROGRAM_MAP(cpu_map)
MDRV_CPU_IO_MAP(io_map)
@@ -273,7 +273,7 @@ static MACHINE_DRIVER_START( ettrivia )
MDRV_SOUND_ADD("ay3", AY8910, 1500000)
MDRV_SOUND_CONFIG(ay8912_interface_3)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( promutrv )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/exedexes.c b/src/mame/drivers/exedexes.c
index 72729f0286d..a3b57b9f064 100644
--- a/src/mame/drivers/exedexes.c
+++ b/src/mame/drivers/exedexes.c
@@ -212,10 +212,7 @@ static MACHINE_RESET( exedexes )
state->sc2on = 0;
}
-static MACHINE_DRIVER_START( exedexes )
-
- /* driver data */
- MDRV_DRIVER_DATA(exedexes_state)
+static MACHINE_CONFIG_START( exedexes, exedexes_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz (?) */
@@ -258,7 +255,7 @@ static MACHINE_DRIVER_START( exedexes )
MDRV_SOUND_ADD("sn2", SN76489, 3000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.36)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/exerion.c b/src/mame/drivers/exerion.c
index a152fa844af..bbd1ab731ef 100644
--- a/src/mame/drivers/exerion.c
+++ b/src/mame/drivers/exerion.c
@@ -413,10 +413,7 @@ static MACHINE_RESET( exerion )
state->background_latches[i] = 0;
}
-static MACHINE_DRIVER_START( exerion )
-
- /* driver data */
- MDRV_DRIVER_DATA(exerion_state)
+static MACHINE_CONFIG_START( exerion, exerion_state )
MDRV_CPU_ADD("maincpu", Z80, EXERION_CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -448,7 +445,7 @@ static MACHINE_DRIVER_START( exerion )
MDRV_SOUND_ADD("ay2", AY8910, EXERION_AY8910_CLOCK)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/exidy.c b/src/mame/drivers/exidy.c
index ef077314c24..8a0928e0c3b 100644
--- a/src/mame/drivers/exidy.c
+++ b/src/mame/drivers/exidy.c
@@ -789,7 +789,7 @@ static MACHINE_START( teetert )
*
*************************************/
-static MACHINE_DRIVER_START( base )
+static MACHINE_CONFIG_START( base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, EXIDY_CPU_CLOCK)
@@ -806,108 +806,99 @@ static MACHINE_DRIVER_START( base )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(EXIDY_PIXEL_CLOCK, EXIDY_HTOTAL, EXIDY_HBEND, EXIDY_HBSTART, EXIDY_VTOTAL, EXIDY_VBEND, EXIDY_VBSTART)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sidetrac )
+static MACHINE_CONFIG_DERIVED( sidetrac, base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sidetrac_map)
/* audio hardware */
- MDRV_IMPORT_FROM(spectar_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(spectar_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( targ )
+static MACHINE_CONFIG_DERIVED( targ, base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(targ_map)
/* audio hardware */
- MDRV_IMPORT_FROM(targ_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(targ_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spectar )
+static MACHINE_CONFIG_DERIVED( spectar, base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(spectar_map)
/* audio hardware */
- MDRV_IMPORT_FROM(spectar_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(spectar_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rallys )
+static MACHINE_CONFIG_DERIVED( rallys, spectar )
/* basic machine hardware */
- MDRV_IMPORT_FROM(spectar)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(rallys_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( venture )
+static MACHINE_CONFIG_DERIVED( venture, base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(venture_map)
MDRV_QUANTUM_TIME(HZ(600))
/* audio hardware */
- MDRV_IMPORT_FROM(venture_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(venture_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( teetert )
+static MACHINE_CONFIG_DERIVED( teetert, venture )
/* basic machine hardware */
- MDRV_IMPORT_FROM(venture)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT_HACK(teetert_vblank_interrupt,10)
MDRV_MACHINE_START( teetert )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mtrap )
+static MACHINE_CONFIG_DERIVED( mtrap, venture )
/* basic machine hardware */
- MDRV_IMPORT_FROM(venture)
MDRV_QUANTUM_TIME(HZ(1920))
/* audio hardware */
- MDRV_IMPORT_FROM(mtrap_cvsd_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(mtrap_cvsd_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pepper2 )
+static MACHINE_CONFIG_DERIVED( pepper2, venture )
/* basic machine hardware */
- MDRV_IMPORT_FROM(venture)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(pepper2_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fax )
+static MACHINE_CONFIG_DERIVED( fax, pepper2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pepper2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(fax_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/exidy440.c b/src/mame/drivers/exidy440.c
index 2490381c709..7e7e1883891 100644
--- a/src/mame/drivers/exidy440.c
+++ b/src/mame/drivers/exidy440.c
@@ -997,7 +997,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( exidy440 )
+static MACHINE_CONFIG_START( exidy440, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CPU_CLOCK)
@@ -1008,21 +1008,20 @@ static MACHINE_DRIVER_START( exidy440 )
MDRV_NVRAM_HANDLER(exidy440)
/* video hardware */
- MDRV_IMPORT_FROM(exidy440_video)
+ MDRV_FRAGMENT_ADD(exidy440_video)
/* audio hardware */
- MDRV_IMPORT_FROM(exidy440_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(exidy440_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( topsecex )
+static MACHINE_CONFIG_DERIVED( topsecex, exidy440 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(exidy440)
/* video hardware */
- MDRV_IMPORT_FROM(topsecex_video)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(topsecex_video)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/expro02.c b/src/mame/drivers/expro02.c
index 7ed2f52f62e..6a2d255fbba 100644
--- a/src/mame/drivers/expro02.c
+++ b/src/mame/drivers/expro02.c
@@ -475,7 +475,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( galsnew )
+static MACHINE_CONFIG_START( galsnew, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -509,19 +509,18 @@ static MACHINE_DRIVER_START( galsnew )
MDRV_OKIM6295_ADD("oki", 12000000/6, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fantasia )
+static MACHINE_CONFIG_DERIVED( fantasia, galsnew )
/* basic machine hardware */
- MDRV_IMPORT_FROM( galsnew )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(fantasia_map)
MDRV_WATCHDOG_TIME_INIT(SEC(0)) /* a guess, and certainly wrong */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/exprraid.c b/src/mame/drivers/exprraid.c
index 2cef71b9076..ee8cf29fa20 100644
--- a/src/mame/drivers/exprraid.c
+++ b/src/mame/drivers/exprraid.c
@@ -493,10 +493,7 @@ static MACHINE_RESET( exprraid )
state->bg_index[3] = 0;
}
-static MACHINE_DRIVER_START( exprraid )
-
- /* driver data */
- MDRV_DRIVER_DATA(exprraid_state)
+static MACHINE_CONFIG_START( exprraid, exprraid_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", DECO16, 4000000) /* 4 MHz ??? */
@@ -533,14 +530,13 @@ static MACHINE_DRIVER_START( exprraid )
MDRV_SOUND_ADD("ym2", YM3526, 3600000)
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( exprboot )
- MDRV_IMPORT_FROM(exprraid)
+static MACHINE_CONFIG_DERIVED( exprboot, exprraid )
MDRV_CPU_REPLACE("maincpu", M6502, 4000000) /* 4 MHz ??? */
MDRV_CPU_PROGRAM_MAP(master_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/exterm.c b/src/mame/drivers/exterm.c
index 39d427efa91..e088151416e 100644
--- a/src/mame/drivers/exterm.c
+++ b/src/mame/drivers/exterm.c
@@ -446,7 +446,7 @@ static const tms34010_config slave_config =
*
*************************************/
-static MACHINE_DRIVER_START( exterm )
+static MACHINE_CONFIG_START( exterm, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, 40000000)
@@ -487,7 +487,7 @@ static MACHINE_DRIVER_START( exterm )
MDRV_SOUND_ADD("ymsnd", YM2151, 4000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/exzisus.c b/src/mame/drivers/exzisus.c
index b390c3ef6f3..0ef08f6365f 100644
--- a/src/mame/drivers/exzisus.c
+++ b/src/mame/drivers/exzisus.c
@@ -298,7 +298,7 @@ static const tc0140syt_interface exzisus_tc0140syt_intf =
};
/* All clocks are unconfirmed */
-static MACHINE_DRIVER_START( exzisus )
+static MACHINE_CONFIG_START( exzisus, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("cpua", Z80, 6000000)
@@ -341,7 +341,7 @@ static MACHINE_DRIVER_START( exzisus )
MDRV_SOUND_ROUTE(1, "mono", 0.50)
MDRV_TC0140SYT_ADD("tc0140syt", exzisus_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/f-32.c b/src/mame/drivers/f-32.c
index b44b2a048ca..0411579a489 100644
--- a/src/mame/drivers/f-32.c
+++ b/src/mame/drivers/f-32.c
@@ -131,10 +131,7 @@ static INPUT_PORTS_START( mosaicf2 )
PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE("eeprom", eeprom_set_cs_line)
INPUT_PORTS_END
-static MACHINE_DRIVER_START( mosaicf2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(mosaicf2_state)
+static MACHINE_CONFIG_START( mosaicf2, mosaicf2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", E132XN, 20000000*4) /* 4x internal multiplier */
@@ -167,7 +164,7 @@ static MACHINE_DRIVER_START( mosaicf2 )
MDRV_OKIM6295_ADD("oki", 1789772.5, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/f1gp.c b/src/mame/drivers/f1gp.c
index c6dfe0144b3..b9e18b93348 100644
--- a/src/mame/drivers/f1gp.c
+++ b/src/mame/drivers/f1gp.c
@@ -467,10 +467,7 @@ static MACHINE_RESET( f1gp )
state->scroll[1] = 0;
}
-static MACHINE_DRIVER_START( f1gp )
-
- /* driver data */
- MDRV_DRIVER_DATA(f1gp_state)
+static MACHINE_CONFIG_START( f1gp, f1gp_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,XTAL_20MHz/2) /* verified on pcb */
@@ -514,13 +511,10 @@ static MACHINE_DRIVER_START( f1gp )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( f1gpb )
- /* driver data */
- MDRV_DRIVER_DATA(f1gp_state)
+static MACHINE_CONFIG_START( f1gpb, f1gp_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,10000000) /* 10 MHz ??? */
@@ -556,13 +550,12 @@ static MACHINE_DRIVER_START( f1gpb )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( f1gp2 )
+static MACHINE_CONFIG_DERIVED( f1gp2, f1gp )
/* basic machine hardware */
- MDRV_IMPORT_FROM(f1gp)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(f1gp2_cpu1_map)
@@ -576,7 +569,7 @@ static MACHINE_DRIVER_START( f1gp2 )
MDRV_VIDEO_START(f1gp2)
MDRV_VIDEO_UPDATE(f1gp2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/fantland.c b/src/mame/drivers/fantland.c
index ebd109aa69d..6f65b8fed1c 100644
--- a/src/mame/drivers/fantland.c
+++ b/src/mame/drivers/fantland.c
@@ -852,10 +852,7 @@ static INTERRUPT_GEN( fantland_sound_irq )
cpu_set_input_line_and_vector(device, 0, HOLD_LINE, 0x80 / 4);
}
-static MACHINE_DRIVER_START( fantland )
-
- /* driver data */
- MDRV_DRIVER_DATA(fantland_state)
+static MACHINE_CONFIG_START( fantland, fantland_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8086, 8000000) // ?
@@ -895,7 +892,7 @@ static MACHINE_DRIVER_START( fantland )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static void galaxygn_sound_irq( running_device *device, int line )
@@ -909,10 +906,7 @@ static const ym2151_interface galaxygn_ym2151_interface =
galaxygn_sound_irq
};
-static MACHINE_DRIVER_START( galaxygn )
-
- /* driver data */
- MDRV_DRIVER_DATA(fantland_state)
+static MACHINE_CONFIG_START( galaxygn, fantland_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8088, 8000000) // ?
@@ -947,7 +941,7 @@ static MACHINE_DRIVER_START( galaxygn )
MDRV_SOUND_CONFIG(galaxygn_ym2151_interface)
MDRV_SOUND_ROUTE(0, "mono", 1.0)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
// OKI M5205 running at 384kHz [18.432/48]. Sample rate = 384000 / 48
@@ -1022,10 +1016,7 @@ static MACHINE_RESET( borntofi )
borntofi_adpcm_stop(machine->device("msm4"), 3);
}
-static MACHINE_DRIVER_START( borntofi )
-
- /* driver data */
- MDRV_DRIVER_DATA(fantland_state)
+static MACHINE_CONFIG_START( borntofi, fantland_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V20, 16000000/2) // D701080C-8 - NEC D70108C-8 V20 CPU, running at 8.000MHz [16/2]
@@ -1058,7 +1049,7 @@ static MACHINE_DRIVER_START( borntofi )
MDRV_SOUND_ADD("msm2", MSM5205, 384000) MDRV_SOUND_CONFIG(msm5205_config_1) MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_SOUND_ADD("msm3", MSM5205, 384000) MDRV_SOUND_CONFIG(msm5205_config_2) MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_SOUND_ADD("msm4", MSM5205, 384000) MDRV_SOUND_CONFIG(msm5205_config_3) MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1073,10 +1064,7 @@ static const ym3526_interface wheelrun_ym3526_interface =
wheelrun_ym3526_irqhandler
};
-static MACHINE_DRIVER_START( wheelrun )
-
- /* driver data */
- MDRV_DRIVER_DATA(fantland_state)
+static MACHINE_CONFIG_START( wheelrun, fantland_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V20, XTAL_18MHz/2) // D701080C-8 (V20)
@@ -1109,7 +1097,7 @@ static MACHINE_DRIVER_START( wheelrun )
MDRV_SOUND_ADD("ymsnd", YM3526, XTAL_14MHz/4)
MDRV_SOUND_CONFIG(wheelrun_ym3526_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/fastfred.c b/src/mame/drivers/fastfred.c
index a8ab61dd837..2d0c78bff9d 100644
--- a/src/mame/drivers/fastfred.c
+++ b/src/mame/drivers/fastfred.c
@@ -616,7 +616,7 @@ GFXDECODE_END
#define CLOCK 18432000 /* The crystal is 18.432MHz */
-static MACHINE_DRIVER_START( fastfred )
+static MACHINE_CONFIG_START( fastfred, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CLOCK/6) /* 3.072 MHz */
@@ -650,12 +650,11 @@ static MACHINE_DRIVER_START( fastfred )
MDRV_SOUND_ADD("ay8910.2", AY8910, CLOCK/12)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jumpcoas )
+static MACHINE_CONFIG_DERIVED( jumpcoas, fastfred )
/* basic machine hardware */
- MDRV_IMPORT_FROM(fastfred)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(jumpcoas_map)
@@ -666,12 +665,11 @@ static MACHINE_DRIVER_START( jumpcoas )
/* sound hardware */
MDRV_DEVICE_REMOVE("ay8910.2")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( imago )
+static MACHINE_CONFIG_DERIVED( imago, fastfred )
/* basic machine hardware */
- MDRV_IMPORT_FROM(fastfred)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(imago_map)
@@ -683,7 +681,7 @@ static MACHINE_DRIVER_START( imago )
MDRV_VIDEO_START(imago)
MDRV_VIDEO_UPDATE(imago)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#undef CLOCK
diff --git a/src/mame/drivers/fastlane.c b/src/mame/drivers/fastlane.c
index 98236dc1dfa..c12204004f2 100644
--- a/src/mame/drivers/fastlane.c
+++ b/src/mame/drivers/fastlane.c
@@ -210,10 +210,7 @@ static MACHINE_START( fastlane )
state->k007121 = machine->device("k007121");
}
-static MACHINE_DRIVER_START( fastlane )
-
- /* driver data */
- MDRV_DRIVER_DATA(fastlane_state)
+static MACHINE_CONFIG_START( fastlane, fastlane_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, 3000000*4) /* 24MHz/8? */
@@ -252,7 +249,7 @@ static MACHINE_DRIVER_START( fastlane )
MDRV_SOUND_CONFIG(k007232_interface_2)
MDRV_SOUND_ROUTE(0, "mono", 0.50)
MDRV_SOUND_ROUTE(1, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/fcombat.c b/src/mame/drivers/fcombat.c
index 5616ed69d71..c7453c25c92 100644
--- a/src/mame/drivers/fcombat.c
+++ b/src/mame/drivers/fcombat.c
@@ -295,10 +295,7 @@ static MACHINE_RESET( fcombat )
state->ty = 0;
}
-static MACHINE_DRIVER_START( fcombat )
-
- /* driver data */
- MDRV_DRIVER_DATA(fcombat_state)
+static MACHINE_CONFIG_START( fcombat, fcombat_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 10000000/3)
@@ -333,7 +330,7 @@ static MACHINE_DRIVER_START( fcombat )
MDRV_SOUND_ADD("ay3", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.12)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/fcrash.c b/src/mame/drivers/fcrash.c
index 78832dd2e86..34844c9544b 100644
--- a/src/mame/drivers/fcrash.c
+++ b/src/mame/drivers/fcrash.c
@@ -725,10 +725,7 @@ static MACHINE_RESET( fcrash )
state->sample_select2 = 0;
}
-static MACHINE_DRIVER_START( fcrash )
-
- /* driver data */
- MDRV_DRIVER_DATA(cps_state)
+static MACHINE_CONFIG_START( fcrash, cps_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -778,12 +775,9 @@ static MACHINE_DRIVER_START( fcrash )
MDRV_SOUND_ADD("msm2", MSM5205, 24000000/64) /* ? */
MDRV_SOUND_CONFIG(msm5205_interface2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( kodb )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(cps_state)
+static MACHINE_CONFIG_START( kodb, cps_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -820,7 +814,7 @@ static MACHINE_DRIVER_START( kodb )
// MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH) // pin 7 can be changed by the game code, see f006 on z80
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/feversoc.c b/src/mame/drivers/feversoc.c
index 90dbc244da7..88b20f8c9e1 100644
--- a/src/mame/drivers/feversoc.c
+++ b/src/mame/drivers/feversoc.c
@@ -234,7 +234,7 @@ static INTERRUPT_GEN( feversoc_irq )
cputag_set_input_line(device->machine, "maincpu", 8, HOLD_LINE );
}
-static MACHINE_DRIVER_START( feversoc )
+static MACHINE_CONFIG_START( feversoc, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",SH2,MASTER_CLOCK)
@@ -258,7 +258,7 @@ static MACHINE_DRIVER_START( feversoc )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", MASTER_CLOCK/16, OKIM6295_PIN7_LOW) //pin 7 & frequency not verified (clock should be 28,6363 / n)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.6)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/fgoal.c b/src/mame/drivers/fgoal.c
index e8cfedd9ef6..d0a388728ea 100644
--- a/src/mame/drivers/fgoal.c
+++ b/src/mame/drivers/fgoal.c
@@ -367,10 +367,7 @@ static MACHINE_RESET( fgoal )
state->prev_coin = 0;
}
-static MACHINE_DRIVER_START( fgoal )
-
- /* driver data */
- MDRV_DRIVER_DATA(fgoal_state)
+static MACHINE_CONFIG_START( fgoal, fgoal_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, 10065000 / 10) /* ? */
@@ -397,7 +394,7 @@ static MACHINE_DRIVER_START( fgoal )
MDRV_VIDEO_UPDATE(fgoal)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( fgoal )
diff --git a/src/mame/drivers/finalizr.c b/src/mame/drivers/finalizr.c
index 44d5090f7ae..c3bff8df129 100644
--- a/src/mame/drivers/finalizr.c
+++ b/src/mame/drivers/finalizr.c
@@ -267,10 +267,7 @@ static MACHINE_RESET( finalizr )
state->irq_enable = 0;
}
-static MACHINE_DRIVER_START( finalizr )
-
- /* driver data */
- MDRV_DRIVER_DATA(finalizr_state)
+static MACHINE_CONFIG_START( finalizr, finalizr_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809,XTAL_18_432MHz/6) /* ??? */
@@ -307,7 +304,7 @@ static MACHINE_DRIVER_START( finalizr )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.65)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/firebeat.c b/src/mame/drivers/firebeat.c
index 5ae15a5ea17..0cbc1750b9c 100644
--- a/src/mame/drivers/firebeat.c
+++ b/src/mame/drivers/firebeat.c
@@ -1912,7 +1912,7 @@ static MACHINE_RESET( firebeat )
cdda_set_cdrom(machine->device("cdda"), cd);
}
-static MACHINE_DRIVER_START(firebeat)
+static MACHINE_CONFIG_START( firebeat, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GCX, 66000000)
@@ -1951,9 +1951,9 @@ static MACHINE_DRIVER_START(firebeat)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START(firebeat2)
+static MACHINE_CONFIG_START( firebeat2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GCX, 66000000)
@@ -1997,16 +1997,14 @@ static MACHINE_DRIVER_START(firebeat2)
MDRV_SOUND_ADD("cdda", CDDA, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START(firebeat_spu)
-
- MDRV_IMPORT_FROM(firebeat)
+static MACHINE_CONFIG_DERIVED( firebeat_spu, firebeat )
MDRV_CPU_ADD("audiocpu", M68000, 16000000)
MDRV_CPU_PROGRAM_MAP(spu_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*****************************************************************************/
/* Security dongle is a Dallas DS1411 RS232 Adapter with a DS1991 Multikey iButton */
diff --git a/src/mame/drivers/firefox.c b/src/mame/drivers/firefox.c
index 014fda6c2cf..52d29e770d0 100644
--- a/src/mame/drivers/firefox.c
+++ b/src/mame/drivers/firefox.c
@@ -641,7 +641,7 @@ static const riot6532_interface riot_intf =
};
-static MACHINE_DRIVER_START( firefox )
+static MACHINE_CONFIG_START( firefox, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809E, MASTER_XTAL/2)
@@ -699,7 +699,7 @@ static MACHINE_DRIVER_START( firefox )
MDRV_SOUND_ADD("ldsound", LASERDISC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/firetrap.c b/src/mame/drivers/firetrap.c
index d6ca575b932..a27efa99b24 100644
--- a/src/mame/drivers/firetrap.c
+++ b/src/mame/drivers/firetrap.c
@@ -672,10 +672,7 @@ static MACHINE_RESET( firetrap )
state->coin_command_pending = 0;
}
-static MACHINE_DRIVER_START( firetrap )
-
- /* driver data */
- MDRV_DRIVER_DATA(firetrap_state)
+static MACHINE_CONFIG_START( firetrap, firetrap_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, FIRETRAP_XTAL/2) // 6 MHz
@@ -714,12 +711,9 @@ static MACHINE_DRIVER_START( firetrap )
MDRV_SOUND_ADD("msm", MSM5205, FIRETRAP_XTAL/32) // 375 kHz
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( firetrapbl )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(firetrap_state)
+static MACHINE_CONFIG_START( firetrapbl, firetrap_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, FIRETRAP_XTAL/2) // 6 MHz
@@ -758,7 +752,7 @@ static MACHINE_DRIVER_START( firetrapbl )
MDRV_SOUND_ADD("msm", MSM5205, FIRETRAP_XTAL/32) // 375 kHz
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/firetrk.c b/src/mame/drivers/firetrk.c
index 958d4f07033..af8a4691a4d 100644
--- a/src/mame/drivers/firetrk.c
+++ b/src/mame/drivers/firetrk.c
@@ -876,7 +876,7 @@ static GFXDECODE_START( montecar )
GFXDECODE_END
-static MACHINE_DRIVER_START( firetrk )
+static MACHINE_CONFIG_START( firetrk, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, MASTER_CLOCK/12) /* 750Khz during service mode */
@@ -907,13 +907,12 @@ static MACHINE_DRIVER_START( firetrk )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(firetrk)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( superbug )
+static MACHINE_CONFIG_DERIVED( superbug, firetrk )
/* basic machine hardware */
- MDRV_IMPORT_FROM(firetrk)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(superbug_map)
@@ -927,13 +926,12 @@ static MACHINE_DRIVER_START( superbug )
MDRV_SOUND_REPLACE("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(superbug)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( montecar )
+static MACHINE_CONFIG_DERIVED( montecar, firetrk )
/* basic machine hardware */
- MDRV_IMPORT_FROM(firetrk)
MDRV_CPU_MODIFY("maincpu") /* 750Khz during service mode */
MDRV_CPU_PROGRAM_MAP(montecar_map)
@@ -949,7 +947,7 @@ static MACHINE_DRIVER_START( montecar )
MDRV_SOUND_REPLACE("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(montecar)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( firetrk )
diff --git a/src/mame/drivers/fitfight.c b/src/mame/drivers/fitfight.c
index 143607356f8..5c48401cc74 100644
--- a/src/mame/drivers/fitfight.c
+++ b/src/mame/drivers/fitfight.c
@@ -731,8 +731,7 @@ static MACHINE_RESET( fitfight )
state->fof_700000_data = 0;
}
-static MACHINE_DRIVER_START( fitfight )
- MDRV_DRIVER_DATA(fitfight_state)
+static MACHINE_CONFIG_START( fitfight, fitfight_state )
MDRV_CPU_ADD("maincpu",M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(fitfight_main_map)
@@ -765,10 +764,9 @@ static MACHINE_DRIVER_START( fitfight )
MDRV_OKIM6295_ADD("oki", 1333333, OKIM6295_PIN7_LOW) // ~8080Hz ??? TODO: find out the real frequency
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bbprot )
- MDRV_DRIVER_DATA(fitfight_state)
+static MACHINE_CONFIG_START( bbprot, fitfight_state )
MDRV_CPU_ADD("maincpu",M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(bbprot_main_map)
@@ -795,7 +793,7 @@ static MACHINE_DRIVER_START( bbprot )
MDRV_OKIM6295_ADD("oki", 1333333, OKIM6295_PIN7_LOW) // ~8080Hz ??? TODO: find out the real frequency
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***
diff --git a/src/mame/drivers/flkatck.c b/src/mame/drivers/flkatck.c
index 8fa2c675e0a..d1b01f7ac9b 100644
--- a/src/mame/drivers/flkatck.c
+++ b/src/mame/drivers/flkatck.c
@@ -222,10 +222,7 @@ static MACHINE_RESET( flkatck )
state->flipscreen = 0;
}
-static MACHINE_DRIVER_START( flkatck )
-
- /* driver data */
- MDRV_DRIVER_DATA(flkatck_state)
+static MACHINE_CONFIG_START( flkatck, flkatck_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309,3000000*4) /* HD63C09EP, 24/8 MHz */
@@ -269,7 +266,7 @@ static MACHINE_DRIVER_START( flkatck )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.50)
MDRV_SOUND_ROUTE(1, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/flower.c b/src/mame/drivers/flower.c
index a71d41b3767..d4540936d23 100644
--- a/src/mame/drivers/flower.c
+++ b/src/mame/drivers/flower.c
@@ -238,7 +238,7 @@ static INTERRUPT_GEN( flower_cpu0_interrupt )
cpu_set_input_line(device, 0, ASSERT_LINE);
}
-static MACHINE_DRIVER_START( flower )
+static MACHINE_CONFIG_START( flower, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000)
@@ -276,7 +276,7 @@ static MACHINE_DRIVER_START( flower )
MDRV_SOUND_ADD("flower", FLOWER, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( flower ) /* Komax version */
diff --git a/src/mame/drivers/flstory.c b/src/mame/drivers/flstory.c
index 2b910312239..4323b01c815 100644
--- a/src/mame/drivers/flstory.c
+++ b/src/mame/drivers/flstory.c
@@ -731,10 +731,7 @@ static MACHINE_RESET( flstory )
state->mcu_select = 0;
}
-static MACHINE_DRIVER_START( flstory )
-
- /* driver data */
- MDRV_DRIVER_DATA(flstory_state)
+static MACHINE_CONFIG_START( flstory, flstory_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,XTAL_10_733MHz/2) /* verified on pcb */
@@ -791,12 +788,9 @@ static MACHINE_DRIVER_START( flstory )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( onna34ro )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(flstory_state)
+static MACHINE_CONFIG_START( onna34ro, flstory_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,10733000/2) /* ??? */
@@ -852,12 +846,9 @@ static MACHINE_DRIVER_START( onna34ro )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( victnine )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(flstory_state)
+static MACHINE_CONFIG_START( victnine, flstory_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000/2) /* 4 MHz */
@@ -913,7 +904,7 @@ static MACHINE_DRIVER_START( victnine )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/flyball.c b/src/mame/drivers/flyball.c
index 706df5fb35e..27e2739fc42 100644
--- a/src/mame/drivers/flyball.c
+++ b/src/mame/drivers/flyball.c
@@ -401,10 +401,7 @@ static MACHINE_RESET( flyball )
}
-static MACHINE_DRIVER_START( flyball )
-
- /* driver data */
- MDRV_DRIVER_DATA(flyball_state)
+static MACHINE_CONFIG_START( flyball, flyball_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/16)
@@ -429,7 +426,7 @@ static MACHINE_DRIVER_START( flyball )
MDRV_VIDEO_START(flyball)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/foodf.c b/src/mame/drivers/foodf.c
index 7d7b5769cdd..f1d0e9a6ebc 100644
--- a/src/mame/drivers/foodf.c
+++ b/src/mame/drivers/foodf.c
@@ -353,8 +353,7 @@ static const pokey_interface pokey_config =
*
*************************************/
-static MACHINE_DRIVER_START( foodf )
- MDRV_DRIVER_DATA(foodf_state)
+static MACHINE_CONFIG_START( foodf, foodf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK/2)
@@ -391,7 +390,7 @@ static MACHINE_DRIVER_START( foodf )
MDRV_SOUND_ADD("pokey3", POKEY, MASTER_CLOCK/2/10)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/forte2.c b/src/mame/drivers/forte2.c
index 0c4a5a3d826..a8289b15334 100644
--- a/src/mame/drivers/forte2.c
+++ b/src/mame/drivers/forte2.c
@@ -115,7 +115,7 @@ static INTERRUPT_GEN( pesadelo_interrupt )
}
-static MACHINE_DRIVER_START( pesadelo )
+static MACHINE_CONFIG_START( pesadelo, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80, 3579545) /* 3.579545 Mhz */
MDRV_CPU_PROGRAM_MAP(program_mem)
@@ -126,7 +126,7 @@ static MACHINE_DRIVER_START( pesadelo )
MDRV_MACHINE_RESET( forte2 )
/* video hardware */
- MDRV_IMPORT_FROM(tms9928a)
+ MDRV_FRAGMENT_ADD(tms9928a)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE((float)XTAL_10_738635MHz/2/342/262)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -137,7 +137,7 @@ static MACHINE_DRIVER_START( pesadelo )
MDRV_SOUND_ADD("aysnd", AY8910, (float)XTAL_3_579545MHz/2)
MDRV_SOUND_CONFIG(forte2_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT(pesadelo)
{
diff --git a/src/mame/drivers/fortecar.c b/src/mame/drivers/fortecar.c
index 1eea822fa28..01f64912bd0 100644
--- a/src/mame/drivers/fortecar.c
+++ b/src/mame/drivers/fortecar.c
@@ -277,7 +277,7 @@ static const mc6845_interface mc6845_intf =
};
//51f
-static MACHINE_DRIVER_START( fortecar )
+static MACHINE_CONFIG_START( fortecar, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,6000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(fortecar_map)
@@ -313,7 +313,7 @@ static MACHINE_DRIVER_START( fortecar )
MDRV_SOUND_ADD("aysnd", AY8910, 1500000)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( fortecar )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/freekick.c b/src/mame/drivers/freekick.c
index d6e81c40f03..7360ffe134b 100644
--- a/src/mame/drivers/freekick.c
+++ b/src/mame/drivers/freekick.c
@@ -643,8 +643,7 @@ static MACHINE_RESET( oigas )
state->cnt = 0;
}
-static MACHINE_DRIVER_START( base )
- MDRV_DRIVER_DATA(freekick_state)
+static MACHINE_CONFIG_START( base, freekick_state )
MDRV_CPU_ADD("maincpu",Z80, 18432000/6) //confirmed
MDRV_CPU_PROGRAM_MAP(pbillrd_map)
@@ -680,17 +679,15 @@ static MACHINE_DRIVER_START( base )
MDRV_SOUND_ADD("sn4", SN76496, 12000000/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pbillrd )
- MDRV_IMPORT_FROM(base)
+static MACHINE_CONFIG_DERIVED( pbillrd, base )
MDRV_MACHINE_START(pbillrd)
MDRV_MACHINE_RESET(freekick)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( freekickb )
- MDRV_IMPORT_FROM(base)
+static MACHINE_CONFIG_DERIVED( freekickb, base )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(freekickb_map)
@@ -703,10 +700,9 @@ static MACHINE_DRIVER_START( freekickb )
MDRV_PPI8255_ADD( "ppi8255_1", ppi8255_intf[1] )
MDRV_VIDEO_UPDATE(freekick)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gigas )
- MDRV_IMPORT_FROM(base)
+static MACHINE_CONFIG_DERIVED( gigas, base )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gigas_map)
@@ -716,16 +712,15 @@ static MACHINE_DRIVER_START( gigas )
MDRV_MACHINE_RESET(freekick)
MDRV_VIDEO_UPDATE(gigas)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( oigas )
- MDRV_IMPORT_FROM(gigas)
+static MACHINE_CONFIG_DERIVED( oigas, gigas )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(oigas_io_map)
MDRV_MACHINE_START(oigas)
MDRV_MACHINE_RESET(oigas)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/fromanc2.c b/src/mame/drivers/fromanc2.c
index 93a31197e2b..9782181cd1f 100644
--- a/src/mame/drivers/fromanc2.c
+++ b/src/mame/drivers/fromanc2.c
@@ -556,10 +556,7 @@ static MACHINE_RESET( fromanc2 )
state->datalatch_2l = 0;
}
-static MACHINE_DRIVER_START( fromanc2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(fromanc2_state)
+static MACHINE_CONFIG_START( fromanc2, fromanc2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,32000000/2) /* 16.00 MHz */
@@ -609,12 +606,9 @@ static MACHINE_DRIVER_START( fromanc2 )
MDRV_SOUND_ROUTE(0, "mono", 0.50)
MDRV_SOUND_ROUTE(1, "mono", 0.75)
MDRV_SOUND_ROUTE(2, "mono", 0.75)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( fromancr )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(fromanc2_state)
+static MACHINE_CONFIG_START( fromancr, fromanc2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,32000000/2) /* 16.00 MHz */
@@ -664,12 +658,9 @@ static MACHINE_DRIVER_START( fromancr )
MDRV_SOUND_ROUTE(0, "mono", 0.50)
MDRV_SOUND_ROUTE(1, "mono", 0.75)
MDRV_SOUND_ROUTE(2, "mono", 0.75)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( fromanc4 )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(fromanc2_state)
+static MACHINE_CONFIG_START( fromanc4, fromanc2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,32000000/2) /* 16.00 MHz */
@@ -716,7 +707,7 @@ static MACHINE_DRIVER_START( fromanc4 )
MDRV_SOUND_ROUTE(0, "mono", 0.50)
MDRV_SOUND_ROUTE(1, "mono", 0.75)
MDRV_SOUND_ROUTE(2, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/fromance.c b/src/mame/drivers/fromance.c
index e1f3f942dd6..fa0bfe4a781 100644
--- a/src/mame/drivers/fromance.c
+++ b/src/mame/drivers/fromance.c
@@ -1008,10 +1008,7 @@ static MACHINE_RESET( fromance )
state->crtc_data[i] = 0;
}
-static MACHINE_DRIVER_START( nekkyoku )
-
- /* driver data */
- MDRV_DRIVER_DATA(fromance_state)
+static MACHINE_CONFIG_START( nekkyoku, fromance_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6.00 Mhz ? */
@@ -1047,13 +1044,10 @@ static MACHINE_DRIVER_START( nekkyoku )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( idolmj )
- /* driver data */
- MDRV_DRIVER_DATA(fromance_state)
+static MACHINE_CONFIG_START( idolmj, fromance_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6.00 Mhz ? */
@@ -1089,13 +1083,10 @@ static MACHINE_DRIVER_START( idolmj )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fromance )
- /* driver data */
- MDRV_DRIVER_DATA(fromance_state)
+static MACHINE_CONFIG_START( fromance, fromance_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6.00 Mhz ? */
@@ -1131,7 +1122,7 @@ static MACHINE_DRIVER_START( fromance )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/funkybee.c b/src/mame/drivers/funkybee.c
index c55f95c148c..4603dbbd896 100644
--- a/src/mame/drivers/funkybee.c
+++ b/src/mame/drivers/funkybee.c
@@ -292,10 +292,7 @@ static MACHINE_RESET( funkybee )
state->gfx_bank = 0;
}
-static MACHINE_DRIVER_START( funkybee )
-
- /* driver data */
- MDRV_DRIVER_DATA(funkybee_state)
+static MACHINE_CONFIG_START( funkybee, funkybee_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3072000) /* 3.072 MHz */
@@ -327,7 +324,7 @@ static MACHINE_DRIVER_START( funkybee )
MDRV_SOUND_ADD("aysnd", AY8910, 1500000)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/funkyjet.c b/src/mame/drivers/funkyjet.c
index 25aba62c3b0..9a8b2693cfd 100644
--- a/src/mame/drivers/funkyjet.c
+++ b/src/mame/drivers/funkyjet.c
@@ -305,10 +305,7 @@ static MACHINE_START( funkyjet )
state->deco16ic = machine->device("deco_custom");
}
-static MACHINE_DRIVER_START( funkyjet )
-
- /* driver data */
- MDRV_DRIVER_DATA(funkyjet_state)
+static MACHINE_CONFIG_START( funkyjet, funkyjet_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000) /* 28 MHz crystal */
@@ -346,7 +343,7 @@ static MACHINE_DRIVER_START( funkyjet )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/funworld.c b/src/mame/drivers/funworld.c
index 275e3776ea5..f43bf17e2e6 100644
--- a/src/mame/drivers/funworld.c
+++ b/src/mame/drivers/funworld.c
@@ -2116,7 +2116,7 @@ static const mc6845_interface mc6845_intf =
* Machine Drivers *
**************************/
-static MACHINE_DRIVER_START( fw1stpal )
+static MACHINE_CONFIG_START( fw1stpal, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M65SC02, MASTER_CLOCK/8) /* 2MHz */
MDRV_CPU_PROGRAM_MAP(funworld_map)
@@ -2151,23 +2151,21 @@ static MACHINE_DRIVER_START( fw1stpal )
MDRV_SOUND_ADD("ay8910", AY8910, MASTER_CLOCK/8) /* 2MHz */
MDRV_SOUND_CONFIG(ay8910_intf)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.5) /* analyzed to avoid clips */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fw2ndpal )
- MDRV_IMPORT_FROM(fw1stpal)
+static MACHINE_CONFIG_DERIVED( fw2ndpal, fw1stpal )
MDRV_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MDRV_CPU_PROGRAM_MAP(funworld_map)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
MDRV_GFXDECODE(fw2ndpal)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( funquiz )
- MDRV_IMPORT_FROM(fw1stpal)
-// MDRV_IMPORT_FROM(fw2ndpal)
+static MACHINE_CONFIG_DERIVED( funquiz, fw1stpal )
+// MDRV_FRAGMENT_ADD(fw2ndpal)
MDRV_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MDRV_CPU_PROGRAM_MAP(funquiz_map)
@@ -2176,11 +2174,10 @@ static MACHINE_DRIVER_START( funquiz )
MDRV_SOUND_REPLACE("ay8910", AY8910, MASTER_CLOCK/8) /* 2MHz */
MDRV_SOUND_CONFIG(funquiz_ay8910_intf)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( magicrd2 )
- MDRV_IMPORT_FROM(fw1stpal)
+static MACHINE_CONFIG_DERIVED( magicrd2, fw1stpal )
MDRV_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MDRV_CPU_PROGRAM_MAP(magicrd2_map)
@@ -2191,39 +2188,35 @@ static MACHINE_DRIVER_START( magicrd2 )
MDRV_SOUND_REPLACE("ay8910", AY8910, MASTER_CLOCK/8) /* 2MHz */
MDRV_SOUND_CONFIG(ay8910_intf)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.5) /* analyzed to avoid clips */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( royalcd1 )
- MDRV_IMPORT_FROM(fw1stpal)
+static MACHINE_CONFIG_DERIVED( royalcd1, fw1stpal )
MDRV_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* (G65SC02P in pro version) 2MHz */
MDRV_CPU_PROGRAM_MAP(magicrd2_map)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( royalcd2 )
- MDRV_IMPORT_FROM(fw2ndpal)
+static MACHINE_CONFIG_DERIVED( royalcd2, fw2ndpal )
MDRV_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MDRV_CPU_PROGRAM_MAP(magicrd2_map)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cuoreuno )
- MDRV_IMPORT_FROM(fw1stpal)
+static MACHINE_CONFIG_DERIVED( cuoreuno, fw1stpal )
MDRV_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MDRV_CPU_PROGRAM_MAP(cuoreuno_map)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( saloon )
- MDRV_IMPORT_FROM(fw1stpal)
+static MACHINE_CONFIG_DERIVED( saloon, fw1stpal )
MDRV_CPU_REPLACE("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz */
MDRV_CPU_PROGRAM_MAP(saloon_map)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/funybubl.c b/src/mame/drivers/funybubl.c
index eb862ae3e12..12c103bc042 100644
--- a/src/mame/drivers/funybubl.c
+++ b/src/mame/drivers/funybubl.c
@@ -217,10 +217,7 @@ static MACHINE_START( funybubl )
}
-static MACHINE_DRIVER_START( funybubl )
-
- /* driver data */
- MDRV_DRIVER_DATA(funybubl_state)
+static MACHINE_CONFIG_START( funybubl, funybubl_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6 MHz?? */
@@ -253,7 +250,7 @@ static MACHINE_DRIVER_START( funybubl )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/fuukifg2.c b/src/mame/drivers/fuukifg2.c
index c905df53de6..926d51df7ee 100644
--- a/src/mame/drivers/fuukifg2.c
+++ b/src/mame/drivers/fuukifg2.c
@@ -447,10 +447,7 @@ static MACHINE_RESET( fuuki16 )
}
-static MACHINE_DRIVER_START( fuuki16 )
-
- /* driver data */
- MDRV_DRIVER_DATA(fuuki16_state)
+static MACHINE_CONFIG_START( fuuki16, fuuki16_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -491,7 +488,7 @@ static MACHINE_DRIVER_START( fuuki16 )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.85)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.85)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/fuukifg3.c b/src/mame/drivers/fuukifg3.c
index 81d5bd88ed0..b504385b54b 100644
--- a/src/mame/drivers/fuukifg3.c
+++ b/src/mame/drivers/fuukifg3.c
@@ -547,10 +547,7 @@ static const ymf278b_interface fuuki32_ymf278b_interface =
irqhandler /* irq */
};
-static MACHINE_DRIVER_START( fuuki32 )
-
- /* driver data */
- MDRV_DRIVER_DATA(fuuki32_state)
+static MACHINE_CONFIG_START( fuuki32, fuuki32_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, CPU_CLOCK) /* 20MHz verified */
@@ -586,7 +583,7 @@ static MACHINE_DRIVER_START( fuuki32 )
MDRV_SOUND_CONFIG(fuuki32_ymf278b_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/gaelco.c b/src/mame/drivers/gaelco.c
index 85209dccf0e..fe060a5db2e 100644
--- a/src/mame/drivers/gaelco.c
+++ b/src/mame/drivers/gaelco.c
@@ -497,10 +497,7 @@ static MACHINE_START( gaelco )
state->audiocpu = machine->device("audiocpu");
}
-static MACHINE_DRIVER_START( bigkarnk )
-
- /* driver data */
- MDRV_DRIVER_DATA(gaelco_state)
+static MACHINE_CONFIG_START( bigkarnk, gaelco_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* MC68000P10, 10 MHz */
@@ -536,12 +533,9 @@ static MACHINE_DRIVER_START( bigkarnk )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( maniacsq )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(gaelco_state)
+static MACHINE_CONFIG_START( maniacsq, gaelco_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz */
@@ -569,12 +563,9 @@ static MACHINE_DRIVER_START( maniacsq )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( squash )
-
- /* driver data */
- MDRV_DRIVER_DATA(gaelco_state)
+static MACHINE_CONFIG_START( squash, gaelco_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* MC68000P12, 12 MHz */
@@ -604,12 +595,9 @@ static MACHINE_DRIVER_START( squash )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( thoop )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(gaelco_state)
+static MACHINE_CONFIG_START( thoop, gaelco_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* MC68000P12, 12 MHz */
@@ -639,7 +627,7 @@ static MACHINE_DRIVER_START( thoop )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/gaelco2.c b/src/mame/drivers/gaelco2.c
index 048ffaac473..4d3f23a4e05 100644
--- a/src/mame/drivers/gaelco2.c
+++ b/src/mame/drivers/gaelco2.c
@@ -155,7 +155,7 @@ static const gaelcosnd_interface maniacsq_snd_interface =
{ 0*0x0080000, 1*0x0080000, 0, 0 }, /* start of each ROM bank */
};
-static MACHINE_DRIVER_START( maniacsq )
+static MACHINE_CONFIG_START( maniacsq, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 26000000/2) /* 13 MHz? */
MDRV_CPU_PROGRAM_MAP(maniacsq_map)
@@ -185,7 +185,7 @@ static MACHINE_DRIVER_START( maniacsq )
MDRV_SOUND_CONFIG(maniacsq_snd_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( maniacsq )
@@ -287,7 +287,7 @@ static const eeprom_interface gaelco2_eeprom_interface =
// "*10010xxxxxx", /* erase all */
};
-static MACHINE_DRIVER_START( bang )
+static MACHINE_CONFIG_START( bang, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 30000000/2) /* 15 MHz */
MDRV_CPU_PROGRAM_MAP(bang_map)
@@ -319,7 +319,7 @@ static MACHINE_DRIVER_START( bang )
MDRV_SOUND_CONFIG(bang_snd_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -531,7 +531,7 @@ static const gaelcosnd_interface alighunt_snd_interface =
{ 0*0x0400000, 1*0x0400000, 2*0x0400000, 3*0x0400000 } /* start of each ROM bank */
};
-static MACHINE_DRIVER_START( alighunt )
+static MACHINE_CONFIG_START( alighunt, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 24000000/2) /* 12 MHz */
MDRV_CPU_PROGRAM_MAP(alighunt_map)
@@ -561,7 +561,7 @@ static MACHINE_DRIVER_START( alighunt )
MDRV_SOUND_CONFIG(alighunt_snd_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -774,7 +774,7 @@ static const gaelcosnd_interface touchgo_snd_interface =
{ 0*0x0400000, 1*0x0400000, 0, 0 } /* start of each ROM bank */
};
-static MACHINE_DRIVER_START( touchgo )
+static MACHINE_CONFIG_START( touchgo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 32000000/2) /* 16 MHz */
MDRV_CPU_PROGRAM_MAP(touchgo_map)
@@ -812,7 +812,7 @@ static MACHINE_DRIVER_START( touchgo )
MDRV_SOUND_CONFIG(touchgo_snd_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
PCB Layout:
@@ -967,7 +967,7 @@ static const gaelcosnd_interface snowboar_snd_interface =
{ 0*0x0400000, 1*0x0400000, 0, 0 } /* start of each ROM bank */
};
-static MACHINE_DRIVER_START( snowboar )
+static MACHINE_CONFIG_START( snowboar, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 30000000/2) /* 15 MHz */
MDRV_CPU_PROGRAM_MAP(snowboar_map)
@@ -999,7 +999,7 @@ static MACHINE_DRIVER_START( snowboar )
MDRV_SOUND_CONFIG(snowboar_snd_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -1209,7 +1209,7 @@ static const gaelcosnd_interface wrally2_snd_interface =
{ 0*0x0200000, 1*0x0200000, 0, 0 } /* start of each ROM bank */
};
-static MACHINE_DRIVER_START( wrally2 )
+static MACHINE_CONFIG_START( wrally2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 26000000/2) /* 13 MHz */
MDRV_CPU_PROGRAM_MAP(wrally2_map)
@@ -1250,7 +1250,7 @@ static MACHINE_DRIVER_START( wrally2 )
MDRV_SOUND_CONFIG(wrally2_snd_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
PCB Layout:
diff --git a/src/mame/drivers/gaelco3d.c b/src/mame/drivers/gaelco3d.c
index 1e21106dd9d..eefe9dae984 100644
--- a/src/mame/drivers/gaelco3d.c
+++ b/src/mame/drivers/gaelco3d.c
@@ -953,7 +953,7 @@ static const tms32031_config tms_config =
};
-static MACHINE_DRIVER_START( gaelco3d )
+static MACHINE_CONFIG_START( gaelco3d, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 15000000)
@@ -1006,11 +1006,10 @@ static MACHINE_DRIVER_START( gaelco3d )
MDRV_SOUND_ADD("dac4", DMADAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) /* speedup: seat speaker */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gaelco3d2 )
- MDRV_IMPORT_FROM(gaelco3d)
+static MACHINE_CONFIG_DERIVED( gaelco3d2, gaelco3d )
/* basic machine hardware */
MDRV_CPU_REPLACE("maincpu", M68EC020, 25000000)
@@ -1021,7 +1020,7 @@ static MACHINE_DRIVER_START( gaelco3d2 )
MDRV_CPU_CLOCK(50000000)
MDRV_MACHINE_RESET(gaelco3d2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gaiden.c b/src/mame/drivers/gaiden.c
index 2a7b07ce0c3..7f7033c96c5 100644
--- a/src/mame/drivers/gaiden.c
+++ b/src/mame/drivers/gaiden.c
@@ -764,10 +764,7 @@ static const ym2203_interface ym2203_config =
irqhandler
};
-static MACHINE_DRIVER_START( shadoww )
-
- /* driver data */
- MDRV_DRIVER_DATA(gaiden_state)
+static MACHINE_CONFIG_START( shadoww, gaiden_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 18432000/2) /* 9.216 MHz */
@@ -813,10 +810,9 @@ static MACHINE_DRIVER_START( shadoww )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( raiga )
- MDRV_IMPORT_FROM(shadoww)
+static MACHINE_CONFIG_DERIVED( raiga, shadoww )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
@@ -824,12 +820,9 @@ static MACHINE_DRIVER_START( raiga )
MDRV_VIDEO_START(raiga)
MDRV_VIDEO_UPDATE(raiga)
MDRV_GFXDECODE(raiga)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( drgnbowl )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(gaiden_state)
+static MACHINE_CONFIG_START( drgnbowl, gaiden_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 20000000/2) /* 10 MHz */
@@ -865,7 +858,7 @@ static MACHINE_DRIVER_START( drgnbowl )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
Master Ninja
@@ -946,10 +939,7 @@ static ADDRESS_MAP_START( mastninj_map, ADDRESS_SPACE_PROGRAM, 16 )
// AM_RANGE(0x07a808, 0x07a809) AM_WRITE(gaiden_flip_w)
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( mastninj )
-
- /* driver data */
- MDRV_DRIVER_DATA(gaiden_state)
+static MACHINE_CONFIG_START( mastninj, gaiden_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz? */
@@ -996,7 +986,7 @@ static MACHINE_DRIVER_START( mastninj )
/* no OKI on the bootleg */
// MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/gal3.c b/src/mame/drivers/gal3.c
index 1198878f2d8..04147a6d7a6 100644
--- a/src/mame/drivers/gal3.c
+++ b/src/mame/drivers/gal3.c
@@ -630,7 +630,7 @@ static const c140_interface C140_interface_typeB =
C140_TYPE_SYSTEM21_B
};
-static MACHINE_DRIVER_START( gal3 )
+static MACHINE_CONFIG_START( gal3, driver_data_t )
MDRV_CPU_ADD("cpumst", M68020, 49152000/2)
MDRV_CPU_PROGRAM_MAP(cpu_mst_map)
MDRV_CPU_VBLANK_INT("lscreen", irq1_line_hold)
@@ -690,7 +690,7 @@ static MACHINE_DRIVER_START( gal3 )
MDRV_SOUND_CONFIG(C140_interface_typeA)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/galaga.c b/src/mame/drivers/galaga.c
index b4b55eb119c..654c2bb9ed8 100644
--- a/src/mame/drivers/galaga.c
+++ b/src/mame/drivers/galaga.c
@@ -1581,9 +1581,7 @@ static const samples_interface battles_samples_interface =
-static MACHINE_DRIVER_START( bosco )
-
- MDRV_DRIVER_DATA(_galaga_state)
+static MACHINE_CONFIG_START( bosco, _galaga_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6) /* 3.072 MHz */
@@ -1636,12 +1634,10 @@ static MACHINE_DRIVER_START( bosco )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(bosco)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( galaga )
- MDRV_DRIVER_DATA(_galaga_state)
+static MACHINE_CONFIG_START( galaga, _galaga_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6) /* 3.072 MHz */
@@ -1690,12 +1686,11 @@ static MACHINE_DRIVER_START( galaga )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(galaga)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( galagab )
+static MACHINE_CONFIG_DERIVED( galagab, galaga )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaga)
MDRV_DEVICE_REMOVE("54xx")
MDRV_DEVICE_REMOVE("06xx")
@@ -1708,12 +1703,10 @@ static MACHINE_DRIVER_START( galagab )
/* sound hardware */
MDRV_DEVICE_REMOVE("discrete")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( xevious )
-
- MDRV_DRIVER_DATA(_galaga_state)
+static MACHINE_CONFIG_START( xevious, _galaga_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6) /* 3.072 MHz */
@@ -1762,12 +1755,11 @@ static MACHINE_DRIVER_START( xevious )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(galaga)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( battles )
+static MACHINE_CONFIG_DERIVED( battles, xevious )
/* basic machine hardware */
- MDRV_IMPORT_FROM( xevious )
MDRV_DEVICE_REMOVE("50xx")
MDRV_DEVICE_REMOVE("54xx")
@@ -1793,12 +1785,10 @@ static MACHINE_DRIVER_START( battles )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(battles_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( digdug )
- MDRV_DRIVER_DATA(_galaga_state)
+static MACHINE_CONFIG_START( digdug, _galaga_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6) /* 3.072 MHz */
@@ -1842,16 +1832,15 @@ static MACHINE_DRIVER_START( digdug )
MDRV_SOUND_ADD("namco", NAMCO, MASTER_CLOCK/6/32)
MDRV_SOUND_CONFIG(namco_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90 * 10.0 / 16.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dzigzag )
+static MACHINE_CONFIG_DERIVED( dzigzag, digdug )
/* basic machine hardware */
- MDRV_IMPORT_FROM(digdug)
MDRV_CPU_ADD("sub3", Z80, MASTER_CLOCK/6) /* 3.072 MHz */
MDRV_CPU_PROGRAM_MAP(dzigzag_mem4)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/galastrm.c b/src/mame/drivers/galastrm.c
index 3cb0f031331..80a514289d2 100644
--- a/src/mame/drivers/galastrm.c
+++ b/src/mame/drivers/galastrm.c
@@ -316,7 +316,7 @@ static const tc0480scp_interface galastrm_tc0480scp_intf =
0 /* col_base */
};
-static MACHINE_DRIVER_START( galastrm )
+static MACHINE_CONFIG_START( galastrm, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz */
MDRV_CPU_PROGRAM_MAP(galastrm_map)
@@ -342,8 +342,8 @@ static MACHINE_DRIVER_START( galastrm )
MDRV_TC0480SCP_ADD("tc0480scp", galastrm_tc0480scp_intf)
/* sound hardware */
- MDRV_IMPORT_FROM(taito_f3_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(taito_f3_sound)
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/galaxi.c b/src/mame/drivers/galaxi.c
index 700c4a7e94d..c97004a795e 100644
--- a/src/mame/drivers/galaxi.c
+++ b/src/mame/drivers/galaxi.c
@@ -392,10 +392,7 @@ static MACHINE_RESET( galaxi )
state->out[2] = 0;
}
-static MACHINE_DRIVER_START( galaxi )
-
- /* driver data */
- MDRV_DRIVER_DATA(galaxi_state)
+static MACHINE_CONFIG_START( galaxi, galaxi_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz) // ?
@@ -425,19 +422,19 @@ static MACHINE_DRIVER_START( galaxi )
MDRV_OKIM6295_ADD("oki", XTAL_16MHz/16, OKIM6295_PIN7_LOW) // ?
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( magjoker, galaxi )
-static MACHINE_DRIVER_START( magjoker )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxi)
/* sound hardware */
MDRV_SOUND_MODIFY("oki")
/* ADPCM samples are recorded with extremely low volume */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 4.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/galaxia.c b/src/mame/drivers/galaxia.c
index 03a896ffdd0..5f18ef8445d 100644
--- a/src/mame/drivers/galaxia.c
+++ b/src/mame/drivers/galaxia.c
@@ -256,7 +256,7 @@ static const s2636_interface s2636_2_config =
"s2636snd_2"
};
-static MACHINE_DRIVER_START( galaxia )
+static MACHINE_CONFIG_START( galaxia, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650,2000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(mem_map)
@@ -290,15 +290,14 @@ static MACHINE_DRIVER_START( galaxia )
MDRV_SOUND_ADD("s2636snd_2", S2636, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( astrowar )
- MDRV_IMPORT_FROM( galaxia )
+static MACHINE_CONFIG_DERIVED( astrowar, galaxia )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(astrowar_mem)
MDRV_CPU_IO_MAP(astrowar_io)
MDRV_GFXDECODE(astrowar)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( galaxia )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/galaxian.c b/src/mame/drivers/galaxian.c
index 5c5b7a10b35..6a99bab9f50 100644
--- a/src/mame/drivers/galaxian.c
+++ b/src/mame/drivers/galaxian.c
@@ -1956,7 +1956,7 @@ DISCRETE_SOUND_END
*
*************************************/
-static MACHINE_DRIVER_START( galaxian_base )
+static MACHINE_CONFIG_START( galaxian_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, GALAXIAN_PIXEL_CLOCK/3/2)
@@ -1982,19 +1982,18 @@ static MACHINE_DRIVER_START( galaxian_base )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( konami_base )
- MDRV_IMPORT_FROM( galaxian_base )
+static MACHINE_CONFIG_DERIVED( konami_base, galaxian_base )
MDRV_PPI8255_ADD( "ppi8255_0", konami_ppi8255_0_intf )
MDRV_PPI8255_ADD( "ppi8255_1", konami_ppi8255_1_intf )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( konami_sound_1x_ay8910 )
+static MACHINE_CONFIG_FRAGMENT( konami_sound_1x_ay8910 )
/* 2nd CPU to drive sound */
MDRV_CPU_ADD("audiocpu", Z80, KONAMI_SOUND_CLOCK/8)
@@ -2011,10 +2010,10 @@ static MACHINE_DRIVER_START( konami_sound_1x_ay8910 )
MDRV_SOUND_ADD("konami", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(konami_sound)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( konami_sound_2x_ay8910 )
+static MACHINE_CONFIG_FRAGMENT( konami_sound_2x_ay8910 )
/* 2nd CPU to drive sound */
MDRV_CPU_ADD("audiocpu", Z80, KONAMI_SOUND_CLOCK/8)
@@ -2037,7 +2036,7 @@ static MACHINE_DRIVER_START( konami_sound_2x_ay8910 )
MDRV_SOUND_ADD("konami", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(konami_sound)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2047,21 +2046,18 @@ MACHINE_DRIVER_END
*
*************************************/
-static MACHINE_DRIVER_START( galaxian )
- MDRV_IMPORT_FROM(galaxian_base)
- MDRV_IMPORT_FROM(galaxian_audio)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( galaxian, galaxian_base )
+ MDRV_FRAGMENT_ADD(galaxian_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pacmanbl )
- MDRV_IMPORT_FROM(galaxian)
+static MACHINE_CONFIG_DERIVED( pacmanbl, galaxian )
/* separate tile/sprite ROMs */
MDRV_GFXDECODE(pacmanbl)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tenspot )
- MDRV_IMPORT_FROM(galaxian)
+static MACHINE_CONFIG_DERIVED( tenspot, galaxian )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", fakechange_interrupt_gen)
@@ -2073,10 +2069,9 @@ static MACHINE_DRIVER_START( tenspot )
/* separate tile/sprite ROMs */
MDRV_GFXDECODE(tenspot)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( zigzag )
- MDRV_IMPORT_FROM(galaxian_base)
+static MACHINE_CONFIG_DERIVED( zigzag, galaxian_base )
/* separate tile/sprite ROMs */
MDRV_GFXDECODE(pacmanbl)
@@ -2089,32 +2084,28 @@ static MACHINE_DRIVER_START( zigzag )
MDRV_SOUND_ADD("aysnd", AY8910, 1789750)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gmgalax )
- MDRV_IMPORT_FROM(galaxian)
+static MACHINE_CONFIG_DERIVED( gmgalax, galaxian )
/* banked video hardware */
MDRV_GFXDECODE(gmgalax)
MDRV_PALETTE_LENGTH(64)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mooncrst )
-
- MDRV_IMPORT_FROM(galaxian_base)
+static MACHINE_CONFIG_DERIVED( mooncrst, galaxian_base )
/* alternate memory map */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mooncrst_map)
- MDRV_IMPORT_FROM(mooncrst_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(mooncrst_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jumpbug )
- MDRV_IMPORT_FROM(galaxian_base)
+static MACHINE_CONFIG_DERIVED( jumpbug, galaxian_base )
MDRV_WATCHDOG_VBLANK_INIT(0)
@@ -2125,11 +2116,10 @@ static MACHINE_DRIVER_START( jumpbug )
/* sound hardware */
MDRV_SOUND_ADD("aysnd", AY8910, 1789750)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( checkman )
- MDRV_IMPORT_FROM(mooncrst)
+static MACHINE_CONFIG_DERIVED( checkman, mooncrst )
/* basic machine hardware */
MDRV_CPU_ADD("audiocpu", Z80, 1620000) /* 1.62 MHz */
@@ -2140,11 +2130,10 @@ static MACHINE_DRIVER_START( checkman )
/* sound hardware */
MDRV_SOUND_ADD("aysnd", AY8910, 1789750)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( checkmaj )
- MDRV_IMPORT_FROM(galaxian_base)
+static MACHINE_CONFIG_DERIVED( checkmaj, galaxian_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -2160,11 +2149,10 @@ static MACHINE_DRIVER_START( checkmaj )
MDRV_SOUND_ADD("aysnd", AY8910, 1620000)
MDRV_SOUND_CONFIG(checkmaj_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mshuttle )
- MDRV_IMPORT_FROM(galaxian_base)
+static MACHINE_CONFIG_DERIVED( mshuttle, galaxian_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -2179,11 +2167,10 @@ static MACHINE_DRIVER_START( mshuttle )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(cclimber_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kingball )
- MDRV_IMPORT_FROM(mooncrst)
+static MACHINE_CONFIG_DERIVED( kingball, mooncrst )
/* basic machine hardware */
MDRV_CPU_ADD("audiocpu", Z80,5000000/2)
@@ -2193,62 +2180,56 @@ static MACHINE_DRIVER_START( kingball )
/* sound hardware */
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( frogger )
- MDRV_IMPORT_FROM(konami_base)
- MDRV_IMPORT_FROM(konami_sound_1x_ay8910)
+static MACHINE_CONFIG_DERIVED( frogger, konami_base )
+ MDRV_FRAGMENT_ADD(konami_sound_1x_ay8910)
/* alternate memory map */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(frogger_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( froggrmc )
- MDRV_IMPORT_FROM(galaxian_base)
- MDRV_IMPORT_FROM(konami_sound_1x_ay8910)
+static MACHINE_CONFIG_DERIVED( froggrmc, galaxian_base )
+ MDRV_FRAGMENT_ADD(konami_sound_1x_ay8910)
/* alternate memory map */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mooncrst_map_base) /* no discrete sound ! */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( froggers )
- MDRV_IMPORT_FROM(konami_base)
- MDRV_IMPORT_FROM(konami_sound_1x_ay8910)
+static MACHINE_CONFIG_DERIVED( froggers, konami_base )
+ MDRV_FRAGMENT_ADD(konami_sound_1x_ay8910)
/* alternate memory map */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(theend_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( frogf )
- MDRV_IMPORT_FROM(konami_base)
- MDRV_IMPORT_FROM(konami_sound_1x_ay8910)
+static MACHINE_CONFIG_DERIVED( frogf, konami_base )
+ MDRV_FRAGMENT_ADD(konami_sound_1x_ay8910)
/* alternate memory map */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(frogf_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( turtles )
- MDRV_IMPORT_FROM(konami_base)
- MDRV_IMPORT_FROM(konami_sound_2x_ay8910)
+static MACHINE_CONFIG_DERIVED( turtles, konami_base )
+ MDRV_FRAGMENT_ADD(konami_sound_2x_ay8910)
/* alternate memory map */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(turtles_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( theend )
- MDRV_IMPORT_FROM(galaxian_base)
- MDRV_IMPORT_FROM(konami_sound_2x_ay8910)
+static MACHINE_CONFIG_DERIVED( theend, galaxian_base )
+ MDRV_FRAGMENT_ADD(konami_sound_2x_ay8910)
/* alternate memory map */
MDRV_CPU_MODIFY("maincpu")
@@ -2256,12 +2237,11 @@ static MACHINE_DRIVER_START( theend )
MDRV_PPI8255_ADD( "ppi8255_0", theend_ppi8255_0_intf )
MDRV_PPI8255_ADD( "ppi8255_1", konami_ppi8255_1_intf )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( scramble )
- MDRV_IMPORT_FROM(galaxian_base)
- MDRV_IMPORT_FROM(konami_sound_2x_ay8910)
+static MACHINE_CONFIG_DERIVED( scramble, galaxian_base )
+ MDRV_FRAGMENT_ADD(konami_sound_2x_ay8910)
/* alternate memory map */
MDRV_CPU_MODIFY("maincpu")
@@ -2269,11 +2249,10 @@ static MACHINE_DRIVER_START( scramble )
MDRV_PPI8255_ADD( "ppi8255_0", konami_ppi8255_0_intf )
MDRV_PPI8255_ADD( "ppi8255_1", scramble_ppi8255_1_intf )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( explorer )
- MDRV_IMPORT_FROM(konami_base)
+static MACHINE_CONFIG_DERIVED( explorer, konami_base )
/* alternate memory map */
MDRV_CPU_MODIFY("maincpu")
@@ -2292,11 +2271,10 @@ static MACHINE_DRIVER_START( explorer )
MDRV_SOUND_ADD("8910.1", AY8910, KONAMI_SOUND_CLOCK/8)
MDRV_SOUND_CONFIG(explorer_ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( scorpion )
- MDRV_IMPORT_FROM(theend)
+static MACHINE_CONFIG_DERIVED( scorpion, theend )
MDRV_PPI8255_RECONFIG( "ppi8255_0", konami_ppi8255_0_intf )
MDRV_PPI8255_RECONFIG( "ppi8255_1", scorpion_ppi8255_1_intf )
@@ -2308,12 +2286,11 @@ static MACHINE_DRIVER_START( scorpion )
MDRV_SOUND_ADD("digitalker", DIGITALKER, 4000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.16)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sfx )
- MDRV_IMPORT_FROM(galaxian_base)
- MDRV_IMPORT_FROM(konami_sound_2x_ay8910)
+static MACHINE_CONFIG_DERIVED( sfx, galaxian_base )
+ MDRV_FRAGMENT_ADD(konami_sound_2x_ay8910)
MDRV_WATCHDOG_VBLANK_INIT(0)
@@ -2337,39 +2314,34 @@ static MACHINE_DRIVER_START( sfx )
/* DAC for the sample player */
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( scobra )
- MDRV_IMPORT_FROM(konami_base)
- MDRV_IMPORT_FROM(konami_sound_2x_ay8910)
+static MACHINE_CONFIG_DERIVED( scobra, konami_base )
+ MDRV_FRAGMENT_ADD(konami_sound_2x_ay8910)
/* alternate memory map */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(scobra_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( anteater )
- MDRV_IMPORT_FROM(scobra)
+static MACHINE_CONFIG_DERIVED( anteater, scobra )
/* quiet down the sounds */
MDRV_SOUND_MODIFY("konami")
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.1)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( moonwar )
+MACHINE_CONFIG_END
- /* basic machine hardware */
+static MACHINE_CONFIG_DERIVED( moonwar, scobra )
/* same as regular type 1, the only difference is that the bullets are less yellow */
- MDRV_IMPORT_FROM(scobra)
/* device config overrides */
MDRV_PPI8255_RECONFIG( "ppi8255_0", moonwar_ppi8255_0_intf )
MDRV_PPI8255_RECONFIG( "ppi8255_1", konami_ppi8255_1_intf )
MDRV_PALETTE_INIT(moonwar)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/galaxold.c b/src/mame/drivers/galaxold.c
index 9432850d207..3e4ec32e2be 100644
--- a/src/mame/drivers/galaxold.c
+++ b/src/mame/drivers/galaxold.c
@@ -2118,7 +2118,7 @@ static const ay8910_interface bongo_ay8910_interface =
};
-static MACHINE_DRIVER_START( galaxold_base )
+static MACHINE_CONFIG_START( galaxold_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, PIXEL_CLOCK/2) /* 3.072 MHz */
@@ -2145,45 +2145,41 @@ static MACHINE_DRIVER_START( galaxold_base )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( galaxian )
+static MACHINE_CONFIG_DERIVED( galaxian, galaxold_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxold_base)
/* sound hardware */
- MDRV_IMPORT_FROM(galaxian_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(galaxian_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( batman2 )
+static MACHINE_CONFIG_DERIVED( batman2, galaxian )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxian)
/* video hardware */
MDRV_VIDEO_START(batman2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mooncrst )
+static MACHINE_CONFIG_DERIVED( mooncrst, galaxian )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxian)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mooncrst_map)
/* video hardware */
MDRV_VIDEO_START(mooncrst)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( scramblb )
+static MACHINE_CONFIG_DERIVED( scramblb, galaxian )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxian)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(scramblb_map)
@@ -2192,12 +2188,11 @@ static MACHINE_DRIVER_START( scramblb )
MDRV_PALETTE_INIT(scrambold)
MDRV_VIDEO_START(scrambold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( scramb2 )
+static MACHINE_CONFIG_DERIVED( scramb2, galaxian )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxian)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(scramb2_map)
@@ -2206,14 +2201,13 @@ static MACHINE_DRIVER_START( scramb2 )
MDRV_PALETTE_INIT(scrambold)
MDRV_VIDEO_START(scrambold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( 4in1 )
+static MACHINE_CONFIG_DERIVED( 4in1, galaxian )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxian)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(_4in1_map)
@@ -2221,13 +2215,12 @@ static MACHINE_DRIVER_START( 4in1 )
MDRV_GFXDECODE(_4in1)
MDRV_VIDEO_START(pisces)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bagmanmc )
+static MACHINE_CONFIG_DERIVED( bagmanmc, galaxian )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxian)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(bagmanmc_map)
@@ -2237,23 +2230,22 @@ static MACHINE_DRIVER_START( bagmanmc )
MDRV_GFXDECODE(bagmanmc)
MDRV_VIDEO_START(pisces)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dkongjrm )
+static MACHINE_CONFIG_DERIVED( dkongjrm, galaxian )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxian)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dkongjrm_map)
/* video hardware */
MDRV_VIDEO_START(dkongjrm)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( rockclim, galaxian )
-static MACHINE_DRIVER_START( rockclim )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxian)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(rockclim_map)
MDRV_GFXDECODE(rockclim)
@@ -2265,11 +2257,11 @@ static MACHINE_DRIVER_START( rockclim )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_SIZE(64*8, 32*8)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( ozon1, galaxold_base )
-static MACHINE_DRIVER_START( ozon1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxold_base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ozon1_map)
MDRV_CPU_IO_MAP(ozon1_io_map)
@@ -2283,9 +2275,9 @@ static MACHINE_DRIVER_START( ozon1 )
MDRV_VIDEO_START(galaxold_plain)
MDRV_SOUND_ADD("aysnd", AY8910, PIXEL_CLOCK/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( drivfrcg )
+static MACHINE_CONFIG_START( drivfrcg, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, MASTER_CLOCK/6)
@@ -2312,12 +2304,12 @@ static MACHINE_DRIVER_START( drivfrcg )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(galaxian_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(galaxian_audio)
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( bongo, galaxold_base )
-static MACHINE_DRIVER_START( bongo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxold_base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(bongo)
MDRV_CPU_IO_MAP(bongo_io)
@@ -2328,12 +2320,11 @@ static MACHINE_DRIVER_START( bongo )
MDRV_SOUND_ADD("aysnd", AY8910, PIXEL_CLOCK/4)
MDRV_SOUND_CONFIG(bongo_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hunchbkg )
+static MACHINE_CONFIG_DERIVED( hunchbkg, galaxold_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxold_base)
MDRV_CPU_REPLACE("maincpu", S2650, PIXEL_CLOCK / 4)
MDRV_CPU_PROGRAM_MAP(hunchbkg)
@@ -2341,12 +2332,12 @@ static MACHINE_DRIVER_START( hunchbkg )
MDRV_MACHINE_RESET(hunchbkg)
- MDRV_IMPORT_FROM(galaxian_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(galaxian_audio)
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( harem, galaxold_base )
-static MACHINE_DRIVER_START( harem )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxold_base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(harem_cpu1)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
@@ -2370,16 +2361,16 @@ static MACHINE_DRIVER_START( harem )
MDRV_SOUND_ADD("ay3", AY8910, 2000000) //?
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33/3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( tazzmang, galaxian )
-static MACHINE_DRIVER_START( tazzmang )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxian)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tazzmang)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( racknrol )
+static MACHINE_CONFIG_START( racknrol, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, PIXEL_CLOCK/2)
@@ -2408,12 +2399,11 @@ static MACHINE_DRIVER_START( racknrol )
MDRV_SOUND_ADD("sn3", SN76496, PIXEL_CLOCK/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ckongg )
+static MACHINE_CONFIG_DERIVED( ckongg, galaxian )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxian)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ckongg_map)
@@ -2421,12 +2411,11 @@ static MACHINE_DRIVER_START( ckongg )
MDRV_VIDEO_START(ckongs)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ckongmc )
+static MACHINE_CONFIG_DERIVED( ckongmc, galaxian )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galaxian)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ckongmc_map)
@@ -2434,10 +2423,10 @@ static MACHINE_DRIVER_START( ckongmc )
MDRV_VIDEO_START(ckongs)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hexpoola )
+static MACHINE_CONFIG_START( hexpoola, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, PIXEL_CLOCK/2)
@@ -2460,7 +2449,7 @@ static MACHINE_DRIVER_START( hexpoola )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("snsnd", SN76496, PIXEL_CLOCK/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/galivan.c b/src/mame/drivers/galivan.c
index 10f3ab6257a..7098f61498b 100644
--- a/src/mame/drivers/galivan.c
+++ b/src/mame/drivers/galivan.c
@@ -453,10 +453,7 @@ static MACHINE_RESET( ninjemak )
state->ninjemak_dispdisable = 0;
}
-static MACHINE_DRIVER_START( galivan )
-
- /* driver data */
- MDRV_DRIVER_DATA(galivan_state)
+static MACHINE_CONFIG_START( galivan, galivan_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6 MHz? */
@@ -498,12 +495,9 @@ static MACHINE_DRIVER_START( galivan )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( ninjemak )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(galivan_state)
+static MACHINE_CONFIG_START( ninjemak, galivan_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6 MHz? */
@@ -544,7 +538,7 @@ static MACHINE_DRIVER_START( ninjemak )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/galpani2.c b/src/mame/drivers/galpani2.c
index 0bd9a1d5915..827cca529e0 100644
--- a/src/mame/drivers/galpani2.c
+++ b/src/mame/drivers/galpani2.c
@@ -574,7 +574,7 @@ static INTERRUPT_GEN( galpani2_interrupt2 )
}
}
-static MACHINE_DRIVER_START( galpani2 )
+static MACHINE_CONFIG_START( galpani2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -612,7 +612,7 @@ static MACHINE_DRIVER_START( galpani2 )
MDRV_OKIM6295_ADD("oki2", XTAL_16MHz/8, OKIM6295_PIN7_LOW) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/galpani3.c b/src/mame/drivers/galpani3.c
index 97f06c97958..056a2c8379b 100644
--- a/src/mame/drivers/galpani3.c
+++ b/src/mame/drivers/galpani3.c
@@ -898,7 +898,7 @@ static const ymz280b_interface ymz280b_intf =
0 // irq ?
};
-static MACHINE_DRIVER_START( galpani3 )
+static MACHINE_CONFIG_START( galpani3, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 16000000) // ? (from which clock?)
MDRV_CPU_PROGRAM_MAP(galpani3_map)
MDRV_CPU_VBLANK_INT_HACK(galpani3_vblank, 3)
@@ -924,7 +924,7 @@ static MACHINE_DRIVER_START( galpani3 )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "mono", 1.0)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( galpani3 )
diff --git a/src/mame/drivers/galpanic.c b/src/mame/drivers/galpanic.c
index 6afdb3e88b2..3b3fa875582 100644
--- a/src/mame/drivers/galpanic.c
+++ b/src/mame/drivers/galpanic.c
@@ -881,7 +881,7 @@ static const kaneko_pandora_interface galpanic_pandora_config =
};
-static MACHINE_DRIVER_START( galpanic )
+static MACHINE_CONFIG_START( galpanic, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz) /* verified on pcb */
@@ -911,22 +911,20 @@ static MACHINE_DRIVER_START( galpanic )
MDRV_OKIM6295_ADD("oki", XTAL_12MHz/6, OKIM6295_PIN7_LOW) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( galpanica )
+static MACHINE_CONFIG_DERIVED( galpanica, galpanic )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galpanic)
/* arm watchdog */
MDRV_WATCHDOG_TIME_INIT(SEC(3)) /* a guess, and certainly wrong */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( comad )
+static MACHINE_CONFIG_DERIVED( comad, galpanic )
/* basic machine hardware */
- MDRV_IMPORT_FROM(galpanic)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(10000000)
MDRV_CPU_PROGRAM_MAP(comad_map)
@@ -936,12 +934,11 @@ static MACHINE_DRIVER_START( comad )
/* video hardware */
MDRV_VIDEO_UPDATE(comad)
MDRV_VIDEO_EOF(0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( supmodel )
+static MACHINE_CONFIG_DERIVED( supmodel, comad )
/* basic machine hardware */
- MDRV_IMPORT_FROM(comad)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(12000000) /* ? */
MDRV_CPU_PROGRAM_MAP(supmodel_map)
@@ -954,13 +951,12 @@ static MACHINE_DRIVER_START( supmodel )
/* sound hardware */
MDRV_OKIM6295_REPLACE("oki", 1584000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fantsia2 )
+static MACHINE_CONFIG_DERIVED( fantsia2, comad )
/* basic machine hardware */
- MDRV_IMPORT_FROM(comad)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(12000000) /* ? */
MDRV_CPU_PROGRAM_MAP(fantsia2_map)
@@ -968,12 +964,11 @@ static MACHINE_DRIVER_START( fantsia2 )
/* video hardware */
MDRV_VIDEO_UPDATE(comad)
MDRV_VIDEO_EOF(0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( galhustl )
+static MACHINE_CONFIG_DERIVED( galhustl, comad )
/* basic machine hardware */
- MDRV_IMPORT_FROM(comad)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(12000000) /* ? */
MDRV_CPU_PROGRAM_MAP(galhustl_map)
@@ -986,12 +981,11 @@ static MACHINE_DRIVER_START( galhustl )
/* sound hardware */
MDRV_OKIM6295_REPLACE("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( zipzap )
+static MACHINE_CONFIG_DERIVED( zipzap, comad )
/* basic machine hardware */
- MDRV_IMPORT_FROM(comad)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(12000000) /* ? */
MDRV_CPU_PROGRAM_MAP(zipzap_map)
@@ -1003,7 +997,7 @@ static MACHINE_DRIVER_START( zipzap )
/* sound hardware */
MDRV_OKIM6295_REPLACE("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/galspnbl.c b/src/mame/drivers/galspnbl.c
index b0bf8c5ced7..558030872a2 100644
--- a/src/mame/drivers/galspnbl.c
+++ b/src/mame/drivers/galspnbl.c
@@ -207,10 +207,7 @@ static MACHINE_START( galspnbl )
state->audiocpu = machine->device("audiocpu");
}
-static MACHINE_DRIVER_START( galspnbl )
-
- /* driver data */
- MDRV_DRIVER_DATA(galspnbl_state)
+static MACHINE_CONFIG_START( galspnbl, galspnbl_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ??? */
@@ -246,7 +243,7 @@ static MACHINE_DRIVER_START( galspnbl )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gamecstl.c b/src/mame/drivers/gamecstl.c
index b2ed61d5009..fb3e79f0718 100644
--- a/src/mame/drivers/gamecstl.c
+++ b/src/mame/drivers/gamecstl.c
@@ -656,7 +656,7 @@ static const struct pit8253_config gamecstl_pit8254_config =
}
};
-static MACHINE_DRIVER_START(gamecstl)
+static MACHINE_CONFIG_START( gamecstl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PENTIUM, 200000000)
@@ -698,7 +698,7 @@ static MACHINE_DRIVER_START(gamecstl)
MDRV_VIDEO_START(gamecstl)
MDRV_VIDEO_UPDATE(gamecstl)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static void set_gate_a20(running_machine *machine, int a20)
{
diff --git a/src/mame/drivers/gameplan.c b/src/mame/drivers/gameplan.c
index 021faf1a0c9..4abba351b2b 100644
--- a/src/mame/drivers/gameplan.c
+++ b/src/mame/drivers/gameplan.c
@@ -1010,9 +1010,7 @@ static MACHINE_RESET( gameplan )
state->video_data = 0;
}
-static MACHINE_DRIVER_START( gameplan )
-
- MDRV_DRIVER_DATA(gameplan_state)
+static MACHINE_CONFIG_START( gameplan, gameplan_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, GAMEPLAN_MAIN_CPU_CLOCK)
@@ -1027,7 +1025,7 @@ static MACHINE_DRIVER_START( gameplan )
MDRV_MACHINE_RESET(gameplan)
/* video hardware */
- MDRV_IMPORT_FROM(gameplan_video)
+ MDRV_FRAGMENT_ADD(gameplan_video)
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -1040,12 +1038,10 @@ static MACHINE_DRIVER_START( gameplan )
MDRV_VIA6522_ADD("via6522_0", 0, gameplan_via_0_interface)
MDRV_VIA6522_ADD("via6522_1", 0, via_1_interface)
MDRV_VIA6522_ADD("via6522_2", 0, via_2_interface)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( leprechn )
- MDRV_IMPORT_FROM(gameplan)
+static MACHINE_CONFIG_DERIVED( leprechn, gameplan )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(LEPRECHAUN_MAIN_CPU_CLOCK)
@@ -1054,12 +1050,12 @@ static MACHINE_DRIVER_START( leprechn )
MDRV_CPU_PROGRAM_MAP(leprechn_audio_map)
/* video hardware */
- MDRV_IMPORT_FROM(leprechn_video)
+ MDRV_FRAGMENT_ADD(leprechn_video)
/* via */
MDRV_DEVICE_REMOVE("via6522_0")
MDRV_VIA6522_ADD("via6522_0", 0, leprechn_via_0_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gaplus.c b/src/mame/drivers/gaplus.c
index c92d3170c59..702a5f34fe9 100644
--- a/src/mame/drivers/gaplus.c
+++ b/src/mame/drivers/gaplus.c
@@ -522,7 +522,7 @@ static const namcoio_interface intf1 =
/* TODO: chip #2: test/cocktail, optional buttons */
-static MACHINE_DRIVER_START( gaplus )
+static MACHINE_CONFIG_START( gaplus, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 24576000/16) /* 1.536 MHz */
@@ -569,12 +569,11 @@ static MACHINE_DRIVER_START( gaplus )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(gaplus_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gaplusa )
+static MACHINE_CONFIG_DERIVED( gaplusa, gaplus )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gaplus)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gaplusa_cpu1_map)
@@ -582,18 +581,17 @@ static MACHINE_DRIVER_START( gaplusa )
MDRV_DEVICE_REMOVE("58xx")
MDRV_NAMCO56XX_ADD("56xx", intf1)
MDRV_NAMCO58XX_ADD("58xx", intf0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gapluso )
+static MACHINE_CONFIG_DERIVED( gapluso, gaplus )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gaplus)
MDRV_DEVICE_REMOVE("56xx")
MDRV_DEVICE_REMOVE("58xx")
MDRV_NAMCO58XX_ADD("56xx", intf0)
MDRV_NAMCO56XX_ADD("58xx", intf1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gatron.c b/src/mame/drivers/gatron.c
index 8b43e83230d..ce6337a9176 100644
--- a/src/mame/drivers/gatron.c
+++ b/src/mame/drivers/gatron.c
@@ -437,7 +437,7 @@ GFXDECODE_END
* Machine Drivers *
*************************/
-static MACHINE_DRIVER_START( gat )
+static MACHINE_CONFIG_START( gat, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/24) /* 666.66 kHz, guess */
@@ -467,7 +467,7 @@ static MACHINE_DRIVER_START( gat )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("snsnd", SN76496, MASTER_CLOCK/8 ) /* 2 MHz, guess */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/gauntlet.c b/src/mame/drivers/gauntlet.c
index fe5c0cf6cf7..39e8d9a3942 100644
--- a/src/mame/drivers/gauntlet.c
+++ b/src/mame/drivers/gauntlet.c
@@ -513,8 +513,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( gauntlet )
- MDRV_DRIVER_DATA(gauntlet_state)
+static MACHINE_CONFIG_START( gauntlet, gauntlet_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68010, ATARI_CLOCK_14MHz/2)
@@ -556,7 +555,7 @@ static MACHINE_DRIVER_START( gauntlet )
MDRV_SOUND_ADD("tms", TMS5220C, ATARI_CLOCK_14MHz/2/11) /* potentially ATARI_CLOCK_14MHz/2/9 as well */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gberet.c b/src/mame/drivers/gberet.c
index 18e3c26202e..b1889d7e30b 100644
--- a/src/mame/drivers/gberet.c
+++ b/src/mame/drivers/gberet.c
@@ -387,10 +387,7 @@ static MACHINE_RESET( gberet )
state->spritebank = 0;
}
-static MACHINE_DRIVER_START( gberet )
-
- /* driver data */
- MDRV_DRIVER_DATA(gberet_state)
+static MACHINE_CONFIG_START( gberet, gberet_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6) // X1S (generated by a custom IC)
@@ -420,10 +417,9 @@ static MACHINE_DRIVER_START( gberet )
MDRV_SOUND_ADD("snsnd", SN76489A, MASTER_CLOCK/12) /* type verified on real and bootleg pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gberetb )
- MDRV_IMPORT_FROM(gberet)
+static MACHINE_CONFIG_DERIVED( gberetb, gberet )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -438,10 +434,9 @@ static MACHINE_DRIVER_START( gberetb )
MDRV_GFXDECODE(gberetb)
MDRV_VIDEO_UPDATE(gberetb)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mrgoemon )
- MDRV_IMPORT_FROM(gberet)
+static MACHINE_CONFIG_DERIVED( mrgoemon, gberet )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -452,7 +447,7 @@ static MACHINE_DRIVER_START( mrgoemon )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/gbusters.c b/src/mame/drivers/gbusters.c
index c07474d4702..df5ccb96fd8 100644
--- a/src/mame/drivers/gbusters.c
+++ b/src/mame/drivers/gbusters.c
@@ -307,10 +307,7 @@ static MACHINE_RESET( gbusters )
state->priority = 0;
}
-static MACHINE_DRIVER_START( gbusters )
-
- /* driver data */
- MDRV_DRIVER_DATA(gbusters_state)
+static MACHINE_CONFIG_START( gbusters, gbusters_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI, 3000000) /* Konami custom 052526 */
@@ -352,7 +349,7 @@ static MACHINE_DRIVER_START( gbusters )
MDRV_SOUND_CONFIG(k007232_config)
MDRV_SOUND_ROUTE(0, "mono", 0.30)
MDRV_SOUND_ROUTE(1, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/gcpinbal.c b/src/mame/drivers/gcpinbal.c
index 06bbd12054a..dd683dd8a3c 100644
--- a/src/mame/drivers/gcpinbal.c
+++ b/src/mame/drivers/gcpinbal.c
@@ -433,10 +433,7 @@ static MACHINE_RESET( gcpinbal )
state->msm_bank = 0;
}
-static MACHINE_DRIVER_START( gcpinbal )
-
- /* driver data */
- MDRV_DRIVER_DATA(gcpinbal_state)
+static MACHINE_CONFIG_START( gcpinbal, gcpinbal_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 32000000/2) /* 16 MHz ? */
@@ -469,7 +466,7 @@ static MACHINE_DRIVER_START( gcpinbal )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gei.c b/src/mame/drivers/gei.c
index 8168c5d1249..a6dce169bde 100644
--- a/src/mame/drivers/gei.c
+++ b/src/mame/drivers/gei.c
@@ -1046,7 +1046,7 @@ static const ppi8255_interface findout_ppi8255_intf[2] =
}
};
-static MACHINE_DRIVER_START( getrivia )
+static MACHINE_CONFIG_START( getrivia, driver_data_t )
MDRV_CPU_ADD("maincpu",Z80,4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(getrivia_map)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
@@ -1076,31 +1076,28 @@ static MACHINE_DRIVER_START( getrivia )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( findout )
- MDRV_IMPORT_FROM(getrivia)
+static MACHINE_CONFIG_DERIVED( findout, getrivia )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(findout_map)
MDRV_PPI8255_RECONFIG( "ppi8255_0", findout_ppi8255_intf[0] )
MDRV_PPI8255_RECONFIG( "ppi8255_1", findout_ppi8255_intf[1] )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( quizvid )
- MDRV_IMPORT_FROM(findout)
+static MACHINE_CONFIG_DERIVED( quizvid, findout )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(quizvid_map)
MDRV_PALETTE_INIT(quizvid)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gselect )
+static MACHINE_CONFIG_DERIVED( gselect, getrivia )
/* basic machine hardware */
- MDRV_IMPORT_FROM(getrivia)
MDRV_DEVICE_REMOVE("ticket")
@@ -1109,12 +1106,11 @@ static MACHINE_DRIVER_START( gselect )
MDRV_PPI8255_RECONFIG( "ppi8255_0", gselect_ppi8255_intf[0] )
MDRV_PPI8255_RECONFIG( "ppi8255_1", gselect_ppi8255_intf[1] )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jokpokera )
+static MACHINE_CONFIG_DERIVED( jokpokera, getrivia )
/* basic machine hardware */
- MDRV_IMPORT_FROM(getrivia)
MDRV_DEVICE_REMOVE("ticket")
@@ -1122,57 +1118,47 @@ static MACHINE_DRIVER_START( jokpokera )
MDRV_CPU_PROGRAM_MAP(gselect_map)
MDRV_PPI8255_RECONFIG( "ppi8255_0", gselect_ppi8255_intf[0] )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( amuse )
+static MACHINE_CONFIG_DERIVED( amuse, getrivia )
/* basic machine hardware */
- MDRV_IMPORT_FROM(getrivia)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(amuse_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gepoker )
+static MACHINE_CONFIG_DERIVED( gepoker, getrivia )
/* basic machine hardware */
- MDRV_IMPORT_FROM(getrivia)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gepoker_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( amuse1 )
-
- MDRV_IMPORT_FROM(getrivia)
+static MACHINE_CONFIG_DERIVED( amuse1, getrivia )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(amuse1_map)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( suprpokr )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(getrivia)
+static MACHINE_CONFIG_DERIVED( suprpokr, getrivia )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(suprpokr_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( geimulti )
-
- MDRV_IMPORT_FROM(getrivia)
+static MACHINE_CONFIG_DERIVED( geimulti, getrivia )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(geimulti_map)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( sprtauth )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(getrivia)
+static MACHINE_CONFIG_DERIVED( sprtauth, getrivia )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sprtauth_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************
Rom board is UVM-1A
diff --git a/src/mame/drivers/ggconnie.c b/src/mame/drivers/ggconnie.c
index 8334430658b..28f53214f85 100644
--- a/src/mame/drivers/ggconnie.c
+++ b/src/mame/drivers/ggconnie.c
@@ -143,7 +143,7 @@ static const c6280_interface c6280_config =
"maincpu"
};
-static MACHINE_DRIVER_START( ggconnie )
+static MACHINE_CONFIG_START( ggconnie, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H6280, PCE_MAIN_CLOCK/3)
MDRV_CPU_PROGRAM_MAP(sgx_mem)
@@ -171,7 +171,7 @@ static MACHINE_DRIVER_START( ggconnie )
MDRV_SOUND_ROUTE(0, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START(ggconnie)
ROM_REGION( 0x100000, "maincpu", 0 )
diff --git a/src/mame/drivers/ghosteo.c b/src/mame/drivers/ghosteo.c
index 59c290f6368..7e0d87d5431 100644
--- a/src/mame/drivers/ghosteo.c
+++ b/src/mame/drivers/ghosteo.c
@@ -487,7 +487,7 @@ static INTERRUPT_GEN( bballoon_interrupt )
// irq_en = 0;
}
-static MACHINE_DRIVER_START( bballoon )
+static MACHINE_CONFIG_START( bballoon, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM7, 24000000)
@@ -510,7 +510,7 @@ static MACHINE_DRIVER_START( bballoon )
MDRV_VIDEO_UPDATE(bballoon)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
Balloon & Balloon
diff --git a/src/mame/drivers/gijoe.c b/src/mame/drivers/gijoe.c
index 9fd3b426340..64e40140d00 100644
--- a/src/mame/drivers/gijoe.c
+++ b/src/mame/drivers/gijoe.c
@@ -296,10 +296,7 @@ static MACHINE_RESET( gijoe )
state->cur_control2 = 0;
}
-static MACHINE_DRIVER_START( gijoe )
-
- /* driver data */
- MDRV_DRIVER_DATA(gijoe_state)
+static MACHINE_CONFIG_START( gijoe, gijoe_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* Confirmed */
@@ -340,7 +337,7 @@ static MACHINE_DRIVER_START( gijoe )
MDRV_SOUND_CONFIG(k054539_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( gijoe )
diff --git a/src/mame/drivers/ginganin.c b/src/mame/drivers/ginganin.c
index 5049e6e72d4..5996faeb371 100644
--- a/src/mame/drivers/ginganin.c
+++ b/src/mame/drivers/ginganin.c
@@ -337,10 +337,7 @@ static MACHINE_RESET( ginganin )
}
-static MACHINE_DRIVER_START( ginganin )
-
- /* driver data */
- MDRV_DRIVER_DATA(ginganin_state)
+static MACHINE_CONFIG_START( ginganin, ginganin_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 6000000) /* ? */
@@ -376,7 +373,7 @@ static MACHINE_DRIVER_START( ginganin )
MDRV_SOUND_ADD("ymsnd", Y8950, 3579545) /* The Y8950 is basically a YM3526 with ADPCM built in */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gladiatr.c b/src/mame/drivers/gladiatr.c
index 0a321035373..97fdcbd7286 100644
--- a/src/mame/drivers/gladiatr.c
+++ b/src/mame/drivers/gladiatr.c
@@ -674,7 +674,7 @@ static const msm5205_interface msm5205_config =
-static MACHINE_DRIVER_START( ppking )
+static MACHINE_CONFIG_START( ppking, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on pcb */
@@ -722,9 +722,9 @@ static MACHINE_DRIVER_START( ppking )
MDRV_SOUND_ADD("msm", MSM5205, XTAL_455kHz) /* verified on pcb */
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gladiatr )
+static MACHINE_CONFIG_START( gladiatr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on pcb */
@@ -771,7 +771,7 @@ static MACHINE_DRIVER_START( gladiatr )
MDRV_SOUND_ADD("msm", MSM5205, XTAL_455kHz) /* verified on pcb */
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/glass.c b/src/mame/drivers/glass.c
index 27a0508167e..aff37028a85 100644
--- a/src/mame/drivers/glass.c
+++ b/src/mame/drivers/glass.c
@@ -194,10 +194,7 @@ static MACHINE_RESET( glass )
state->blitter_serial_buffer[i] = 0;
}
-static MACHINE_DRIVER_START( glass )
-
- /* driver data */
- MDRV_DRIVER_DATA(glass_state)
+static MACHINE_CONFIG_START( glass, glass_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz (M680000 P12) */
@@ -226,7 +223,7 @@ static MACHINE_DRIVER_START( glass )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( glass ) /* Version 1.1 */
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 code */
diff --git a/src/mame/drivers/gng.c b/src/mame/drivers/gng.c
index d63461669e4..8f061fc46dd 100644
--- a/src/mame/drivers/gng.c
+++ b/src/mame/drivers/gng.c
@@ -323,10 +323,7 @@ static MACHINE_RESET( gng )
state->scrolly[1] = 0;
}
-static MACHINE_DRIVER_START( gng )
-
- /* driver data */
- MDRV_DRIVER_DATA(gng_state)
+static MACHINE_CONFIG_START( gng, gng_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, XTAL_12MHz/8) /* verified on pcb */
@@ -371,7 +368,7 @@ static MACHINE_DRIVER_START( gng )
MDRV_SOUND_ROUTE(1, "mono", 0.40)
MDRV_SOUND_ROUTE(2, "mono", 0.40)
MDRV_SOUND_ROUTE(3, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/go2000.c b/src/mame/drivers/go2000.c
index 7453f4e571a..14dcc92ceaf 100644
--- a/src/mame/drivers/go2000.c
+++ b/src/mame/drivers/go2000.c
@@ -320,8 +320,7 @@ static MACHINE_START( go2000 )
state->soundcpu = machine->device("soundcpu");
}
-static MACHINE_DRIVER_START( go2000 )
- MDRV_DRIVER_DATA(go2000_state)
+static MACHINE_CONFIG_START( go2000, go2000_state )
MDRV_CPU_ADD("maincpu", M68000, 10000000)
MDRV_CPU_PROGRAM_MAP(go2000_map)
@@ -352,7 +351,7 @@ static MACHINE_DRIVER_START( go2000 )
MDRV_SOUND_ADD("dac1", DAC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( go2000 )
ROM_REGION( 0x80000, "maincpu", 0 ) /* 68000 Code */
diff --git a/src/mame/drivers/goal92.c b/src/mame/drivers/goal92.c
index 1213f0eb798..a74b3c6d64e 100644
--- a/src/mame/drivers/goal92.c
+++ b/src/mame/drivers/goal92.c
@@ -313,10 +313,7 @@ static MACHINE_RESET( goal92 )
state->adpcm_toggle = 0;
}
-static MACHINE_DRIVER_START( goal92 )
-
- /* driver data */
- MDRV_DRIVER_DATA(goal92_state)
+static MACHINE_CONFIG_START( goal92, goal92_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000)
@@ -358,7 +355,7 @@ static MACHINE_DRIVER_START( goal92 )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/goindol.c b/src/mame/drivers/goindol.c
index 6bd68170dc5..869dfe4b0b7 100644
--- a/src/mame/drivers/goindol.c
+++ b/src/mame/drivers/goindol.c
@@ -243,10 +243,7 @@ static MACHINE_RESET( goindol )
state->prot_toggle = 0;
}
-static MACHINE_DRIVER_START( goindol )
-
- /* driver data */
- MDRV_DRIVER_DATA(goindol_state)
+static MACHINE_CONFIG_START( goindol, goindol_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 6000000) /* 6 MHz (?) */
@@ -280,7 +277,7 @@ static MACHINE_DRIVER_START( goindol )
MDRV_SOUND_ADD("ymsnd", YM2203, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/goldnpkr.c b/src/mame/drivers/goldnpkr.c
index c8d52a0cac5..409ff7fd981 100644
--- a/src/mame/drivers/goldnpkr.c
+++ b/src/mame/drivers/goldnpkr.c
@@ -2287,7 +2287,7 @@ DISCRETE_SOUND_END
* Machine Drivers *
*********************************************/
-static MACHINE_DRIVER_START( goldnpkr_base )
+static MACHINE_CONFIG_START( goldnpkr_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, CPU_CLOCK)
@@ -2314,24 +2314,20 @@ static MACHINE_DRIVER_START( goldnpkr_base )
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(goldnpkr)
MDRV_VIDEO_UPDATE(goldnpkr)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( goldnpkr )
-
- MDRV_IMPORT_FROM(goldnpkr_base)
+static MACHINE_CONFIG_DERIVED( goldnpkr, goldnpkr_base )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(goldnpkr)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pottnpkr )
- MDRV_IMPORT_FROM(goldnpkr_base)
+static MACHINE_CONFIG_DERIVED( pottnpkr, goldnpkr_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -2344,12 +2340,10 @@ static MACHINE_DRIVER_START( pottnpkr )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(pottnpkr)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( witchcrd )
-
- MDRV_IMPORT_FROM(goldnpkr_base)
+static MACHINE_CONFIG_DERIVED( witchcrd, goldnpkr_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -2365,12 +2359,10 @@ static MACHINE_DRIVER_START( witchcrd )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(goldnpkr)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( genie )
- MDRV_IMPORT_FROM(goldnpkr_base)
+static MACHINE_CONFIG_DERIVED( genie, goldnpkr_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -2386,7 +2378,7 @@ static MACHINE_DRIVER_START( genie )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(goldnpkr)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*********************************************
diff --git a/src/mame/drivers/goldstar.c b/src/mame/drivers/goldstar.c
index 5cfe29c00c9..c32735dc9db 100644
--- a/src/mame/drivers/goldstar.c
+++ b/src/mame/drivers/goldstar.c
@@ -5510,9 +5510,7 @@ static const ay8910_interface ladylinr_ay8910_config =
DEVCB_NULL
};
-static MACHINE_DRIVER_START( goldstar )
-
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( goldstar, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -5544,12 +5542,10 @@ static MACHINE_DRIVER_START( goldstar )
MDRV_OKIM6295_ADD("oki", OKI_CLOCK, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( goldstbl )
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( goldstbl, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -5580,12 +5576,10 @@ static MACHINE_DRIVER_START( goldstbl )
MDRV_OKIM6295_ADD("oki", OKI_CLOCK, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( moonlght )
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( moonlght, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -5616,7 +5610,7 @@ static MACHINE_DRIVER_START( moonlght )
MDRV_OKIM6295_ADD("oki", OKI_CLOCK, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static PALETTE_INIT(cm)
@@ -5680,9 +5674,7 @@ static PALETTE_INIT(lucky8)
}
-static MACHINE_DRIVER_START( chrygld )
-
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( chrygld, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -5720,13 +5712,11 @@ static MACHINE_DRIVER_START( chrygld )
MDRV_SOUND_ADD("aysnd", AY8910, AY_CLOCK)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cb3c )
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( cb3c, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -5764,12 +5754,10 @@ static MACHINE_DRIVER_START( cb3c )
MDRV_SOUND_ADD("aysnd", AY8910, AY_CLOCK)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ncb3 )
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( ncb3, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -5808,12 +5796,10 @@ static MACHINE_DRIVER_START( ncb3 )
MDRV_SOUND_ADD("aysnd", AY8910, AY_CLOCK)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cm )
-
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( cm, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -5846,19 +5832,15 @@ static MACHINE_DRIVER_START( cm )
MDRV_SOUND_ADD("aysnd", AY8910, AY_CLOCK)
MDRV_SOUND_CONFIG(cm_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( cmasterc )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(cm)
+static MACHINE_CONFIG_DERIVED( cmasterc, cm )
MDRV_GFXDECODE(cmasterc)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#ifdef UNUSED_CODE
-static MACHINE_DRIVER_START( cmnobmp )
-
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( cmnobmp, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -5891,12 +5873,10 @@ static MACHINE_DRIVER_START( cmnobmp )
MDRV_SOUND_ADD("aysnd", AY8910, AY_CLOCK)
MDRV_SOUND_CONFIG(cm_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#endif
-static MACHINE_DRIVER_START( cmast91 )
-
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( cmast91, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -5929,7 +5909,7 @@ static MACHINE_DRIVER_START( cmast91 )
MDRV_SOUND_ADD("aysnd", AY8910, AY_CLOCK)
MDRV_SOUND_CONFIG(cm_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INTERRUPT_GEN( lucky8_irq )
{
@@ -5939,9 +5919,7 @@ static INTERRUPT_GEN( lucky8_irq )
cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
}
-static MACHINE_DRIVER_START( lucky8 )
-
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( lucky8, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -5980,7 +5958,7 @@ static MACHINE_DRIVER_START( lucky8 )
MDRV_SOUND_CONFIG(lucky8_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static PALETTE_INIT(magical)
{
@@ -5999,9 +5977,7 @@ static PALETTE_INIT(magical)
}
}
-static MACHINE_DRIVER_START( magical )
-
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( magical, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -6039,12 +6015,10 @@ static MACHINE_DRIVER_START( magical )
MDRV_SOUND_ADD("aysnd", AY8910, AY_CLOCK)
MDRV_SOUND_CONFIG(lucky8_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kkojnoli )
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( kkojnoli, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -6079,12 +6053,10 @@ static MACHINE_DRIVER_START( kkojnoli )
MDRV_SOUND_ADD("snsnd", SN76489, PSG_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ladylinr )
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( ladylinr, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -6121,12 +6093,10 @@ static MACHINE_DRIVER_START( ladylinr )
MDRV_SOUND_ADD("aysnd", AY8910, AY_CLOCK)
MDRV_SOUND_CONFIG(ladylinr_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wcat3 )
-
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( wcat3, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -6165,13 +6135,11 @@ static MACHINE_DRIVER_START( wcat3 )
MDRV_SOUND_CONFIG(lucky8_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* diff with cm machine driver: gfxdecode, OKI & portmap */
-static MACHINE_DRIVER_START( amcoe1 )
-
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( amcoe1, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -6207,13 +6175,11 @@ static MACHINE_DRIVER_START( amcoe1 )
MDRV_OKIM6295_ADD("oki", OKI_CLOCK, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* diff with cm machine driver: gfxdecode, OKI, portmap & tilemaps rect size/position */
-static MACHINE_DRIVER_START( amcoe1a )
-
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( amcoe1a, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -6249,13 +6215,11 @@ static MACHINE_DRIVER_START( amcoe1a )
MDRV_OKIM6295_ADD("oki", OKI_CLOCK, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* diff with cm machine driver: gfxdecode, AY8910 volume & portmap */
-static MACHINE_DRIVER_START( amcoe2 )
-
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( amcoe2, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -6288,11 +6252,9 @@ static MACHINE_DRIVER_START( amcoe2 )
MDRV_SOUND_ADD("aysnd", AY8910, AY_CLOCK)
MDRV_SOUND_CONFIG(cm_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.00) /* analyzed for clips */
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( nfm )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( nfm, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -6325,11 +6287,9 @@ static MACHINE_DRIVER_START( nfm )
MDRV_SOUND_ADD("aysnd", AY8910, AY_CLOCK)
MDRV_SOUND_CONFIG(cm_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.00) /* analyzed for clips */
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( unkch )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( unkch, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -6360,19 +6320,15 @@ static MACHINE_DRIVER_START( unkch )
// MDRV_SOUND_ADD("aysnd", AY8910, AY_CLOCK)
// MDRV_SOUND_CONFIG(ay8910_config)
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cherrys )
-
- MDRV_IMPORT_FROM(ncb3)
+static MACHINE_CONFIG_DERIVED( cherrys, ncb3 )
MDRV_GFXDECODE(cherrys)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
// hw unknown
-static MACHINE_DRIVER_START( pkrmast )
-
- MDRV_DRIVER_DATA(goldstar_state)
+static MACHINE_CONFIG_START( pkrmast, goldstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -6405,7 +6361,7 @@ static MACHINE_DRIVER_START( pkrmast )
MDRV_SOUND_ADD("aysnd", AY8910, AY_CLOCK)
MDRV_SOUND_CONFIG(cm_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/gomoku.c b/src/mame/drivers/gomoku.c
index 8e3abf871d1..5c9afd136c8 100644
--- a/src/mame/drivers/gomoku.c
+++ b/src/mame/drivers/gomoku.c
@@ -117,7 +117,7 @@ static GFXDECODE_START( gomoku )
GFXDECODE_END
-static MACHINE_DRIVER_START( gomoku )
+static MACHINE_CONFIG_START( gomoku, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/12) /* 1.536 MHz ? */
MDRV_CPU_PROGRAM_MAP(gomoku_map)
@@ -143,7 +143,7 @@ static MACHINE_DRIVER_START( gomoku )
MDRV_SOUND_ADD("gomoku", GOMOKU, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( gomoku )
diff --git a/src/mame/drivers/good.c b/src/mame/drivers/good.c
index ccbb5a0af9e..9d81d6a88d7 100644
--- a/src/mame/drivers/good.c
+++ b/src/mame/drivers/good.c
@@ -274,8 +274,7 @@ static GFXDECODE_START( good )
GFXDECODE_END
-static MACHINE_DRIVER_START( good )
- MDRV_DRIVER_DATA(good_state)
+static MACHINE_CONFIG_START( good, good_state )
MDRV_CPU_ADD("maincpu", M68000, 16000000 /2)
MDRV_CPU_PROGRAM_MAP(good_map)
@@ -300,7 +299,7 @@ static MACHINE_DRIVER_START( good )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.47)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.47)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( good )
diff --git a/src/mame/drivers/goodejan.c b/src/mame/drivers/goodejan.c
index 6792c5da360..ea69743cbf5 100644
--- a/src/mame/drivers/goodejan.c
+++ b/src/mame/drivers/goodejan.c
@@ -325,7 +325,7 @@ static INTERRUPT_GEN( goodejan_irq )
/* vector 0x00c is just a reti */
}
-static MACHINE_DRIVER_START( goodejan )
+static MACHINE_CONFIG_START( goodejan, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, GOODEJAN_MHZ2/2)
@@ -353,13 +353,12 @@ static MACHINE_DRIVER_START( goodejan )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM3812_INTERFACE(GOODEJAN_MHZ1/2,GOODEJAN_MHZ2/16)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( totmejan )
- MDRV_IMPORT_FROM( goodejan )
+static MACHINE_CONFIG_DERIVED( totmejan, goodejan )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(totmejan_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( totmejan )
ROM_REGION( 0x100000, "maincpu", 0 ) /* V30 code */
diff --git a/src/mame/drivers/gotcha.c b/src/mame/drivers/gotcha.c
index 88cd1d23837..0a49d9777c4 100644
--- a/src/mame/drivers/gotcha.c
+++ b/src/mame/drivers/gotcha.c
@@ -273,10 +273,7 @@ static MACHINE_RESET( gotcha )
state->banksel = 0;
}
-static MACHINE_DRIVER_START( gotcha )
-
- /* driver data */
- MDRV_DRIVER_DATA(gotcha_state)
+static MACHINE_CONFIG_START( gotcha, gotcha_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,14318180) /* 14.31818 MHz */
@@ -314,7 +311,7 @@ static MACHINE_DRIVER_START( gotcha )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gottlieb.c b/src/mame/drivers/gottlieb.c
index 2a0902ef58a..886957810d9 100644
--- a/src/mame/drivers/gottlieb.c
+++ b/src/mame/drivers/gottlieb.c
@@ -1915,7 +1915,7 @@ static const samples_interface reactor_samples_interface =
*
*************************************/
-static MACHINE_DRIVER_START( gottlieb_core )
+static MACHINE_CONFIG_START( gottlieb_core, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8088, CPU_CLOCK/3)
@@ -1940,24 +1940,21 @@ static MACHINE_DRIVER_START( gottlieb_core )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gottlieb1 )
- MDRV_IMPORT_FROM(gottlieb_core)
- MDRV_IMPORT_FROM(gottlieb_soundrev1)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( gottlieb1, gottlieb_core )
+ MDRV_FRAGMENT_ADD(gottlieb_soundrev1)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gottlieb2 )
- MDRV_IMPORT_FROM(gottlieb_core)
- MDRV_IMPORT_FROM(gottlieb_soundrev2)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( gottlieb2, gottlieb_core )
+ MDRV_FRAGMENT_ADD(gottlieb_soundrev2)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( g2laser )
- MDRV_IMPORT_FROM(gottlieb_core)
- MDRV_IMPORT_FROM(gottlieb_soundrev2)
+static MACHINE_CONFIG_DERIVED( g2laser, gottlieb_core )
+ MDRV_FRAGMENT_ADD(gottlieb_soundrev2)
MDRV_LASERDISC_ADD("laserdisc", PIONEER_PR8210, "screen", "ldsound")
MDRV_LASERDISC_AUDIO(laserdisc_audio_process)
@@ -1970,7 +1967,7 @@ static MACHINE_DRIVER_START( g2laser )
MDRV_SOUND_ADD("ldsound", LASERDISC, 0)
MDRV_SOUND_ROUTE(0, "mono", 1.0)
/* right channel is processed as data */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1980,8 +1977,7 @@ MACHINE_DRIVER_END
*
*************************************/
-static MACHINE_DRIVER_START( reactor )
- MDRV_IMPORT_FROM(gottlieb1)
+static MACHINE_CONFIG_DERIVED( reactor, gottlieb1 )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1993,34 +1989,31 @@ static MACHINE_DRIVER_START( reactor )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(reactor_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qbert )
- MDRV_IMPORT_FROM(gottlieb1)
+static MACHINE_CONFIG_DERIVED( qbert, gottlieb1 )
/* video hardware */
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(qbert_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( screwloo )
- MDRV_IMPORT_FROM(gottlieb2)
+static MACHINE_CONFIG_DERIVED( screwloo, gottlieb2 )
MDRV_VIDEO_START(screwloo)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cobram3 )
- MDRV_IMPORT_FROM(g2laser)
+static MACHINE_CONFIG_DERIVED( cobram3, g2laser )
/* sound hardware */
MDRV_SOUND_MODIFY("dac1")
MDRV_SOUND_ROUTES_RESET()
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gotya.c b/src/mame/drivers/gotya.c
index a64307b257c..7abb5f31132 100644
--- a/src/mame/drivers/gotya.c
+++ b/src/mame/drivers/gotya.c
@@ -192,10 +192,7 @@ static MACHINE_RESET( gotya )
state->theme_playing = 0;
}
-static MACHINE_DRIVER_START( gotya )
-
- /* driver data */
- MDRV_DRIVER_DATA(gotya_state)
+static MACHINE_CONFIG_START( gotya, gotya_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,18432000/6) /* 3.072 MHz ??? */
@@ -226,7 +223,7 @@ static MACHINE_DRIVER_START( gotya )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(gotya_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/gpworld.c b/src/mame/drivers/gpworld.c
index a2b6f3b9433..ebb6d188fce 100644
--- a/src/mame/drivers/gpworld.c
+++ b/src/mame/drivers/gpworld.c
@@ -441,7 +441,7 @@ static GFXDECODE_START( gpworld )
GFXDECODE_END
/* DRIVER */
-static MACHINE_DRIVER_START( gpworld )
+static MACHINE_CONFIG_START( gpworld, driver_data_t )
/* main cpu */
MDRV_CPU_ADD("maincpu", Z80, GUESSED_CLOCK)
@@ -466,7 +466,7 @@ static MACHINE_DRIVER_START( gpworld )
MDRV_SOUND_ADD("ldsound", LASERDISC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( gpworld )
diff --git a/src/mame/drivers/gradius3.c b/src/mame/drivers/gradius3.c
index c566d537196..090e2832cb8 100644
--- a/src/mame/drivers/gradius3.c
+++ b/src/mame/drivers/gradius3.c
@@ -327,10 +327,7 @@ static MACHINE_RESET( gradius3 )
}
-static MACHINE_DRIVER_START( gradius3 )
-
- /* driver data */
- MDRV_DRIVER_DATA(gradius3_state)
+static MACHINE_CONFIG_START( gradius3, gradius3_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz */
@@ -381,7 +378,7 @@ static MACHINE_DRIVER_START( gradius3 )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.20)
MDRV_SOUND_ROUTE(1, "lspeaker", 0.20)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/grchamp.c b/src/mame/drivers/grchamp.c
index 2eeb9aba851..ac10a34cc6b 100644
--- a/src/mame/drivers/grchamp.c
+++ b/src/mame/drivers/grchamp.c
@@ -671,8 +671,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( grchamp )
- MDRV_DRIVER_DATA(grchamp_state)
+static MACHINE_CONFIG_START( grchamp, grchamp_state )
/* basic machine hardware */
/* CPU BOARD */
@@ -725,7 +724,7 @@ static MACHINE_DRIVER_START( grchamp )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(grchamp)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gridlee.c b/src/mame/drivers/gridlee.c
index de4aa86654a..4c1955c65ad 100644
--- a/src/mame/drivers/gridlee.c
+++ b/src/mame/drivers/gridlee.c
@@ -433,7 +433,7 @@ static const samples_interface gridlee_samples_interface =
*
*************************************/
-static MACHINE_DRIVER_START( gridlee )
+static MACHINE_CONFIG_START( gridlee, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, BALSENTE_CPU_CLOCK)
@@ -463,7 +463,7 @@ static MACHINE_DRIVER_START( gridlee )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(gridlee_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/groundfx.c b/src/mame/drivers/groundfx.c
index 38ea51c09f5..2c520924539 100644
--- a/src/mame/drivers/groundfx.c
+++ b/src/mame/drivers/groundfx.c
@@ -367,7 +367,7 @@ static INTERRUPT_GEN( groundfx_interrupt )
cpu_set_input_line(device, 4, HOLD_LINE);
}
-static MACHINE_DRIVER_START( groundfx )
+static MACHINE_CONFIG_START( groundfx, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz */
@@ -394,8 +394,8 @@ static MACHINE_DRIVER_START( groundfx )
MDRV_TC0480SCP_ADD("tc0480scp", groundfx_tc0480scp_intf)
/* sound hardware */
- MDRV_IMPORT_FROM(taito_f3_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(taito_f3_sound)
+MACHINE_CONFIG_END
/***************************************************************************
DRIVERS
diff --git a/src/mame/drivers/gstream.c b/src/mame/drivers/gstream.c
index ca5e8df9d12..738a8fd7952 100644
--- a/src/mame/drivers/gstream.c
+++ b/src/mame/drivers/gstream.c
@@ -548,10 +548,7 @@ static MACHINE_RESET( gstream )
state->oki_bank_1 = 0;
}
-static MACHINE_DRIVER_START( gstream )
-
- /* driver data */
- MDRV_DRIVER_DATA(gstream_state)
+static MACHINE_CONFIG_START( gstream, gstream_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", E132XT, 16000000*4) /* 4x internal multiplier */
@@ -585,7 +582,7 @@ static MACHINE_DRIVER_START( gstream )
MDRV_OKIM6295_ADD("oki2", 1000000, OKIM6295_PIN7_HIGH) /* 1 Mhz? */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( gstream )
ROM_REGION32_BE( 0x080000, "user1", 0 ) /* Hyperstone CPU Code */
diff --git a/src/mame/drivers/gstriker.c b/src/mame/drivers/gstriker.c
index b6f1e0bd3fb..456f30548cf 100644
--- a/src/mame/drivers/gstriker.c
+++ b/src/mame/drivers/gstriker.c
@@ -546,7 +546,7 @@ INPUT_PORTS_END
/*** MACHINE DRIVER **********************************************************/
-static MACHINE_DRIVER_START( gstriker )
+static MACHINE_CONFIG_START( gstriker, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 10000000)
MDRV_CPU_PROGRAM_MAP(gstriker_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -578,15 +578,14 @@ static MACHINE_DRIVER_START( gstriker )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( twrldc94 )
- MDRV_IMPORT_FROM( gstriker )
+static MACHINE_CONFIG_DERIVED( twrldc94, gstriker )
MDRV_VIDEO_START( twrldc94 )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vgoal )
+static MACHINE_CONFIG_START( vgoal, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 16000000)
MDRV_CPU_PROGRAM_MAP(vgoal_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -618,7 +617,7 @@ static MACHINE_DRIVER_START( vgoal )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gsword.c b/src/mame/drivers/gsword.c
index 0e9ecabba92..8fb9eb7c305 100644
--- a/src/mame/drivers/gsword.c
+++ b/src/mame/drivers/gsword.c
@@ -692,7 +692,7 @@ static const msm5205_interface msm5205_config =
MSM5205_SEX_4B /* vclk input mode */
};
-static MACHINE_DRIVER_START( gsword )
+static MACHINE_CONFIG_START( gsword, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18MHz/6) /* verified on pcb */
@@ -745,9 +745,9 @@ static MACHINE_DRIVER_START( gsword )
MDRV_SOUND_ADD("msm", MSM5205, XTAL_400kHz) /* verified on pcb */
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( josvolly )
+static MACHINE_CONFIG_START( josvolly, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18000000/6) /* ? */
@@ -793,7 +793,7 @@ static MACHINE_DRIVER_START( josvolly )
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
#endif
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/gticlub.c b/src/mame/drivers/gticlub.c
index 3fecded0232..1dd99511e41 100644
--- a/src/mame/drivers/gticlub.c
+++ b/src/mame/drivers/gticlub.c
@@ -815,7 +815,7 @@ static MACHINE_RESET( gticlub )
cputag_set_input_line(machine, "dsp", INPUT_LINE_RESET, ASSERT_LINE);
}
-static MACHINE_DRIVER_START( gticlub )
+static MACHINE_CONFIG_START( gticlub, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000/2) /* PowerPC 403GA 32MHz */
@@ -861,29 +861,25 @@ static MACHINE_DRIVER_START( gticlub )
MDRV_SOUND_ADD("rfsnd", RF5C400, 64000000/4)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( thunderh )
-
- MDRV_IMPORT_FROM(gticlub)
+static MACHINE_CONFIG_DERIVED( thunderh, gticlub )
MDRV_DEVICE_REMOVE("adc1038")
MDRV_ADC1038_ADD("adc1038", thunderh_adc1038_intf)
MDRV_DEVICE_REMOVE("k056230")
MDRV_K056230_ADD("k056230", thunderh_k056230_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( slrasslt )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(gticlub)
+static MACHINE_CONFIG_DERIVED( slrasslt, gticlub )
MDRV_DEVICE_REMOVE("adc1038")
MDRV_ADC1038_ADD("adc1038", thunderh_adc1038_intf)
MDRV_DEVICE_REMOVE("k001604_1")
MDRV_K001604_ADD("k001604_1", slrasslt_k001604_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const k033906_interface hangplt_k033906_intf_0 =
@@ -902,7 +898,7 @@ static MACHINE_RESET( hangplt )
cputag_set_input_line(machine, "dsp2", INPUT_LINE_RESET, ASSERT_LINE);
}
-static MACHINE_DRIVER_START( hangplt )
+static MACHINE_CONFIG_START( hangplt, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000/2) /* PowerPC 403GA 32MHz */
@@ -971,7 +967,7 @@ static MACHINE_DRIVER_START( hangplt )
MDRV_SOUND_ADD("rfsnd", RF5C400, 64000000/4)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************************************************/
diff --git a/src/mame/drivers/guab.c b/src/mame/drivers/guab.c
index 93a3b1532b1..d6e574cdb4b 100644
--- a/src/mame/drivers/guab.c
+++ b/src/mame/drivers/guab.c
@@ -760,7 +760,7 @@ static MACHINE_RESET( guab )
memset(&fdc, 0, sizeof(fdc));
}
-static MACHINE_DRIVER_START( guab )
+static MACHINE_CONFIG_START( guab, driver_data_t )
/* TODO: Verify clock */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(guab_map)
@@ -789,7 +789,7 @@ static MACHINE_DRIVER_START( guab )
/* 6840 PTM */
MDRV_PTM6840_ADD("6840ptm", ptm_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/gumbo.c b/src/mame/drivers/gumbo.c
index 28da3732001..d30f3c18f9b 100644
--- a/src/mame/drivers/gumbo.c
+++ b/src/mame/drivers/gumbo.c
@@ -227,8 +227,7 @@ static GFXDECODE_START( gumbo )
GFXDECODE_END
-static MACHINE_DRIVER_START( gumbo )
- MDRV_DRIVER_DATA(gumbo_state)
+static MACHINE_CONFIG_START( gumbo, gumbo_state )
MDRV_CPU_ADD("maincpu", M68000, 14318180 /2) // or 10mhz? ?
MDRV_CPU_PROGRAM_MAP(gumbo_map)
@@ -253,21 +252,19 @@ static MACHINE_DRIVER_START( gumbo )
MDRV_OKIM6295_ADD("oki", 1122000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.47)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.47)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mspuzzle )
- MDRV_IMPORT_FROM(gumbo)
+static MACHINE_CONFIG_DERIVED( mspuzzle, gumbo )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mspuzzle_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dblpoint )
- MDRV_IMPORT_FROM(gumbo)
+static MACHINE_CONFIG_DERIVED( dblpoint, gumbo )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dblpoint_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( gumbo )
ROM_REGION( 0x40000, "maincpu", 0 ) /* 68000 Code */
diff --git a/src/mame/drivers/gunbustr.c b/src/mame/drivers/gunbustr.c
index c1e29f9f058..953840a3b44 100644
--- a/src/mame/drivers/gunbustr.c
+++ b/src/mame/drivers/gunbustr.c
@@ -345,7 +345,7 @@ static const tc0480scp_interface gunbustr_tc0480scp_intf =
0 /* col_base */
};
-static MACHINE_DRIVER_START( gunbustr )
+static MACHINE_CONFIG_START( gunbustr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz */
@@ -371,8 +371,8 @@ static MACHINE_DRIVER_START( gunbustr )
MDRV_TC0480SCP_ADD("tc0480scp", gunbustr_tc0480scp_intf)
/* sound hardware */
- MDRV_IMPORT_FROM(taito_f3_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(taito_f3_sound)
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/gundealr.c b/src/mame/drivers/gundealr.c
index 52eb184a662..082de627920 100644
--- a/src/mame/drivers/gundealr.c
+++ b/src/mame/drivers/gundealr.c
@@ -466,10 +466,7 @@ static MACHINE_RESET( gundealr )
state->scroll[3] = 0;
}
-static MACHINE_DRIVER_START( gundealr )
-
- /* driver data */
- MDRV_DRIVER_DATA(gundealr_state)
+static MACHINE_CONFIG_START( gundealr, gundealr_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* 8 MHz ??? */
@@ -499,7 +496,7 @@ static MACHINE_DRIVER_START( gundealr )
MDRV_SOUND_ADD("ymsnd", YM2203, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gunpey.c b/src/mame/drivers/gunpey.c
index 777362165d3..5abdb6927ab 100644
--- a/src/mame/drivers/gunpey.c
+++ b/src/mame/drivers/gunpey.c
@@ -313,7 +313,7 @@ static INTERRUPT_GEN( gunpey_interrupt )
}
/***************************************************************************************/
-static MACHINE_DRIVER_START( gunpey )
+static MACHINE_CONFIG_START( gunpey, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, 57242400 / 4)
@@ -345,7 +345,7 @@ static MACHINE_DRIVER_START( gunpey )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************************/
diff --git a/src/mame/drivers/gunsmoke.c b/src/mame/drivers/gunsmoke.c
index 0ead2b1e74f..b982ece9163 100644
--- a/src/mame/drivers/gunsmoke.c
+++ b/src/mame/drivers/gunsmoke.c
@@ -295,10 +295,7 @@ static MACHINE_RESET( gunsmoke )
state->sprite3bank = 0;
}
-static MACHINE_DRIVER_START( gunsmoke )
-
- /* driver data */
- MDRV_DRIVER_DATA(gunsmoke_state)
+static MACHINE_CONFIG_START( gunsmoke, gunsmoke_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) // 4 MHz
@@ -341,7 +338,7 @@ static MACHINE_DRIVER_START( gunsmoke )
MDRV_SOUND_ROUTE(1, "mono", 0.22)
MDRV_SOUND_ROUTE(2, "mono", 0.22)
MDRV_SOUND_ROUTE(3, "mono", 0.14)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/gyruss.c b/src/mame/drivers/gyruss.c
index df324d1ff04..b33515a0d34 100644
--- a/src/mame/drivers/gyruss.c
+++ b/src/mame/drivers/gyruss.c
@@ -505,10 +505,7 @@ static MACHINE_START( gyruss )
state->audiocpu_2 = machine->device<cpu_device>("audio2");
}
-static MACHINE_DRIVER_START( gyruss )
-
- /* driver data */
- MDRV_DRIVER_DATA(gyruss_state)
+static MACHINE_CONFIG_START( gyruss, gyruss_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3072000) /* 3.072 MHz (?) */
@@ -583,7 +580,7 @@ static MACHINE_DRIVER_START( gyruss )
MDRV_SOUND_CONFIG_DISCRETE(gyruss_sound)
MDRV_SOUND_ROUTE(0, "rspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/halleys.c b/src/mame/drivers/halleys.c
index 97bcf274597..85ec701c53c 100644
--- a/src/mame/drivers/halleys.c
+++ b/src/mame/drivers/halleys.c
@@ -1933,7 +1933,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( halleys )
+static MACHINE_CONFIG_START( halleys, driver_data_t )
MDRV_CPU_ADD("maincpu", M6809, XTAL_19_968MHz/12) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(halleys_map)
MDRV_CPU_VBLANK_INT_HACK(halleys_interrupt, 4)
@@ -1974,16 +1974,15 @@ static MACHINE_DRIVER_START( halleys )
MDRV_SOUND_ADD("ay4", AY8910, XTAL_6MHz/4) /* verified on pcb */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( benberob )
- MDRV_IMPORT_FROM(halleys)
+static MACHINE_CONFIG_DERIVED( benberob, halleys )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(XTAL_19_968MHz/12) /* not verified but pcb identical to halley's comet */
MDRV_CPU_VBLANK_INT_HACK(benberob_interrupt, 4)
MDRV_VIDEO_UPDATE(benberob)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
//**************************************************************************
diff --git a/src/mame/drivers/hanaawas.c b/src/mame/drivers/hanaawas.c
index f71522b441c..4e896a23d75 100644
--- a/src/mame/drivers/hanaawas.c
+++ b/src/mame/drivers/hanaawas.c
@@ -198,10 +198,7 @@ static MACHINE_RESET( hanaawas )
state->mux = 0;
}
-static MACHINE_DRIVER_START( hanaawas )
-
- /* driver data */
- MDRV_DRIVER_DATA(hanaawas_state)
+static MACHINE_CONFIG_START( hanaawas, hanaawas_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,18432000/6) /* 3.072 MHz ??? */
@@ -233,7 +230,7 @@ static MACHINE_DRIVER_START( hanaawas )
MDRV_SOUND_ADD("aysnd", AY8910, 18432000/12)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/harddriv.c b/src/mame/drivers/harddriv.c
index 6d06799a3e4..6c0347d6ed0 100644
--- a/src/mame/drivers/harddriv.c
+++ b/src/mame/drivers/harddriv.c
@@ -1119,8 +1119,7 @@ INPUT_PORTS_END
*************************************/
/* Driver board without MSP (used by Race Drivin' cockpit) */
-static MACHINE_DRIVER_START( driver_nomsp )
- MDRV_DRIVER_DATA(harddriv_state)
+static MACHINE_CONFIG_START( driver_nomsp, harddriv_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68010, 32000000/4)
@@ -1150,23 +1149,21 @@ static MACHINE_DRIVER_START( driver_nomsp )
MDRV_VIDEO_START(harddriv)
MDRV_VIDEO_UPDATE(tms340x0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Driver board with MSP (used by Hard Drivin' cockpit) */
-static MACHINE_DRIVER_START( driver_msp )
- MDRV_IMPORT_FROM(driver_nomsp)
+static MACHINE_CONFIG_DERIVED( driver_msp, driver_nomsp )
/* basic machine hardware */
MDRV_CPU_ADD("msp", TMS34010, 50000000)
MDRV_CPU_PROGRAM_MAP(driver_msp_map)
MDRV_CPU_CONFIG(msp_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Multisync board without MSP (used by STUN Runner, Steel Talons, Race Drivin' compact) */
-static MACHINE_DRIVER_START( multisync_nomsp )
- MDRV_IMPORT_FROM(driver_nomsp)
+static MACHINE_CONFIG_DERIVED( multisync_nomsp, driver_nomsp )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1179,23 +1176,21 @@ static MACHINE_DRIVER_START( multisync_nomsp )
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_RAW_PARAMS(6000000*2, 323*2, 0, 256*2, 308, 0, 288)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Multisync board with MSP (used by Hard Drivin' compact) */
-static MACHINE_DRIVER_START( multisync_msp )
- MDRV_IMPORT_FROM(multisync_nomsp)
+static MACHINE_CONFIG_DERIVED( multisync_msp, multisync_nomsp )
/* basic machine hardware */
MDRV_CPU_ADD("msp", TMS34010, 50000000)
MDRV_CPU_PROGRAM_MAP(driver_msp_map)
MDRV_CPU_CONFIG(msp_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Multisync II board (used by Hard Drivin's Airborne) */
-static MACHINE_DRIVER_START( multisync2 )
- MDRV_IMPORT_FROM(multisync_nomsp)
+static MACHINE_CONFIG_DERIVED( multisync2, multisync_nomsp )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1203,7 +1198,7 @@ static MACHINE_DRIVER_START( multisync2 )
MDRV_CPU_MODIFY("gsp")
MDRV_CPU_PROGRAM_MAP(multisync2_gsp_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1214,17 +1209,17 @@ MACHINE_DRIVER_END
*************************************/
/* ADSP/ADSP II boards (used by Hard/Race Drivin', STUN Runner) */
-static MACHINE_DRIVER_START( adsp )
+static MACHINE_CONFIG_FRAGMENT( adsp )
/* basic machine hardware */
MDRV_CPU_ADD("adsp", ADSP2100, 8000000)
MDRV_CPU_PROGRAM_MAP(adsp_program_map)
MDRV_CPU_DATA_MAP(adsp_data_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* DS III board (used by Steel Talons) */
-static MACHINE_DRIVER_START( ds3 )
+static MACHINE_CONFIG_FRAGMENT( ds3 )
/* basic machine hardware */
MDRV_CPU_ADD("adsp", ADSP2101, 12000000)
@@ -1232,11 +1227,11 @@ static MACHINE_DRIVER_START( ds3 )
MDRV_CPU_DATA_MAP(ds3_data_map)
MDRV_QUANTUM_TIME(HZ(60000))
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* DS IV board (used by Hard Drivin's Airborne) */
-static MACHINE_DRIVER_START( ds4 )
+static MACHINE_CONFIG_FRAGMENT( ds4 )
/* basic machine hardware */
MDRV_CPU_ADD("adsp", ADSP2101, 12000000)
@@ -1256,7 +1251,7 @@ static MACHINE_DRIVER_START( ds4 )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1267,7 +1262,7 @@ MACHINE_DRIVER_END
*************************************/
/* DSK board (used by Race Drivin') */
-static MACHINE_DRIVER_START( dsk )
+static MACHINE_CONFIG_FRAGMENT( dsk )
/* basic machine hardware */
MDRV_CPU_ADD("dsp32", DSP32C, 40000000)
@@ -1275,12 +1270,12 @@ static MACHINE_DRIVER_START( dsk )
MDRV_CPU_PROGRAM_MAP(dsk_dsp32_map)
/* ASIC65 */
- MDRV_IMPORT_FROM( asic65 )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( asic65 )
+MACHINE_CONFIG_END
/* DSK II board (used by Hard Drivin's Airborne) */
-static MACHINE_DRIVER_START( dsk2 )
+static MACHINE_CONFIG_FRAGMENT( dsk2 )
/* basic machine hardware */
MDRV_CPU_ADD("dsp32", DSP32C, 40000000)
@@ -1288,8 +1283,8 @@ static MACHINE_DRIVER_START( dsk2 )
MDRV_CPU_PROGRAM_MAP(dsk2_dsp32_map)
/* ASIC65 */
- MDRV_IMPORT_FROM( asic65 )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( asic65 )
+MACHINE_CONFIG_END
@@ -1299,7 +1294,7 @@ MACHINE_DRIVER_END
*
*************************************/
-static MACHINE_DRIVER_START( driversnd )
+static MACHINE_CONFIG_FRAGMENT( driversnd )
/* basic machine hardware */
MDRV_CPU_ADD("soundcpu", M68000, 16000000/2)
@@ -1315,7 +1310,7 @@ static MACHINE_DRIVER_START( driversnd )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1325,85 +1320,77 @@ MACHINE_DRIVER_END
*
*************************************/
-static MACHINE_DRIVER_START( harddriv )
+static MACHINE_CONFIG_DERIVED( harddriv, driver_msp )
- /* basic machine hardware */
- MDRV_IMPORT_FROM( driver_msp ) /* original driver board with MSP */
- MDRV_IMPORT_FROM( adsp ) /* ADSP board */
- MDRV_IMPORT_FROM( driversnd ) /* driver sound board */
-MACHINE_DRIVER_END
+ /* basic machine hardware */ /* original driver board with MSP */
+ MDRV_FRAGMENT_ADD( adsp ) /* ADSP board */
+ MDRV_FRAGMENT_ADD( driversnd ) /* driver sound board */
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( harddrivc )
+static MACHINE_CONFIG_DERIVED( harddrivc, multisync_msp )
- /* basic machine hardware */
- MDRV_IMPORT_FROM( multisync_msp ) /* multisync board with MSP */
- MDRV_IMPORT_FROM( adsp ) /* ADSP board */
- MDRV_IMPORT_FROM( driversnd ) /* driver sound board */
-MACHINE_DRIVER_END
+ /* basic machine hardware */ /* multisync board with MSP */
+ MDRV_FRAGMENT_ADD( adsp ) /* ADSP board */
+ MDRV_FRAGMENT_ADD( driversnd ) /* driver sound board */
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( racedriv )
+static MACHINE_CONFIG_DERIVED( racedriv, driver_nomsp )
- /* basic machine hardware */
- MDRV_IMPORT_FROM( driver_nomsp ) /* original driver board without MSP */
- MDRV_IMPORT_FROM( adsp ) /* ADSP board */
- MDRV_IMPORT_FROM( dsk ) /* DSK board */
- MDRV_IMPORT_FROM( driversnd ) /* driver sound board */
-MACHINE_DRIVER_END
+ /* basic machine hardware */ /* original driver board without MSP */
+ MDRV_FRAGMENT_ADD( adsp ) /* ADSP board */
+ MDRV_FRAGMENT_ADD( dsk ) /* DSK board */
+ MDRV_FRAGMENT_ADD( driversnd ) /* driver sound board */
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( racedrivc )
+static MACHINE_CONFIG_DERIVED( racedrivc, multisync_nomsp )
- /* basic machine hardware */
- MDRV_IMPORT_FROM( multisync_nomsp ) /* multisync board without MSP */
- MDRV_IMPORT_FROM( adsp ) /* ADSP board */
- MDRV_IMPORT_FROM( dsk ) /* DSK board */
- MDRV_IMPORT_FROM( driversnd ) /* driver sound board */
-MACHINE_DRIVER_END
+ /* basic machine hardware */ /* multisync board without MSP */
+ MDRV_FRAGMENT_ADD( adsp ) /* ADSP board */
+ MDRV_FRAGMENT_ADD( dsk ) /* DSK board */
+ MDRV_FRAGMENT_ADD( driversnd ) /* driver sound board */
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( stunrun )
+static MACHINE_CONFIG_DERIVED( stunrun, multisync_nomsp )
- /* basic machine hardware */
- MDRV_IMPORT_FROM( multisync_nomsp ) /* multisync board without MSP */
+ /* basic machine hardware */ /* multisync board without MSP */
MDRV_CPU_MODIFY("gsp")
MDRV_CPU_CONFIG(gsp_config_multisync_stunrun)
- MDRV_IMPORT_FROM( adsp ) /* ADSP board */
- MDRV_IMPORT_FROM( jsa_ii_mono ) /* JSA II sound board */
+ MDRV_FRAGMENT_ADD( adsp ) /* ADSP board */
+ MDRV_FRAGMENT_ADD( jsa_ii_mono ) /* JSA II sound board */
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_RAW_PARAMS(5000000*2, 317*2, 0, 256*2, 262, 0, 228)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( strtdriv )
+static MACHINE_CONFIG_DERIVED( strtdriv, multisync_nomsp )
- /* basic machine hardware */
- MDRV_IMPORT_FROM( multisync_nomsp ) /* multisync board */
- MDRV_IMPORT_FROM( ds3 ) /* DS III board */
- MDRV_IMPORT_FROM( dsk ) /* DSK board */
-MACHINE_DRIVER_END
+ /* basic machine hardware */ /* multisync board */
+ MDRV_FRAGMENT_ADD( ds3 ) /* DS III board */
+ MDRV_FRAGMENT_ADD( dsk ) /* DSK board */
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( steeltal )
+static MACHINE_CONFIG_DERIVED( steeltal, multisync_msp )
- /* basic machine hardware */
- MDRV_IMPORT_FROM( multisync_msp ) /* multisync board with MSP */
- MDRV_IMPORT_FROM( ds3 ) /* DS III board */
- MDRV_IMPORT_FROM( jsa_iii_mono ) /* JSA III sound board */
- MDRV_IMPORT_FROM( asic65 ) /* ASIC65 on DSPCOM board */
-MACHINE_DRIVER_END
+ /* basic machine hardware */ /* multisync board with MSP */
+ MDRV_FRAGMENT_ADD( ds3 ) /* DS III board */
+ MDRV_FRAGMENT_ADD( jsa_iii_mono ) /* JSA III sound board */
+ MDRV_FRAGMENT_ADD( asic65 ) /* ASIC65 on DSPCOM board */
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hdrivair )
+static MACHINE_CONFIG_DERIVED( hdrivair, multisync2 )
- /* basic machine hardware */
- MDRV_IMPORT_FROM( multisync2 ) /* multisync II board */
- MDRV_IMPORT_FROM( ds4 ) /* DS IV board */
- MDRV_IMPORT_FROM( dsk2 ) /* DSK II board */
-MACHINE_DRIVER_END
+ /* basic machine hardware */ /* multisync II board */
+ MDRV_FRAGMENT_ADD( ds4 ) /* DS IV board */
+ MDRV_FRAGMENT_ADD( dsk2 ) /* DSK II board */
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/hcastle.c b/src/mame/drivers/hcastle.c
index 455388bf37b..5dad6bc5b67 100644
--- a/src/mame/drivers/hcastle.c
+++ b/src/mame/drivers/hcastle.c
@@ -205,10 +205,7 @@ static MACHINE_RESET( hcastle )
state->old_pf2 = -1;
}
-static MACHINE_DRIVER_START( hcastle )
-
- /* driver data */
- MDRV_DRIVER_DATA(hcastle_state)
+static MACHINE_CONFIG_START( hcastle, hcastle_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI, 3000000) /* Derived from 24 MHz clock */
@@ -255,7 +252,7 @@ static MACHINE_DRIVER_START( hcastle )
MDRV_SOUND_ADD("konami2", K051649, 3579545/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/hexion.c b/src/mame/drivers/hexion.c
index 996003170ea..98ffd8366fd 100644
--- a/src/mame/drivers/hexion.c
+++ b/src/mame/drivers/hexion.c
@@ -227,7 +227,7 @@ static INTERRUPT_GEN( hexion_interrupt )
cpu_set_input_line(device, 0, HOLD_LINE);
}
-static MACHINE_DRIVER_START( hexion )
+static MACHINE_CONFIG_START( hexion, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,24000000/4) /* Z80B 6 MHz */
@@ -257,7 +257,7 @@ static MACHINE_DRIVER_START( hexion )
MDRV_SOUND_ADD("konami", K051649, 24000000/16)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/higemaru.c b/src/mame/drivers/higemaru.c
index db09d766f2e..43895db6ca5 100644
--- a/src/mame/drivers/higemaru.c
+++ b/src/mame/drivers/higemaru.c
@@ -155,10 +155,7 @@ static GFXDECODE_START( higemaru )
GFXDECODE_END
-static MACHINE_DRIVER_START( higemaru )
-
- /* driver data */
- MDRV_DRIVER_DATA(higemaru_state)
+static MACHINE_CONFIG_START( higemaru, higemaru_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/4) /* 3 MHz Sharp LH0080A Z80A-CPU-D */
@@ -188,7 +185,7 @@ static MACHINE_DRIVER_START( higemaru )
MDRV_SOUND_ADD("ay2", AY8910, XTAL_12MHz/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/highvdeo.c b/src/mame/drivers/highvdeo.c
index 0f1c5040201..34bb7b24c14 100644
--- a/src/mame/drivers/highvdeo.c
+++ b/src/mame/drivers/highvdeo.c
@@ -865,7 +865,7 @@ static INTERRUPT_GEN( vblank_irq )
cpu_set_input_line_and_vector(device,0,HOLD_LINE,0x08/4);
}
-static MACHINE_DRIVER_START( tv_vcf )
+static MACHINE_CONFIG_START( tv_vcf, driver_data_t )
MDRV_CPU_ADD("maincpu", V30, XTAL_12MHz/2 ) // ?
MDRV_CPU_PROGRAM_MAP(tv_vcf_map)
MDRV_CPU_IO_MAP(tv_vcf_io)
@@ -892,19 +892,17 @@ static MACHINE_DRIVER_START( tv_vcf )
MDRV_SOUND_ADD("oki", OKIM6376, XTAL_12MHz/2/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tv_ncf )
- MDRV_IMPORT_FROM(tv_vcf)
+static MACHINE_CONFIG_DERIVED( tv_ncf, tv_vcf )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tv_ncf_map)
MDRV_CPU_IO_MAP(tv_ncf_io)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tv_tcf )
- MDRV_IMPORT_FROM(tv_vcf)
+static MACHINE_CONFIG_DERIVED( tv_tcf, tv_vcf )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tv_tcf_map)
@@ -912,10 +910,9 @@ static MACHINE_DRIVER_START( tv_tcf )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 400-1, 0, 300-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( newmcard )
- MDRV_IMPORT_FROM(tv_tcf)
+static MACHINE_CONFIG_DERIVED( newmcard, tv_tcf )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(newmcard_map)
@@ -923,10 +920,9 @@ static MACHINE_DRIVER_START( newmcard )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 200-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ciclone )
- MDRV_IMPORT_FROM(tv_tcf)
+static MACHINE_CONFIG_DERIVED( ciclone, tv_tcf )
MDRV_DEVICE_REMOVE("maincpu")
@@ -934,9 +930,9 @@ static MACHINE_DRIVER_START( ciclone )
MDRV_CPU_PROGRAM_MAP(tv_tcf_map)
MDRV_CPU_IO_MAP(tv_tcf_io)
MDRV_CPU_VBLANK_INT("screen", vblank_irq)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( brasil )
+static MACHINE_CONFIG_START( brasil, driver_data_t )
MDRV_CPU_ADD("maincpu", I80186, 20000000 ) // fashion doesn't like 20/2 Mhz
MDRV_CPU_PROGRAM_MAP(brasil_map)
MDRV_CPU_IO_MAP(brasil_io)
@@ -961,7 +957,7 @@ static MACHINE_DRIVER_START( brasil )
MDRV_SOUND_ADD("oki", OKIM6376, XTAL_12MHz/2/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( tour4000 )
ROM_REGION( 0x100000, "user1", 0 ) /* V30 Code */
diff --git a/src/mame/drivers/hikaru.c b/src/mame/drivers/hikaru.c
index 5870174c01c..01e7b77a473 100644
--- a/src/mame/drivers/hikaru.c
+++ b/src/mame/drivers/hikaru.c
@@ -372,7 +372,7 @@ static ADDRESS_MAP_START( hikaru_map_slave, ADDRESS_SPACE_PROGRAM, 64 )
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( hikaru )
+static MACHINE_CONFIG_START( hikaru, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", SH4, CPU_CLOCK)
// MDRV_CPU_CONFIG(sh4cpu_config)
@@ -405,7 +405,7 @@ static MACHINE_DRIVER_START( hikaru )
// MDRV_SOUND_CONFIG(aica_config)
// MDRV_SOUND_ROUTE(0, "lspeaker", 2.0)
// MDRV_SOUND_ROUTE(0, "rspeaker", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#define ROM_LOAD16_WORD_SWAP_BIOS(bios,name,offset,length,hash) \
diff --git a/src/mame/drivers/himesiki.c b/src/mame/drivers/himesiki.c
index 178e345622a..0a1a3d8f645 100644
--- a/src/mame/drivers/himesiki.c
+++ b/src/mame/drivers/himesiki.c
@@ -289,10 +289,7 @@ static MACHINE_RESET( himesiki )
state->flipscreen = 0;
}
-static MACHINE_DRIVER_START( himesiki )
-
- /* driver data */
- MDRV_DRIVER_DATA(himesiki_state)
+static MACHINE_CONFIG_START( himesiki, himesiki_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MCLK/2) /* 6.000 MHz */
@@ -328,7 +325,7 @@ static MACHINE_DRIVER_START( himesiki )
MDRV_SOUND_ROUTE(2, "mono", 0.10)
MDRV_SOUND_ROUTE(3, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/****************************************************************************/
diff --git a/src/mame/drivers/hitme.c b/src/mame/drivers/hitme.c
index 3f1c021a8bb..92ce8cd946b 100644
--- a/src/mame/drivers/hitme.c
+++ b/src/mame/drivers/hitme.c
@@ -316,10 +316,7 @@ static MACHINE_RESET( hitme )
state->timeout_time = attotime_zero;
}
-static MACHINE_DRIVER_START( hitme )
-
- /* driver data */
- MDRV_DRIVER_DATA(hitme_state)
+static MACHINE_CONFIG_START( hitme, hitme_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, MASTER_CLOCK/16)
@@ -349,7 +346,7 @@ static MACHINE_DRIVER_START( hitme )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(hitme)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -360,8 +357,7 @@ MACHINE_DRIVER_END
Barricade or is the resolution set by a dip switch?
*/
-static MACHINE_DRIVER_START( barricad )
- MDRV_IMPORT_FROM(hitme)
+static MACHINE_CONFIG_DERIVED( barricad, hitme )
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
@@ -372,7 +368,7 @@ static MACHINE_DRIVER_START( barricad )
MDRV_VIDEO_START(barricad)
MDRV_VIDEO_UPDATE(barricad)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/hitpoker.c b/src/mame/drivers/hitpoker.c
index a243d5b8920..fbdf814e9c8 100644
--- a/src/mame/drivers/hitpoker.c
+++ b/src/mame/drivers/hitpoker.c
@@ -461,7 +461,7 @@ static INTERRUPT_GEN( hitpoker_irq )
cpu_set_input_line(device, MC68HC11_IRQ_LINE, HOLD_LINE);
}
-static MACHINE_DRIVER_START( hitpoker )
+static MACHINE_CONFIG_START( hitpoker, driver_data_t )
MDRV_CPU_ADD("maincpu", MC68HC11,1000000)
MDRV_CPU_PROGRAM_MAP(hitpoker_map)
MDRV_CPU_IO_MAP(hitpoker_io)
@@ -489,7 +489,7 @@ static MACHINE_DRIVER_START( hitpoker )
MDRV_SOUND_ADD("aysnd", AY8910, 1500000)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT(hitpoker)
{
diff --git a/src/mame/drivers/hnayayoi.c b/src/mame/drivers/hnayayoi.c
index b934a631a41..3dc0bd6ddae 100644
--- a/src/mame/drivers/hnayayoi.c
+++ b/src/mame/drivers/hnayayoi.c
@@ -553,10 +553,7 @@ static MACHINE_RESET( hnayayoi )
}
-static MACHINE_DRIVER_START( hnayayoi )
-
- /* driver data */
- MDRV_DRIVER_DATA(hnayayoi_state)
+static MACHINE_CONFIG_START( hnayayoi, hnayayoi_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 20000000/4 ) /* 5 MHz ???? */
@@ -597,22 +594,20 @@ static MACHINE_DRIVER_START( hnayayoi )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hnfubuki )
- MDRV_IMPORT_FROM(hnayayoi)
+static MACHINE_CONFIG_DERIVED( hnfubuki, hnayayoi )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hnfubuki_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( untoucha )
- MDRV_IMPORT_FROM(hnayayoi)
+static MACHINE_CONFIG_DERIVED( untoucha, hnayayoi )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(untoucha_map)
MDRV_CPU_IO_MAP(untoucha_io_map)
MDRV_VIDEO_START(untoucha)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/hng64.c b/src/mame/drivers/hng64.c
index 5878d3f75d0..e82fe02dc13 100644
--- a/src/mame/drivers/hng64.c
+++ b/src/mame/drivers/hng64.c
@@ -1714,9 +1714,7 @@ static MACHINE_RESET(hyperneo)
state->mcu_en = 0;
}
-static MACHINE_DRIVER_START( hng64 )
-
- MDRV_DRIVER_DATA( hng64_state )
+static MACHINE_CONFIG_START( hng64, hng64_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", VR4300BE, MASTER_CLOCK) // actually R4300
@@ -1748,7 +1746,7 @@ static MACHINE_DRIVER_START( hng64 )
MDRV_VIDEO_START(hng64)
MDRV_VIDEO_UPDATE(hng64)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( hng64 )
diff --git a/src/mame/drivers/holeland.c b/src/mame/drivers/holeland.c
index 598be6972e0..57c389cad16 100644
--- a/src/mame/drivers/holeland.c
+++ b/src/mame/drivers/holeland.c
@@ -273,10 +273,7 @@ static const ay8910_interface ay8910_interface_2 =
-static MACHINE_DRIVER_START( holeland )
-
- /* driver data */
- MDRV_DRIVER_DATA(holeland_state)
+static MACHINE_CONFIG_START( holeland, holeland_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz ? */
@@ -309,7 +306,7 @@ static MACHINE_DRIVER_START( holeland )
MDRV_SOUND_ADD("ay2", AY8910, 1818182)
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -345,10 +342,7 @@ Notes:
*/
-static MACHINE_DRIVER_START( crzrally )
-
- /* driver data */
- MDRV_DRIVER_DATA(holeland_state)
+static MACHINE_CONFIG_START( crzrally, holeland_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 20000000/4) /* 5 MHz */
@@ -383,7 +377,7 @@ static MACHINE_DRIVER_START( crzrally )
MDRV_SOUND_ADD("ay2", AY8910, 20000000/16)
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/homedata.c b/src/mame/drivers/homedata.c
index 25b7fba6517..f7b12060520 100644
--- a/src/mame/drivers/homedata.c
+++ b/src/mame/drivers/homedata.c
@@ -1252,10 +1252,7 @@ static MACHINE_RESET( reikaids )
state->gfx_bank[1] = 0; // this is not used by reikaids
}
-static MACHINE_DRIVER_START( mrokumei )
-
- /* driver data */
- MDRV_DRIVER_DATA(homedata_state)
+static MACHINE_CONFIG_START( mrokumei, homedata_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 16000000/4) /* 4MHz ? */
@@ -1294,7 +1291,7 @@ static MACHINE_DRIVER_START( mrokumei )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**************************************************************************/
@@ -1321,10 +1318,7 @@ static const UPD7810_CONFIG upd_config =
};
-static MACHINE_DRIVER_START( reikaids )
-
- /* driver data */
- MDRV_DRIVER_DATA(homedata_state)
+static MACHINE_CONFIG_START( reikaids, homedata_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 16000000/4) /* 4MHz ? */
@@ -1370,15 +1364,12 @@ static MACHINE_DRIVER_START( reikaids )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**************************************************************************/
-static MACHINE_DRIVER_START( pteacher )
-
- /* driver data */
- MDRV_DRIVER_DATA(homedata_state)
+static MACHINE_CONFIG_START( pteacher, homedata_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 16000000/4) /* 4MHz ? */
@@ -1421,25 +1412,21 @@ static MACHINE_DRIVER_START( pteacher )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjkinjas )
-
- MDRV_IMPORT_FROM(pteacher)
+static MACHINE_CONFIG_DERIVED( mjkinjas, pteacher )
MDRV_CPU_MODIFY("audiocpu")
MDRV_CPU_CLOCK(11000000) /* 11MHz ? */
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( lemnangl )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(pteacher)
+static MACHINE_CONFIG_DERIVED( lemnangl, pteacher )
/* video hardware */
MDRV_GFXDECODE(lemnangl)
MDRV_VIDEO_START(lemnangl)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( mirderby )
INPUT_PORTS_END
@@ -1547,10 +1534,7 @@ GFXDECODE_END
/* clocks are 16mhz and 9mhz */
-static MACHINE_DRIVER_START( mirderby )
-
- /* driver data */
- MDRV_DRIVER_DATA(homedata_state)
+static MACHINE_CONFIG_START( mirderby, homedata_state )
MDRV_CPU_ADD("maincpu", M6809, 16000000/8) /* 2 Mhz */
MDRV_CPU_PROGRAM_MAP(cpu2_map)
@@ -1592,7 +1576,7 @@ static MACHINE_DRIVER_START( mirderby )
MDRV_SOUND_ROUTE(1, "mono", 0.25)
MDRV_SOUND_ROUTE(2, "mono", 0.25)
MDRV_SOUND_ROUTE(3, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**************************************************************************/
diff --git a/src/mame/drivers/homerun.c b/src/mame/drivers/homerun.c
index 6e3d6ae541c..5303e881d38 100644
--- a/src/mame/drivers/homerun.c
+++ b/src/mame/drivers/homerun.c
@@ -218,10 +218,7 @@ static MACHINE_RESET( homerun )
state->xpc = 0;
}
-static MACHINE_DRIVER_START( homerun )
-
- /* driver data */
- MDRV_DRIVER_DATA(homerun_state)
+static MACHINE_CONFIG_START( homerun, homerun_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000)
@@ -254,7 +251,7 @@ static MACHINE_DRIVER_START( homerun )
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/hornet.c b/src/mame/drivers/hornet.c
index 5d30f7af4b0..27e9894b20f 100644
--- a/src/mame/drivers/hornet.c
+++ b/src/mame/drivers/hornet.c
@@ -915,7 +915,7 @@ static const k037122_interface hornet_k037122_intf_r =
"rscreen", 1
};
-static MACHINE_DRIVER_START( hornet )
+static MACHINE_CONFIG_START( hornet, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000/2) /* PowerPC 403GA 32MHz */
@@ -966,7 +966,7 @@ static MACHINE_DRIVER_START( hornet )
MDRV_M48T58_ADD( "m48t58" )
MDRV_ADC12138_ADD( "adc12138", hornet_adc_interface )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_RESET( hornet_2board )
@@ -986,9 +986,7 @@ static MACHINE_RESET( hornet_2board )
memory_set_bankptr(machine, "bank5", usr5);
}
-static MACHINE_DRIVER_START( hornet_2board )
-
- MDRV_IMPORT_FROM(hornet)
+static MACHINE_CONFIG_DERIVED( hornet_2board, hornet )
MDRV_CPU_ADD("dsp2", ADSP21062, 36000000)
MDRV_CPU_CONFIG(sharc_cfg)
@@ -1031,17 +1029,15 @@ static MACHINE_DRIVER_START( hornet_2board )
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(512, 384)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 0, 383)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( terabrst )
- MDRV_IMPORT_FROM(hornet_2board)
+static MACHINE_CONFIG_DERIVED( terabrst, hornet_2board )
MDRV_CPU_ADD("gn680", M68000, 32000000/2) /* 16MHz */
MDRV_CPU_PROGRAM_MAP(gn680_memmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hornet_2board_v2 )
- MDRV_IMPORT_FROM(hornet_2board)
+static MACHINE_CONFIG_DERIVED( hornet_2board_v2, hornet_2board )
MDRV_DEVICE_REMOVE("voodoo0")
MDRV_3DFX_VOODOO_2_ADD("voodoo0", STD_VOODOO_2_CLOCK, 2, "lscreen")
@@ -1054,7 +1050,7 @@ static MACHINE_DRIVER_START( hornet_2board_v2 )
MDRV_3DFX_VOODOO_CPU("dsp2")
MDRV_3DFX_VOODOO_TMU_MEMORY(0, 4)
MDRV_3DFX_VOODOO_VBLANK(voodoo_vblank_1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*****************************************************************************/
diff --git a/src/mame/drivers/hotblock.c b/src/mame/drivers/hotblock.c
index 799b0b6fb14..f49dd56a7ad 100644
--- a/src/mame/drivers/hotblock.c
+++ b/src/mame/drivers/hotblock.c
@@ -208,10 +208,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( hotblock )
-
- /* driver data */
- MDRV_DRIVER_DATA(hotblock_state)
+static MACHINE_CONFIG_START( hotblock, hotblock_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8088, 10000000)
@@ -238,7 +235,7 @@ static MACHINE_DRIVER_START( hotblock )
MDRV_SOUND_ADD("aysnd", AY8910, 1000000)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( hotblock )
ROM_REGION( 0x100000, "maincpu", 0 )
diff --git a/src/mame/drivers/hotstuff.c b/src/mame/drivers/hotstuff.c
index ebda4cedb34..20421a0061a 100644
--- a/src/mame/drivers/hotstuff.c
+++ b/src/mame/drivers/hotstuff.c
@@ -64,7 +64,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( hotstuff )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( hotstuff )
+static MACHINE_CONFIG_START( hotstuff, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 16000000)
MDRV_CPU_PROGRAM_MAP(hotstuff_map)
@@ -81,7 +81,7 @@ static MACHINE_DRIVER_START( hotstuff )
MDRV_VIDEO_START(hotstuff)
MDRV_VIDEO_UPDATE(hotstuff)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/hvyunit.c b/src/mame/drivers/hvyunit.c
index 27e37ecdc2c..0dc27b61169 100644
--- a/src/mame/drivers/hvyunit.c
+++ b/src/mame/drivers/hvyunit.c
@@ -640,7 +640,7 @@ static const kaneko_pandora_interface hvyunit_pandora_config =
};
-static MACHINE_DRIVER_START( hvyunit )
+static MACHINE_CONFIG_START( hvyunit, driver_data_t )
MDRV_CPU_ADD("master", Z80,6000000)
MDRV_CPU_PROGRAM_MAP(master_memory)
@@ -681,7 +681,7 @@ static MACHINE_DRIVER_START( hvyunit )
MDRV_SOUND_ADD("ymsnd", YM2203, 3000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/hyhoo.c b/src/mame/drivers/hyhoo.c
index e0b82616f2e..136ef902923 100644
--- a/src/mame/drivers/hyhoo.c
+++ b/src/mame/drivers/hyhoo.c
@@ -252,7 +252,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( hyhoo )
+static MACHINE_CONFIG_START( hyhoo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5.00 MHz ?? */
@@ -283,7 +283,7 @@ static MACHINE_DRIVER_START( hyhoo )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( hyhoo )
diff --git a/src/mame/drivers/hyperspt.c b/src/mame/drivers/hyperspt.c
index 2db3d9a2669..c771df1fb64 100644
--- a/src/mame/drivers/hyperspt.c
+++ b/src/mame/drivers/hyperspt.c
@@ -310,10 +310,7 @@ static MACHINE_RESET( hypersptb )
state->hyprolyb_vck_ready = 0;
}
-static MACHINE_DRIVER_START( hyperspt )
-
- /* driver data */
- MDRV_DRIVER_DATA(trackfld_state)
+static MACHINE_CONFIG_START( hyperspt, trackfld_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, XTAL_18_432MHz/12) /* verified on pcb */
@@ -353,11 +350,10 @@ static MACHINE_DRIVER_START( hyperspt )
MDRV_SOUND_ADD("vlm", VLM5030, XTAL_3_579545MHz) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hypersptb )
- MDRV_IMPORT_FROM(hyperspt)
+static MACHINE_CONFIG_DERIVED( hypersptb, hyperspt )
MDRV_DEVICE_REMOVE("vlm")
MDRV_CPU_MODIFY("audiocpu")
@@ -372,17 +368,16 @@ static MACHINE_DRIVER_START( hypersptb )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(hyprolyb_msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( roadf )
- MDRV_IMPORT_FROM(hyperspt)
+static MACHINE_CONFIG_DERIVED( roadf, hyperspt )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(roadf_map)
MDRV_GFXDECODE(roadf)
MDRV_VIDEO_START(roadf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/hyprduel.c b/src/mame/drivers/hyprduel.c
index 7736b04aa65..e5c0405dbeb 100644
--- a/src/mame/drivers/hyprduel.c
+++ b/src/mame/drivers/hyprduel.c
@@ -671,10 +671,7 @@ static MACHINE_START( magerror )
timer_adjust_periodic(state->magerror_irq_timer, attotime_zero, 0, ATTOTIME_IN_HZ(968)); /* tempo? */
}
-static MACHINE_DRIVER_START( hyprduel )
-
- /* driver data */
- MDRV_DRIVER_DATA(hyprduel_state)
+static MACHINE_CONFIG_START( hyprduel, hyprduel_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,20000000/2) /* 10MHz */
@@ -714,13 +711,10 @@ static MACHINE_DRIVER_START( hyprduel )
MDRV_OKIM6295_ADD("oki", 4000000/16/16*132, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.57)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.57)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( magerror )
- /* driver data */
- MDRV_DRIVER_DATA(hyprduel_state)
+static MACHINE_CONFIG_START( magerror, hyprduel_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,20000000/2) /* 10MHz */
@@ -759,7 +753,7 @@ static MACHINE_DRIVER_START( magerror )
MDRV_OKIM6295_ADD("oki", 4000000/16/16*132, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.57)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.57)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
ROMs Loading
diff --git a/src/mame/drivers/igs009.c b/src/mame/drivers/igs009.c
index a13c38d8184..b3f29d034db 100644
--- a/src/mame/drivers/igs009.c
+++ b/src/mame/drivers/igs009.c
@@ -630,7 +630,7 @@ static INTERRUPT_GEN( jingbell_interrupt )
cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
}
-static MACHINE_DRIVER_START( jingbell )
+static MACHINE_CONFIG_START( jingbell, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 2) /* HD64180RP8, 8 MHz? */
MDRV_CPU_PROGRAM_MAP(jingbell_map)
@@ -662,14 +662,13 @@ static MACHINE_DRIVER_START( jingbell )
MDRV_OKIM6295_ADD("oki", XTAL_12MHz / 12, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gp98 )
- MDRV_IMPORT_FROM(jingbell)
+static MACHINE_CONFIG_DERIVED( gp98, jingbell )
MDRV_GFXDECODE(gp98)
MDRV_VIDEO_START(gp98)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/igs011.c b/src/mame/drivers/igs011.c
index 6cb53b2cfd3..fa6fd625246 100644
--- a/src/mame/drivers/igs011.c
+++ b/src/mame/drivers/igs011.c
@@ -3444,7 +3444,7 @@ static GFXDECODE_START( igs011_hi )
GFXDECODE_END
#endif
-static MACHINE_DRIVER_START( igs011_base )
+static MACHINE_CONFIG_START( igs011_base, driver_data_t )
MDRV_CPU_ADD("maincpu",M68000, XTAL_22MHz/3)
MDRV_NVRAM_HANDLER(generic_0fill)
@@ -3467,7 +3467,7 @@ static MACHINE_DRIVER_START( igs011_base )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", XTAL_22MHz/21, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INTERRUPT_GEN( drgnwrld_interrupt )
{
@@ -3479,21 +3479,19 @@ static INTERRUPT_GEN( drgnwrld_interrupt )
}
}
-static MACHINE_DRIVER_START( drgnwrld )
- MDRV_IMPORT_FROM(igs011_base)
+static MACHINE_CONFIG_DERIVED( drgnwrld, igs011_base )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(drgnwrld)
MDRV_CPU_VBLANK_INT_HACK(drgnwrld_interrupt,1+4) // lev5 frequency drives the music tempo
MDRV_SOUND_ADD("ymsnd", YM3812, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( drgnwrld_igs012 )
- MDRV_IMPORT_FROM(drgnwrld)
+static MACHINE_CONFIG_DERIVED( drgnwrld_igs012, drgnwrld )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(drgnwrld_igs012)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -3512,12 +3510,11 @@ static INTERRUPT_GEN( lhb_interrupt )
}
}
-static MACHINE_DRIVER_START( lhb )
- MDRV_IMPORT_FROM(igs011_base)
+static MACHINE_CONFIG_DERIVED( lhb, igs011_base )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(lhb)
MDRV_CPU_VBLANK_INT_HACK(lhb_interrupt,3+1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -3530,26 +3527,23 @@ static INTERRUPT_GEN( wlcc_interrupt )
}
}
-static MACHINE_DRIVER_START( wlcc )
- MDRV_IMPORT_FROM(igs011_base)
+static MACHINE_CONFIG_DERIVED( wlcc, igs011_base )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(wlcc)
MDRV_CPU_VBLANK_INT_HACK(wlcc_interrupt,2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( xymg )
- MDRV_IMPORT_FROM(igs011_base)
+static MACHINE_CONFIG_DERIVED( xymg, igs011_base )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(xymg)
MDRV_CPU_VBLANK_INT_HACK(wlcc_interrupt,2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lhb2 )
- MDRV_IMPORT_FROM(igs011_base)
+static MACHINE_CONFIG_DERIVED( lhb2, igs011_base )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(lhb2)
MDRV_CPU_VBLANK_INT_HACK(drgnwrld_interrupt,1+4) // lev5 frequency drives the music tempo
@@ -3558,7 +3552,7 @@ static MACHINE_DRIVER_START( lhb2 )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -3583,8 +3577,7 @@ static INTERRUPT_GEN( vbowl_interrupt )
}
}
-static MACHINE_DRIVER_START( vbowl )
- MDRV_IMPORT_FROM(igs011_base)
+static MACHINE_CONFIG_DERIVED( vbowl, igs011_base )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(vbowl)
MDRV_CPU_VBLANK_INT_HACK(vbowl_interrupt,3+4)
@@ -3596,7 +3589,7 @@ static MACHINE_DRIVER_START( vbowl )
MDRV_SOUND_ADD("ics", ICS2115, 0)
MDRV_SOUND_CONFIG(vbowl_ics2115_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 5.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/igs017.c b/src/mame/drivers/igs017.c
index 72c08b2ade2..60476089b48 100644
--- a/src/mame/drivers/igs017.c
+++ b/src/mame/drivers/igs017.c
@@ -2027,7 +2027,7 @@ static MACHINE_RESET( iqblocka )
input_select = 0;
}
-static MACHINE_DRIVER_START( iqblocka )
+static MACHINE_CONFIG_START( iqblocka, driver_data_t )
MDRV_CPU_ADD("maincpu", Z180, XTAL_16MHz / 2)
MDRV_CPU_PROGRAM_MAP(iqblocka_map)
MDRV_CPU_IO_MAP(iqblocka_io)
@@ -2059,7 +2059,7 @@ static MACHINE_DRIVER_START( iqblocka )
MDRV_OKIM6295_ADD("oki", XTAL_16MHz / 16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2099,7 +2099,7 @@ static const ppi8255_interface mgcs_ppi8255_intf =
DEVCB_NULL // Port C write
};
-static MACHINE_DRIVER_START( mgcs )
+static MACHINE_CONFIG_START( mgcs, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, XTAL_22MHz / 2)
MDRV_CPU_PROGRAM_MAP(mgcs)
MDRV_CPU_VBLANK_INT_HACK(mgcs_interrupt,2)
@@ -2127,7 +2127,7 @@ static MACHINE_DRIVER_START( mgcs )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", XTAL_8MHz / 8, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2144,7 +2144,7 @@ static const ppi8255_interface sdmg2_ppi8255_intf =
DEVCB_NULL // Port C write
};
-static MACHINE_DRIVER_START( sdmg2 )
+static MACHINE_CONFIG_START( sdmg2, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, XTAL_22MHz/2)
MDRV_CPU_PROGRAM_MAP(sdmg2)
MDRV_CPU_VBLANK_INT_HACK(mgcs_interrupt,2)
@@ -2172,7 +2172,7 @@ static MACHINE_DRIVER_START( sdmg2 )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", XTAL_22MHz / 22, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
//mgdh
@@ -2202,7 +2202,7 @@ static const ppi8255_interface mgdh_ppi8255_intf =
DEVCB_NULL // Port C write
};
-static MACHINE_DRIVER_START( mgdh )
+static MACHINE_CONFIG_START( mgdh, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, XTAL_22MHz / 2)
MDRV_CPU_PROGRAM_MAP(mgdh_map)
MDRV_CPU_VBLANK_INT_HACK(mgdh_interrupt,2)
@@ -2230,7 +2230,7 @@ static MACHINE_DRIVER_START( mgdh )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", XTAL_22MHz / 22, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/igs_m027.c b/src/mame/drivers/igs_m027.c
index ed82ada9ed2..3df8a081bed 100644
--- a/src/mame/drivers/igs_m027.c
+++ b/src/mame/drivers/igs_m027.c
@@ -364,7 +364,7 @@ static INTERRUPT_GEN( igs_majhong_interrupt )
}
-static MACHINE_DRIVER_START( igs_majhong )
+static MACHINE_CONFIG_START( igs_majhong, driver_data_t )
MDRV_CPU_ADD("maincpu",ARM7, 20000000)
MDRV_CPU_PROGRAM_MAP(igs_majhong_map)
@@ -389,7 +389,7 @@ static MACHINE_DRIVER_START( igs_majhong )
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/igspoker.c b/src/mame/drivers/igspoker.c
index 2310e0b075d..20b9fb149eb 100644
--- a/src/mame/drivers/igspoker.c
+++ b/src/mame/drivers/igspoker.c
@@ -1556,7 +1556,7 @@ static GFXDECODE_START( cpokerpk )
GFXDECODE_ENTRY( "gfx2", 0x00000, charlayout2, 0, 1 )
GFXDECODE_END
-static MACHINE_DRIVER_START( igspoker )
+static MACHINE_CONFIG_START( igspoker, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80, 3579545)
@@ -1585,29 +1585,21 @@ static MACHINE_DRIVER_START( igspoker )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( csk227it )
+static MACHINE_CONFIG_DERIVED( csk227it, igspoker )
- MDRV_IMPORT_FROM(igspoker)
+MACHINE_CONFIG_END
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( csk234it, igspoker )
-static MACHINE_DRIVER_START( csk234it )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(igspoker)
+static MACHINE_CONFIG_DERIVED( igs_ncs, igspoker )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( igs_ncs )
-
- MDRV_IMPORT_FROM(igspoker)
-
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( number10 )
-
- MDRV_IMPORT_FROM(igspoker)
+static MACHINE_CONFIG_DERIVED( number10, igspoker )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(number10_io_map)
@@ -1617,22 +1609,18 @@ static MACHINE_DRIVER_START( number10 )
MDRV_OKIM6295_ADD("oki", XTAL_12MHz / 12, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( cpokerpk )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(number10)
+static MACHINE_CONFIG_DERIVED( cpokerpk, number10 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(cpokerpk_io_map)
MDRV_GFXDECODE(cpokerpk)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pktetris )
- MDRV_IMPORT_FROM(igspoker)
+static MACHINE_CONFIG_DERIVED( pktetris, igspoker )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ikki.c b/src/mame/drivers/ikki.c
index 8aebe15c4e4..ad3002d1e5b 100644
--- a/src/mame/drivers/ikki.c
+++ b/src/mame/drivers/ikki.c
@@ -221,10 +221,7 @@ static MACHINE_RESET( ikki )
state->flipscreen = 0;
}
-static MACHINE_DRIVER_START( ikki )
-
- /* driver data */
- MDRV_DRIVER_DATA(ikki_state)
+static MACHINE_CONFIG_START( ikki, ikki_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000/2) /* 4.000MHz */
@@ -263,7 +260,7 @@ static MACHINE_DRIVER_START( ikki )
MDRV_SOUND_ADD("sn2", SN76496, 8000000/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/ilpag.c b/src/mame/drivers/ilpag.c
index af6a5892e0b..eaac062d4cb 100644
--- a/src/mame/drivers/ilpag.c
+++ b/src/mame/drivers/ilpag.c
@@ -418,7 +418,7 @@ static INPUT_PORTS_START( steaser )
PORT_BIT( 0x8000, IP_ACTIVE_HIGH, IPT_POKER_HOLD4 ) PORT_IMPULSE(1)
INPUT_PORTS_END
-static MACHINE_DRIVER_START( ilpag )
+static MACHINE_CONFIG_START( ilpag, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 11059200 ) // ?
MDRV_CPU_PROGRAM_MAP(ilpag_map)
MDRV_CPU_VBLANK_INT("screen",irq4_line_hold) //3 & 6 used, mcu comms?
@@ -439,7 +439,7 @@ static MACHINE_DRIVER_START( ilpag )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
20089f = 1 -> menu
@@ -486,14 +486,13 @@ static INTERRUPT_GEN( steaser_irq )
cpu_set_input_line(device, num, HOLD_LINE);
}
-static MACHINE_DRIVER_START( steaser )
- MDRV_IMPORT_FROM( ilpag )
+static MACHINE_CONFIG_DERIVED( steaser, ilpag )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(steaser_map)
MDRV_CPU_VBLANK_INT_HACK(steaser_irq,4)
MDRV_TIMER_ADD_PERIODIC("coinsim", steaser_mcu_sim, HZ(10000)) // not real, but for simulating the MCU
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ilpag )
diff --git a/src/mame/drivers/imolagp.c b/src/mame/drivers/imolagp.c
index e368c80018f..2e0aa6a6bfa 100644
--- a/src/mame/drivers/imolagp.c
+++ b/src/mame/drivers/imolagp.c
@@ -552,8 +552,7 @@ static MACHINE_RESET( imolagp )
#endif
}
-static MACHINE_DRIVER_START( imolagp )
- MDRV_DRIVER_DATA(imolagp_state)
+static MACHINE_CONFIG_START( imolagp, imolagp_state )
MDRV_CPU_ADD("maincpu", Z80,8000000) /* ? */
MDRV_CPU_PROGRAM_MAP(imolagp_master)
@@ -585,7 +584,7 @@ static MACHINE_DRIVER_START( imolagp )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( imolagp )
ROM_REGION( 0x10000, "maincpu", 0 ) /* Z80 code */
diff --git a/src/mame/drivers/intrscti.c b/src/mame/drivers/intrscti.c
index 3f4364b1c28..e7661e2c29e 100644
--- a/src/mame/drivers/intrscti.c
+++ b/src/mame/drivers/intrscti.c
@@ -80,7 +80,7 @@ static VIDEO_UPDATE(intrscti)
return 0;
}
-static MACHINE_DRIVER_START( intrscti )
+static MACHINE_CONFIG_START( intrscti, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,4000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(intrscti_map)
@@ -100,7 +100,7 @@ static MACHINE_DRIVER_START( intrscti )
MDRV_VIDEO_START(intrscti)
MDRV_VIDEO_UPDATE(intrscti)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( intrscti )
diff --git a/src/mame/drivers/inufuku.c b/src/mame/drivers/inufuku.c
index 3722b4c2484..46ac82ef9b2 100644
--- a/src/mame/drivers/inufuku.c
+++ b/src/mame/drivers/inufuku.c
@@ -348,10 +348,7 @@ static MACHINE_RESET( inufuku )
state->tx_palettebank = 0;
}
-static MACHINE_DRIVER_START( inufuku )
-
- /* driver data */
- MDRV_DRIVER_DATA(inufuku_state)
+static MACHINE_CONFIG_START( inufuku, inufuku_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 32000000/2) /* 16.00 MHz */
@@ -390,7 +387,7 @@ static MACHINE_DRIVER_START( inufuku )
MDRV_SOUND_ROUTE(0, "mono", 0.50)
MDRV_SOUND_ROUTE(1, "mono", 0.75)
MDRV_SOUND_ROUTE(2, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************
diff --git a/src/mame/drivers/iqblock.c b/src/mame/drivers/iqblock.c
index 30a6f66a39b..43351df2b84 100644
--- a/src/mame/drivers/iqblock.c
+++ b/src/mame/drivers/iqblock.c
@@ -265,7 +265,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( iqblock )
+static MACHINE_CONFIG_START( iqblock, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6 MHz */
@@ -294,7 +294,7 @@ static MACHINE_DRIVER_START( iqblock )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/irobot.c b/src/mame/drivers/irobot.c
index 1768edb1700..3ba2633ac0c 100644
--- a/src/mame/drivers/irobot.c
+++ b/src/mame/drivers/irobot.c
@@ -287,7 +287,7 @@ static const pokey_interface pokey_config =
*
*************************************/
-static MACHINE_DRIVER_START( irobot )
+static MACHINE_CONFIG_START( irobot, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CLOCK/8)
@@ -329,7 +329,7 @@ static MACHINE_DRIVER_START( irobot )
MDRV_SOUND_ADD("pokey4", POKEY, MAIN_CLOCK/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ironhors.c b/src/mame/drivers/ironhors.c
index 853572cae7b..c7f762bece2 100644
--- a/src/mame/drivers/ironhors.c
+++ b/src/mame/drivers/ironhors.c
@@ -376,10 +376,7 @@ static MACHINE_RESET( ironhors )
state->spriterambank = 0;
}
-static MACHINE_DRIVER_START( ironhors )
-
- /* driver data */
- MDRV_DRIVER_DATA(ironhors_state)
+static MACHINE_CONFIG_START( ironhors, ironhors_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809,18432000/6) /* 3.072 MHz??? mod by Shingo Suzuki 1999/10/15 */
@@ -423,7 +420,7 @@ static MACHINE_DRIVER_START( ironhors )
MDRV_SOUND_CONFIG_DISCRETE(ironhors)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INTERRUPT_GEN( farwest_interrupt )
{
@@ -463,8 +460,7 @@ static const ym2203_interface farwest_ym2203_config =
-static MACHINE_DRIVER_START( farwest )
- MDRV_IMPORT_FROM(ironhors)
+static MACHINE_CONFIG_DERIVED( farwest, ironhors )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(farwest_master_map)
@@ -480,7 +476,7 @@ static MACHINE_DRIVER_START( farwest )
MDRV_SOUND_MODIFY("ym2203")
MDRV_SOUND_CONFIG(farwest_ym2203_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/istellar.c b/src/mame/drivers/istellar.c
index 433f18228f4..cf7bc058774 100644
--- a/src/mame/drivers/istellar.c
+++ b/src/mame/drivers/istellar.c
@@ -321,7 +321,7 @@ static INTERRUPT_GEN( vblank_callback_istellar )
/* DRIVER */
-static MACHINE_DRIVER_START( istellar )
+static MACHINE_CONFIG_START( istellar, driver_data_t )
/* main cpu */
MDRV_CPU_ADD("maincpu", Z80, GUESSED_CLOCK)
MDRV_CPU_PROGRAM_MAP(z80_0_mem)
@@ -357,7 +357,7 @@ static MACHINE_DRIVER_START( istellar )
MDRV_SOUND_ADD("ldsound", LASERDISC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* There is a photo of the PCB with blurry IC locations and labels. Comments reflect what I can (barely) see. */
diff --git a/src/mame/drivers/itech32.c b/src/mame/drivers/itech32.c
index f7b49f0e77d..c6cb7ea9fd4 100644
--- a/src/mame/drivers/itech32.c
+++ b/src/mame/drivers/itech32.c
@@ -1728,7 +1728,7 @@ static const es5506_interface es5506_config =
*
*************************************/
-static MACHINE_DRIVER_START( timekill )
+static MACHINE_CONFIG_START( timekill, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CPU_CLOCK)
@@ -1763,26 +1763,24 @@ static MACHINE_DRIVER_START( timekill )
/* via */
MDRV_VIA6522_ADD("via6522_0", SOUND_CLOCK/8, via_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bloodstm )
+static MACHINE_CONFIG_DERIVED( bloodstm, timekill )
/* basic machine hardware */
- MDRV_IMPORT_FROM(timekill)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(bloodstm_map)
/* video hardware */
MDRV_PALETTE_LENGTH(32768)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( drivedge )
+static MACHINE_CONFIG_DERIVED( drivedge, bloodstm )
/* basic machine hardware */
- MDRV_IMPORT_FROM(bloodstm)
MDRV_CPU_REPLACE("maincpu", M68EC020, CPU020_CLOCK)
MDRV_CPU_PROGRAM_MAP(drivedge_map)
@@ -1797,13 +1795,12 @@ static MACHINE_DRIVER_START( drivedge )
MDRV_MACHINE_RESET(drivedge)
MDRV_QUANTUM_TIME(HZ(6000))
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sftm )
+static MACHINE_CONFIG_DERIVED( sftm, bloodstm )
/* basic machine hardware */
- MDRV_IMPORT_FROM(bloodstm)
MDRV_CPU_REPLACE("maincpu", M68EC020, CPU020_CLOCK)
MDRV_CPU_PROGRAM_MAP(itech020_map)
@@ -1817,16 +1814,15 @@ static MACHINE_DRIVER_START( sftm )
/* via */
MDRV_DEVICE_REMOVE("via6522_0")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tourny )
+static MACHINE_CONFIG_DERIVED( tourny, sftm )
/* basic machine hardware */
- MDRV_IMPORT_FROM(sftm)
MDRV_M48T02_ADD( "m48t02" )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/itech8.c b/src/mame/drivers/itech8.c
index a4db34814b4..336e29c23eb 100644
--- a/src/mame/drivers/itech8.c
+++ b/src/mame/drivers/itech8.c
@@ -1714,7 +1714,7 @@ static const ym3812_interface ym3812_config =
/************* core pieces ******************/
-static MACHINE_DRIVER_START( itech8_core_lo )
+static MACHINE_CONFIG_START( itech8_core_lo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, CLOCK_8MHz/4)
@@ -1742,19 +1742,18 @@ static MACHINE_DRIVER_START( itech8_core_lo )
/* via */
MDRV_VIA6522_ADD("via6522_0", CLOCK_8MHz/4, via_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( itech8_core_hi )
+static MACHINE_CONFIG_DERIVED( itech8_core_hi, itech8_core_lo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_lo)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tmshi_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( itech8_sound_ym2203 )
+static MACHINE_CONFIG_FRAGMENT( itech8_sound_ym2203 )
/* basic machine hardware */
MDRV_CPU_ADD("soundcpu", M6809, CLOCK_8MHz/4)
@@ -1770,10 +1769,10 @@ static MACHINE_DRIVER_START( itech8_sound_ym2203 )
MDRV_OKIM6295_ADD("oki", CLOCK_8MHz/8, OKIM6295_PIN7_HIGH) // was /128, not /132, so unsure so pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( itech8_sound_ym2608b )
+static MACHINE_CONFIG_FRAGMENT( itech8_sound_ym2608b )
/* basic machine hardware */
MDRV_CPU_ADD("soundcpu", M6809, CLOCK_8MHz/4)
@@ -1783,10 +1782,10 @@ static MACHINE_DRIVER_START( itech8_sound_ym2608b )
MDRV_SOUND_ADD("ymsnd", YM2608, CLOCK_8MHz)
MDRV_SOUND_CONFIG(ym2608b_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( itech8_sound_ym3812 )
+static MACHINE_CONFIG_FRAGMENT( itech8_sound_ym3812 )
/* basic machine hardware */
MDRV_CPU_ADD("soundcpu", M6809, CLOCK_8MHz/4)
@@ -1801,10 +1800,10 @@ static MACHINE_DRIVER_START( itech8_sound_ym3812 )
MDRV_OKIM6295_ADD("oki", CLOCK_8MHz/8, OKIM6295_PIN7_HIGH) // was /128, not /132, so unsure so pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( itech8_sound_ym3812_external )
+static MACHINE_CONFIG_FRAGMENT( itech8_sound_ym3812_external )
/* basic machine hardware */
MDRV_CPU_ADD("soundcpu", M6809, CLOCK_8MHz/4)
@@ -1817,29 +1816,27 @@ static MACHINE_DRIVER_START( itech8_sound_ym3812_external )
MDRV_OKIM6295_ADD("oki", CLOCK_8MHz/8, OKIM6295_PIN7_HIGH) // was /128, not /132, so unsure so pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/************* full drivers ******************/
-static MACHINE_DRIVER_START( wfortune )
+static MACHINE_CONFIG_DERIVED( wfortune, itech8_core_hi )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_hi)
- MDRV_IMPORT_FROM(itech8_sound_ym2203)
+ MDRV_FRAGMENT_ADD(itech8_sound_ym2203)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2layer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( grmatch )
+static MACHINE_CONFIG_DERIVED( grmatch, itech8_core_hi )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_hi)
- MDRV_IMPORT_FROM(itech8_sound_ym2608b)
+ MDRV_FRAGMENT_ADD(itech8_sound_ym2608b)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
@@ -1848,40 +1845,37 @@ static MACHINE_DRIVER_START( grmatch )
/* palette updater */
MDRV_TIMER_ADD_SCANLINE("palette", grmatch_palette_update, "screen", 0, 0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( stratab_hi )
+static MACHINE_CONFIG_DERIVED( stratab_hi, itech8_core_hi )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_hi)
- MDRV_IMPORT_FROM(itech8_sound_ym2203)
+ MDRV_FRAGMENT_ADD(itech8_sound_ym2203)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2layer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( stratab_lo )
+static MACHINE_CONFIG_DERIVED( stratab_lo, itech8_core_lo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_lo)
- MDRV_IMPORT_FROM(itech8_sound_ym2203)
+ MDRV_FRAGMENT_ADD(itech8_sound_ym2203)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2layer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( slikshot_hi )
+static MACHINE_CONFIG_DERIVED( slikshot_hi, itech8_core_hi )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_hi)
- MDRV_IMPORT_FROM(itech8_sound_ym2203)
+ MDRV_FRAGMENT_ADD(itech8_sound_ym2203)
MDRV_CPU_ADD("sub", Z80, CLOCK_8MHz/2)
MDRV_CPU_PROGRAM_MAP(slikz80_mem_map)
@@ -1892,14 +1886,13 @@ static MACHINE_DRIVER_START( slikshot_hi )
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_START(slikshot)
MDRV_VIDEO_UPDATE(slikshot)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( slikshot_lo )
+static MACHINE_CONFIG_DERIVED( slikshot_lo, itech8_core_lo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_lo)
- MDRV_IMPORT_FROM(itech8_sound_ym2203)
+ MDRV_FRAGMENT_ADD(itech8_sound_ym2203)
MDRV_CPU_ADD("sub", Z80, CLOCK_8MHz/2)
MDRV_CPU_PROGRAM_MAP(slikz80_mem_map)
@@ -1910,62 +1903,57 @@ static MACHINE_DRIVER_START( slikshot_lo )
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_START(slikshot)
MDRV_VIDEO_UPDATE(slikshot)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( slikshot_lo_noz80 )
+static MACHINE_CONFIG_DERIVED( slikshot_lo_noz80, itech8_core_lo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_lo)
- MDRV_IMPORT_FROM(itech8_sound_ym2203)
+ MDRV_FRAGMENT_ADD(itech8_sound_ym2203)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2page)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sstrike )
+static MACHINE_CONFIG_DERIVED( sstrike, slikshot_lo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(slikshot_lo)
MDRV_MACHINE_START(sstrike)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hstennis_hi )
+static MACHINE_CONFIG_DERIVED( hstennis_hi, itech8_core_hi )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_hi)
- MDRV_IMPORT_FROM(itech8_sound_ym3812)
+ MDRV_FRAGMENT_ADD(itech8_sound_ym3812)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 399, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2page_large)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hstennis_lo )
+static MACHINE_CONFIG_DERIVED( hstennis_lo, itech8_core_lo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_lo)
- MDRV_IMPORT_FROM(itech8_sound_ym3812)
+ MDRV_FRAGMENT_ADD(itech8_sound_ym3812)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 399, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2page_large)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rimrockn )
+static MACHINE_CONFIG_DERIVED( rimrockn, itech8_core_hi )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_hi)
- MDRV_IMPORT_FROM(itech8_sound_ym3812_external)
+ MDRV_FRAGMENT_ADD(itech8_sound_ym3812_external)
MDRV_CPU_REPLACE("maincpu", HD6309, CLOCK_12MHz)
MDRV_CPU_PROGRAM_MAP(tmshi_map)
@@ -1975,14 +1963,13 @@ static MACHINE_DRIVER_START( rimrockn )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(24, 375, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2page_large)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ninclown )
+static MACHINE_CONFIG_DERIVED( ninclown, itech8_core_hi )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_hi)
- MDRV_IMPORT_FROM(itech8_sound_ym3812_external)
+ MDRV_FRAGMENT_ADD(itech8_sound_ym3812_external)
MDRV_CPU_REPLACE("maincpu", M68000, CLOCK_12MHz)
MDRV_CPU_PROGRAM_MAP(ninclown_map)
@@ -1992,14 +1979,13 @@ static MACHINE_DRIVER_START( ninclown )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(64, 423, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2page_large)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gtg2 )
+static MACHINE_CONFIG_DERIVED( gtg2, itech8_core_lo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(itech8_core_lo)
- MDRV_IMPORT_FROM(itech8_sound_ym3812_external)
+ MDRV_FRAGMENT_ADD(itech8_sound_ym3812_external)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gtg2_map)
@@ -2008,7 +1994,7 @@ static MACHINE_DRIVER_START( gtg2 )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2layer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/itgambl2.c b/src/mame/drivers/itgambl2.c
index 0cbf5d55226..ad7a3282a2e 100644
--- a/src/mame/drivers/itgambl2.c
+++ b/src/mame/drivers/itgambl2.c
@@ -247,7 +247,7 @@ static PALETTE_INIT( itgambl2 )
* Machine Drivers *
**************************/
-static MACHINE_DRIVER_START( itgambl2 )
+static MACHINE_CONFIG_START( itgambl2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H83044, MAIN_CLOCK) /* wrong CPU, but we have not a H8/3337 core ATM */
@@ -272,7 +272,7 @@ static MACHINE_DRIVER_START( itgambl2 )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/itgambl3.c b/src/mame/drivers/itgambl3.c
index ec98498a087..2ccd677fac5 100644
--- a/src/mame/drivers/itgambl3.c
+++ b/src/mame/drivers/itgambl3.c
@@ -236,7 +236,7 @@ static PALETTE_INIT( itgambl3 )
* Machine Drivers *
**************************/
-static MACHINE_DRIVER_START( itgambl3 )
+static MACHINE_CONFIG_START( itgambl3, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H83044, MAIN_CLOCK) /* wrong CPU, but we have not a M16C core ATM */
@@ -261,7 +261,7 @@ static MACHINE_DRIVER_START( itgambl3 )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", MAIN_CLOCK/16, OKIM6295_PIN7_HIGH) /* 1MHz */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/itgamble.c b/src/mame/drivers/itgamble.c
index 0f0dc952e3c..0cd5fb383d6 100644
--- a/src/mame/drivers/itgamble.c
+++ b/src/mame/drivers/itgamble.c
@@ -179,7 +179,7 @@ static MACHINE_RESET( itgamble )
* Machine Drivers *
**************************/
-static MACHINE_DRIVER_START( itgamble )
+static MACHINE_CONFIG_START( itgamble, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H83044, MAIN_CLOCK/2) /* probably the wrong CPU */
@@ -203,31 +203,27 @@ static MACHINE_DRIVER_START( itgamble )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", SND_CLOCK, OKIM6295_PIN7_HIGH) /* 1MHz resonator */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mnumber )
-
- MDRV_IMPORT_FROM(itgamble)
+static MACHINE_CONFIG_DERIVED( mnumber, itgamble )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(MNUMBER_MAIN_CLOCK/2) /* probably the wrong CPU */
MDRV_OKIM6295_REPLACE("oki", MNUMBER_SND_CLOCK/16, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#ifdef UNUSED_CODE
-static MACHINE_DRIVER_START( ejollyx5 )
-
- MDRV_IMPORT_FROM(itgamble)
+static MACHINE_CONFIG_DERIVED( ejollyx5, itgamble )
/* wrong CPU. we need a Renesas M16/62A 16bit microcomputer core */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(EJOLLYX5_MAIN_CLOCK/2) /* up to 10MHz.*/
MDRV_OKIM6295_REPLACE("oki", MNUMBER_SND_CLOCK/16, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#endif
diff --git a/src/mame/drivers/jack.c b/src/mame/drivers/jack.c
index d075bf04665..7210373ffee 100644
--- a/src/mame/drivers/jack.c
+++ b/src/mame/drivers/jack.c
@@ -817,10 +817,7 @@ static MACHINE_RESET( jack )
state->remap_address[i] = 0;
}
-static MACHINE_DRIVER_START( jack )
-
- /* driver data */
- MDRV_DRIVER_DATA(jack_state)
+static MACHINE_CONFIG_START( jack, jack_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18000000/6) /* 3 MHz */
@@ -854,15 +851,14 @@ static MACHINE_DRIVER_START( jack )
MDRV_SOUND_ADD("aysnd", AY8910, 18000000/12)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tripool )
+static MACHINE_CONFIG_DERIVED( tripool, jack )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jack)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT_HACK(irq0_line_hold,2) /* tripool needs 2 or the palette is broken */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INTERRUPT_GEN( joinem_interrupts )
{
@@ -875,10 +871,9 @@ static INTERRUPT_GEN( joinem_interrupts )
}
}
-static MACHINE_DRIVER_START( joinem )
+static MACHINE_CONFIG_DERIVED( joinem, jack )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jack)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(joinem_map)
MDRV_CPU_VBLANK_INT_HACK(joinem_interrupts,3)
@@ -892,13 +887,12 @@ static MACHINE_DRIVER_START( joinem )
MDRV_PALETTE_INIT(joinem)
MDRV_VIDEO_START(joinem)
MDRV_VIDEO_UPDATE(joinem)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( loverboy )
+static MACHINE_CONFIG_DERIVED( loverboy, jack )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jack)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(joinem_map)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
@@ -912,7 +906,7 @@ static MACHINE_DRIVER_START( loverboy )
MDRV_PALETTE_INIT(joinem)
MDRV_VIDEO_START(joinem)
MDRV_VIDEO_UPDATE(joinem)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/jackal.c b/src/mame/drivers/jackal.c
index 7a16b3a6198..7a546778e6f 100644
--- a/src/mame/drivers/jackal.c
+++ b/src/mame/drivers/jackal.c
@@ -363,10 +363,7 @@ static MACHINE_RESET( jackal )
state->irq_enable = 0;
}
-static MACHINE_DRIVER_START( jackal )
-
- /* driver data */
- MDRV_DRIVER_DATA(jackal_state)
+static MACHINE_CONFIG_START( jackal, jackal_state )
/* basic machine hardware */
MDRV_CPU_ADD("master", M6809, MASTER_CLOCK/12) // verified on pcb
@@ -402,7 +399,7 @@ static MACHINE_DRIVER_START( jackal )
MDRV_SOUND_ADD("ymsnd", YM2151, SOUND_CLOCK) // verified on pcb
MDRV_SOUND_ROUTE(0, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/jackie.c b/src/mame/drivers/jackie.c
index dc0fdca6d6e..091f761cf46 100644
--- a/src/mame/drivers/jackie.c
+++ b/src/mame/drivers/jackie.c
@@ -519,7 +519,7 @@ static DRIVER_INIT( jackie )
}
-static MACHINE_DRIVER_START( jackie )
+static MACHINE_CONFIG_START( jackie, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz / 2)
@@ -548,7 +548,7 @@ static MACHINE_DRIVER_START( jackie )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( jackie )
diff --git a/src/mame/drivers/jackpool.c b/src/mame/drivers/jackpool.c
index 4d8a3988f86..ee5d11df942 100644
--- a/src/mame/drivers/jackpool.c
+++ b/src/mame/drivers/jackpool.c
@@ -239,7 +239,7 @@ static INTERRUPT_GEN( jackpool_interrupt )
}
-static MACHINE_DRIVER_START( jackpool )
+static MACHINE_CONFIG_START( jackpool, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 12000000) // ?
MDRV_CPU_PROGRAM_MAP(jackpool_mem)
MDRV_CPU_VBLANK_INT("screen",jackpool_interrupt) // ?
@@ -264,7 +264,7 @@ static MACHINE_DRIVER_START( jackpool )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( jackpool )
diff --git a/src/mame/drivers/jailbrek.c b/src/mame/drivers/jailbrek.c
index 859369462cc..03e87dd50a8 100644
--- a/src/mame/drivers/jailbrek.c
+++ b/src/mame/drivers/jailbrek.c
@@ -251,10 +251,7 @@ static MACHINE_RESET( jailbrek )
state->nmi_enable = 0;
}
-static MACHINE_DRIVER_START( jailbrek )
-
- /* driver data */
- MDRV_DRIVER_DATA(jailbrek_state)
+static MACHINE_CONFIG_START( jailbrek, jailbrek_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/12)
@@ -285,7 +282,7 @@ static MACHINE_DRIVER_START( jailbrek )
MDRV_SOUND_ADD("vlm", VLM5030, VOICE_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/jalmah.c b/src/mame/drivers/jalmah.c
index 26c9d5fb11c..0c1dfd82da5 100644
--- a/src/mame/drivers/jalmah.c
+++ b/src/mame/drivers/jalmah.c
@@ -1302,7 +1302,7 @@ static MACHINE_RESET ( jalmah )
}
}
-static MACHINE_DRIVER_START( jalmah )
+static MACHINE_CONFIG_START( jalmah, driver_data_t )
MDRV_CPU_ADD("maincpu" , M68000, 12000000) /* 68000-8 */
MDRV_CPU_PROGRAM_MAP(jalmah)
MDRV_CPU_VBLANK_INT("screen", irq2_line_hold)
@@ -1329,10 +1329,9 @@ static MACHINE_DRIVER_START( jalmah )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", 4000000, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( urashima )
- MDRV_IMPORT_FROM(jalmah)
+static MACHINE_CONFIG_DERIVED( urashima, jalmah )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(urashima)
@@ -1341,7 +1340,7 @@ static MACHINE_DRIVER_START( urashima )
MDRV_VIDEO_START(urashima)
MDRV_VIDEO_UPDATE(urashima)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/jangou.c b/src/mame/drivers/jangou.c
index a8032ea4155..4818e452392 100644
--- a/src/mame/drivers/jangou.c
+++ b/src/mame/drivers/jangou.c
@@ -979,10 +979,7 @@ static MACHINE_RESET( jngolady )
}
/* Note: All frequencies and dividers are unverified */
-static MACHINE_DRIVER_START( jangou )
-
- /* driver data */
- MDRV_DRIVER_DATA(jangou_state)
+static MACHINE_CONFIG_START( jangou, jangou_state )
/* basic machine hardware */
MDRV_CPU_ADD("cpu0", Z80, MASTER_CLOCK / 8)
@@ -1023,11 +1020,11 @@ static MACHINE_DRIVER_START( jangou )
MDRV_SOUND_ADD("cvsd", HC55516, MASTER_CLOCK / 1024)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( jngolady, jangou )
-static MACHINE_DRIVER_START( jngolady )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jangou)
MDRV_CPU_MODIFY("cpu0")
MDRV_CPU_PROGRAM_MAP(jngolady_cpu0_map)
@@ -1049,11 +1046,11 @@ static MACHINE_DRIVER_START( jngolady )
MDRV_SOUND_ADD("msm", MSM5205, XTAL_400kHz)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( cntrygrl, jangou )
-static MACHINE_DRIVER_START( cntrygrl )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jangou)
MDRV_CPU_MODIFY("cpu0")
MDRV_CPU_PROGRAM_MAP(cntrygrl_cpu0_map )
@@ -1067,11 +1064,11 @@ static MACHINE_DRIVER_START( cntrygrl )
/* sound hardware */
MDRV_SOUND_START(0)
MDRV_DEVICE_REMOVE("cvsd")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( roylcrdn, jangou )
-static MACHINE_DRIVER_START( roylcrdn )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jangou)
MDRV_CPU_MODIFY("cpu0")
MDRV_CPU_PROGRAM_MAP(roylcrdn_cpu0_map )
@@ -1087,7 +1084,7 @@ static MACHINE_DRIVER_START( roylcrdn )
/* sound hardware */
MDRV_SOUND_START(0)
MDRV_DEVICE_REMOVE("cvsd")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/jantotsu.c b/src/mame/drivers/jantotsu.c
index 3e7834a6aa8..1bf1ad7bd15 100644
--- a/src/mame/drivers/jantotsu.c
+++ b/src/mame/drivers/jantotsu.c
@@ -503,10 +503,7 @@ static MACHINE_RESET( jantotsu )
state->adpcm_trigger = 0;
}
-static MACHINE_DRIVER_START( jantotsu )
-
- /* driver data */
- MDRV_DRIVER_DATA(jantotsu_state)
+static MACHINE_CONFIG_START( jantotsu, jantotsu_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,18432000/4)
@@ -543,7 +540,7 @@ static MACHINE_DRIVER_START( jantotsu )
MDRV_SOUND_ADD("adpcm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/jchan.c b/src/mame/drivers/jchan.c
index f7c4b80bf9f..2101029d5c4 100644
--- a/src/mame/drivers/jchan.c
+++ b/src/mame/drivers/jchan.c
@@ -655,7 +655,7 @@ static const ymz280b_interface ymz280b_intf =
/* machine driver */
-static MACHINE_DRIVER_START( jchan )
+static MACHINE_CONFIG_START( jchan, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 16000000)
MDRV_CPU_PROGRAM_MAP(jchan_main)
@@ -686,7 +686,7 @@ static MACHINE_DRIVER_START( jchan )
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* rom loading */
diff --git a/src/mame/drivers/jedi.c b/src/mame/drivers/jedi.c
index 0878ee72c5f..5cfb62637ff 100644
--- a/src/mame/drivers/jedi.c
+++ b/src/mame/drivers/jedi.c
@@ -341,9 +341,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( jedi )
-
- MDRV_DRIVER_DATA(jedi_state)
+static MACHINE_CONFIG_START( jedi, jedi_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, JEDI_MAIN_CPU_CLOCK)
@@ -356,11 +354,11 @@ static MACHINE_DRIVER_START( jedi )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_IMPORT_FROM(jedi_video)
+ MDRV_FRAGMENT_ADD(jedi_video)
/* audio hardware */
- MDRV_IMPORT_FROM(jedi_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jedi_audio)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/jokrwild.c b/src/mame/drivers/jokrwild.c
index 7999ccc7c27..5d27b6bf134 100644
--- a/src/mame/drivers/jokrwild.c
+++ b/src/mame/drivers/jokrwild.c
@@ -454,7 +454,7 @@ static const mc6845_interface mc6845_intf =
* Machine Drivers *
*************************/
-static MACHINE_DRIVER_START( jokrwild )
+static MACHINE_CONFIG_START( jokrwild, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/2) /* guess */
@@ -482,7 +482,7 @@ static MACHINE_DRIVER_START( jokrwild )
MDRV_MC6845_ADD("crtc", MC6845, MASTER_CLOCK/16, mc6845_intf) /* guess */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/jollyjgr.c b/src/mame/drivers/jollyjgr.c
index cd1f03ca3ef..6d65257b039 100644
--- a/src/mame/drivers/jollyjgr.c
+++ b/src/mame/drivers/jollyjgr.c
@@ -638,10 +638,7 @@ static MACHINE_RESET( jollyjgr )
state->tilemap_bank = 0;
}
-static MACHINE_DRIVER_START( jollyjgr )
-
- /* driver data */
- MDRV_DRIVER_DATA(jollyjgr_state)
+static MACHINE_CONFIG_START( jollyjgr, jollyjgr_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3579545) /* 3,579545 MHz */
@@ -671,17 +668,16 @@ static MACHINE_DRIVER_START( jollyjgr )
MDRV_SOUND_ADD("aysnd", AY8910, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fspider )
- MDRV_IMPORT_FROM( jollyjgr )
+static MACHINE_CONFIG_DERIVED( fspider, jollyjgr )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(fspider_map)
MDRV_VIDEO_UPDATE(fspider)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/jongkyo.c b/src/mame/drivers/jongkyo.c
index 8027ca7b6be..a0286627ba4 100644
--- a/src/mame/drivers/jongkyo.c
+++ b/src/mame/drivers/jongkyo.c
@@ -486,10 +486,7 @@ static MACHINE_RESET( jongkyo )
}
-static MACHINE_DRIVER_START( jongkyo )
-
- /* driver data */
- MDRV_DRIVER_DATA(jongkyo_state)
+static MACHINE_CONFIG_START( jongkyo, jongkyo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,JONGKYO_CLOCK/4)
@@ -518,7 +515,7 @@ static MACHINE_DRIVER_START( jongkyo )
MDRV_SOUND_ADD("aysnd", AY8910, JONGKYO_CLOCK/8)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/jpmimpct.c b/src/mame/drivers/jpmimpct.c
index 6eca96b6f5e..7652e8d3be8 100644
--- a/src/mame/drivers/jpmimpct.c
+++ b/src/mame/drivers/jpmimpct.c
@@ -845,7 +845,7 @@ static const tms34010_config tms_config =
*
*************************************/
-static MACHINE_DRIVER_START( jpmimpct )
+static MACHINE_CONFIG_START( jpmimpct, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(m68k_program_map)
@@ -871,7 +871,7 @@ static MACHINE_DRIVER_START( jpmimpct )
MDRV_VIDEO_START(jpmimpct)
MDRV_VIDEO_UPDATE(tms340x0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
@@ -1321,7 +1321,7 @@ ADDRESS_MAP_END
*
*************************************/
-static MACHINE_DRIVER_START( impctawp )
+static MACHINE_CONFIG_START( impctawp, driver_data_t )
MDRV_CPU_ADD("maincpu",M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(awp68k_program_map)
@@ -1339,7 +1339,7 @@ static MACHINE_DRIVER_START( impctawp )
MDRV_SOUND_ADD("upd",UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MDRV_DEFAULT_LAYOUT(layout_awpvid16)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/jpmsys5.c b/src/mame/drivers/jpmsys5.c
index 0e99594b2f2..3ef624291c6 100644
--- a/src/mame/drivers/jpmsys5.c
+++ b/src/mame/drivers/jpmsys5.c
@@ -594,7 +594,7 @@ static MACHINE_RESET( jpmsys5v )
*
*************************************/
-static MACHINE_DRIVER_START( jpmsys5v )
+static MACHINE_CONFIG_START( jpmsys5v, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(68000_map)
@@ -627,7 +627,7 @@ static MACHINE_DRIVER_START( jpmsys5v )
/* 6840 PTM */
MDRV_PTM6840_ADD("6840ptm", ptm_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/jrpacman.c b/src/mame/drivers/jrpacman.c
index 2c4086a378f..f9c4bb0d352 100644
--- a/src/mame/drivers/jrpacman.c
+++ b/src/mame/drivers/jrpacman.c
@@ -263,7 +263,7 @@ static const namco_interface namco_config =
*
*************************************/
-static MACHINE_DRIVER_START( jrpacman )
+static MACHINE_CONFIG_START( jrpacman, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
@@ -292,7 +292,7 @@ static MACHINE_DRIVER_START( jrpacman )
MDRV_SOUND_ADD("namco", NAMCO, 3072000/32)
MDRV_SOUND_CONFIG(namco_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/junofrst.c b/src/mame/drivers/junofrst.c
index 2969cb7d9b8..d4cacf5a099 100644
--- a/src/mame/drivers/junofrst.c
+++ b/src/mame/drivers/junofrst.c
@@ -310,10 +310,7 @@ static MACHINE_RESET( junofrst )
state->blitterdata[3] = 0;
}
-static MACHINE_DRIVER_START( junofrst )
-
- /* driver data */
- MDRV_DRIVER_DATA(timeplt_state)
+static MACHINE_CONFIG_START( junofrst, timeplt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 1500000) /* 1.5 MHz ??? */
@@ -358,7 +355,7 @@ static MACHINE_DRIVER_START( junofrst )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_SOUND_ADD("filter.0.2", FILTER_RC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( junofrst )
diff --git a/src/mame/drivers/kaneko16.c b/src/mame/drivers/kaneko16.c
index eca1967a1cc..fc7c1d418d4 100644
--- a/src/mame/drivers/kaneko16.c
+++ b/src/mame/drivers/kaneko16.c
@@ -1799,7 +1799,7 @@ static const ay8910_interface ay8910_intf_eeprom =
6-7] rte
*/
-static MACHINE_DRIVER_START( berlwall )
+static MACHINE_CONFIG_START( berlwall, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* MC68000P12 */
@@ -1838,14 +1838,14 @@ static MACHINE_DRIVER_START( berlwall )
MDRV_OKIM6295_ADD("oki", 12000000/6, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Bakuretsu Breaker
***************************************************************************/
-static MACHINE_DRIVER_START( bakubrkr )
+static MACHINE_CONFIG_START( bakubrkr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz) /* verified on pcb */
@@ -1883,7 +1883,7 @@ static MACHINE_DRIVER_START( bakubrkr )
MDRV_OKIM6295_ADD("oki", XTAL_12MHz/6, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -1900,7 +1900,7 @@ MACHINE_DRIVER_END
6-7] busy loop
*/
-static MACHINE_DRIVER_START( blazeon )
+static MACHINE_CONFIG_START( blazeon, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000) /* TMP68HC000-12 */
@@ -1935,7 +1935,7 @@ static MACHINE_DRIVER_START( blazeon )
MDRV_SOUND_ADD("ymsnd", YM2151, 4000000)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1953,7 +1953,7 @@ MACHINE_DRIVER_END
VIDEO_UPDATE_AFTER_VBLANK fixes the mangled/wrong colored sprites
*/
-static MACHINE_DRIVER_START( gtmr )
+static MACHINE_CONFIG_START( gtmr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("gtmr", M68000, XTAL_16MHz) /* verified on pcb */
@@ -1986,33 +1986,31 @@ static MACHINE_DRIVER_START( gtmr )
MDRV_OKIM6295_ADD("oki2", XTAL_16MHz/8, OKIM6295_PIN7_LOW) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Blood Warrior
***************************************************************************/
-static MACHINE_DRIVER_START( bloodwar )
+static MACHINE_CONFIG_DERIVED( bloodwar, gtmr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gtmr)
MDRV_CPU_MODIFY("gtmr")
MDRV_CPU_PROGRAM_MAP(bloodwar)
MDRV_MACHINE_RESET( bloodwar )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Great 1000 Miles Rally 2
***************************************************************************/
-static MACHINE_DRIVER_START( gtmr2 )
+static MACHINE_CONFIG_DERIVED( gtmr2, gtmr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gtmr)
MDRV_CPU_MODIFY("gtmr")
MDRV_CPU_PROGRAM_MAP(gtmr2_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Bonk's Adventure
@@ -2028,22 +2026,21 @@ MACHINE_DRIVER_END
So now test mode is fully working and visible.
SebV
*/
-static MACHINE_DRIVER_START( bonkadv )
+static MACHINE_CONFIG_DERIVED( bonkadv, gtmr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gtmr)
MDRV_CPU_MODIFY("gtmr")
MDRV_CPU_PROGRAM_MAP(bonkadv)
MDRV_CPU_VBLANK_INT_HACK(kaneko16_interrupt,KANEKO16_INTERRUPTS_NUM + 1 ) // comment above
MDRV_MACHINE_RESET( bonkadv )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Magical Crystal
***************************************************************************/
-static MACHINE_DRIVER_START( mgcrystl )
+static MACHINE_CONFIG_START( mgcrystl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz) /* verified on pcb */
@@ -2081,7 +2078,7 @@ static MACHINE_DRIVER_START( mgcrystl )
MDRV_OKIM6295_ADD("oki", XTAL_12MHz/6, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2161,7 +2158,7 @@ static ADDRESS_MAP_START( shogwarr_oki2_map, 0, 8 )
AM_RANGE(0x00000, 0x3ffff) AM_ROMBANK("bank11")
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( shogwarr )
+static MACHINE_CONFIG_START( shogwarr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz)
@@ -2196,7 +2193,7 @@ static MACHINE_DRIVER_START( shogwarr )
MDRV_OKIM6295_ADD("oki2", XTAL_16MHz/8, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_DEVICE_ADDRESS_MAP(0, shogwarr_oki2_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const UINT8 brapboys_default_eeprom[128] = {
@@ -2215,15 +2212,14 @@ static ADDRESS_MAP_START( brapboys_oki2_map, 0, 8 )
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("bank11")
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( brapboys )
- MDRV_IMPORT_FROM(shogwarr)
+static MACHINE_CONFIG_DERIVED( brapboys, shogwarr )
MDRV_SOUND_MODIFY("oki2")
MDRV_DEVICE_ADDRESS_MAP(0, brapboys_oki2_map)
MDRV_DEVICE_REMOVE("eeprom")
MDRV_EEPROM_93C46_ADD("eeprom")
MDRV_EEPROM_DATA(brapboys_default_eeprom, 128)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/kangaroo.c b/src/mame/drivers/kangaroo.c
index 50664a7d1ea..9d6ae178ef7 100644
--- a/src/mame/drivers/kangaroo.c
+++ b/src/mame/drivers/kangaroo.c
@@ -427,10 +427,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( nomcu )
-
- /* driver data */
- MDRV_DRIVER_DATA(kangaroo_state)
+static MACHINE_CONFIG_START( nomcu, kangaroo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/4)
@@ -459,17 +456,16 @@ static MACHINE_DRIVER_START( nomcu )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mcu )
- MDRV_IMPORT_FROM(nomcu)
+static MACHINE_CONFIG_DERIVED( mcu, nomcu )
MDRV_MACHINE_START(kangaroo_mcu)
MDRV_CPU_ADD("mcu", MB8841, MASTER_CLOCK/4/2)
MDRV_DEVICE_DISABLE()
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/karnov.c b/src/mame/drivers/karnov.c
index aa34d7eef92..02a2e1ce6c1 100644
--- a/src/mame/drivers/karnov.c
+++ b/src/mame/drivers/karnov.c
@@ -810,10 +810,7 @@ static MACHINE_RESET( karnov )
}
-static MACHINE_DRIVER_START( karnov )
-
- /* driver data */
- MDRV_DRIVER_DATA(karnov_state)
+static MACHINE_CONFIG_START( karnov, karnov_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz */
@@ -852,13 +849,10 @@ static MACHINE_DRIVER_START( karnov )
MDRV_SOUND_ADD("ym2", YM3526, 3000000)
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wndrplnt )
- /* driver data */
- MDRV_DRIVER_DATA(karnov_state)
+static MACHINE_CONFIG_START( wndrplnt, karnov_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz */
@@ -897,7 +891,7 @@ static MACHINE_DRIVER_START( wndrplnt )
MDRV_SOUND_ADD("ym2", YM3526, 3000000)
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/kchamp.c b/src/mame/drivers/kchamp.c
index 26d117d1733..a7eca2ea624 100644
--- a/src/mame/drivers/kchamp.c
+++ b/src/mame/drivers/kchamp.c
@@ -418,10 +418,7 @@ static MACHINE_RESET( kchamp )
state->sound_nmi_enable = 0;
}
-static MACHINE_DRIVER_START( kchampvs )
-
- /* driver data */
- MDRV_DRIVER_DATA(kchamp_state)
+static MACHINE_CONFIG_START( kchampvs, kchamp_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/4) /* verified on pcb */
@@ -464,16 +461,13 @@ static MACHINE_DRIVER_START( kchampvs )
MDRV_SOUND_ADD("msm", MSM5205, 375000) /* verified on pcb, discrete circuit clock */
MDRV_SOUND_CONFIG(msm_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/********************
* 1 Player Version *
********************/
-static MACHINE_DRIVER_START( kchamp )
-
- /* driver data */
- MDRV_DRIVER_DATA(kchamp_state)
+static MACHINE_CONFIG_START( kchamp, kchamp_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3000000) /* 12MHz / 4 = 3.0 MHz */
@@ -517,7 +511,7 @@ static MACHINE_DRIVER_START( kchamp )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15) /* guess: using volume 0.50 makes the sound to clip a lot */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/kickgoal.c b/src/mame/drivers/kickgoal.c
index e3b9699a34e..013eb836e56 100644
--- a/src/mame/drivers/kickgoal.c
+++ b/src/mame/drivers/kickgoal.c
@@ -683,10 +683,7 @@ static MACHINE_RESET( kickgoal )
state->m6295_key_delay = 0;
}
-static MACHINE_DRIVER_START( kickgoal )
-
- /* driver data */
- MDRV_DRIVER_DATA(kickgoal_state)
+static MACHINE_CONFIG_START( kickgoal, kickgoal_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -723,12 +720,9 @@ static MACHINE_DRIVER_START( kickgoal )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", 12000000/8, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( actionhw )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(kickgoal_state)
+static MACHINE_CONFIG_START( actionhw, kickgoal_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz) /* verified on pcb */
@@ -764,7 +758,7 @@ static MACHINE_DRIVER_START( actionhw )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", XTAL_12MHz/12, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/kingdrby.c b/src/mame/drivers/kingdrby.c
index eea2dca4d82..7b0dd21b6b8 100644
--- a/src/mame/drivers/kingdrby.c
+++ b/src/mame/drivers/kingdrby.c
@@ -965,7 +965,7 @@ static PALETTE_INIT(kingdrbb)
}
}
-static MACHINE_DRIVER_START( kingdrby )
+static MACHINE_CONFIG_START( kingdrby, driver_data_t )
MDRV_CPU_ADD("master", Z80, CLK_2)
MDRV_CPU_PROGRAM_MAP(master_map)
MDRV_CPU_IO_MAP(master_io_map)
@@ -1009,10 +1009,9 @@ static MACHINE_DRIVER_START( kingdrby )
MDRV_SOUND_ADD("aysnd", AY8910, CLK_1/8) /* guess */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kingdrbb )
- MDRV_IMPORT_FROM( kingdrby )
+static MACHINE_CONFIG_DERIVED( kingdrbb, kingdrby )
MDRV_CPU_MODIFY("slave")
MDRV_CPU_PROGRAM_MAP(slave_1986_map)
@@ -1021,10 +1020,9 @@ static MACHINE_DRIVER_START( kingdrbb )
MDRV_PPI8255_RECONFIG( "ppi8255_0", ppi8255_1986_intf[0] )
MDRV_PPI8255_RECONFIG( "ppi8255_1", ppi8255_1986_intf[1] )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cowrace )
- MDRV_IMPORT_FROM( kingdrbb )
+static MACHINE_CONFIG_DERIVED( cowrace, kingdrbb )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_PROGRAM_MAP(cowrace_sound_map)
@@ -1039,7 +1037,7 @@ static MACHINE_DRIVER_START( cowrace )
MDRV_SOUND_REPLACE("aysnd", YM2203, 3000000)
MDRV_SOUND_CONFIG(cowrace_ym2203_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( kingdrby )
ROM_REGION( 0x3000, "master", 0 )
diff --git a/src/mame/drivers/kingobox.c b/src/mame/drivers/kingobox.c
index 18e9c2447a8..99dea992fa1 100644
--- a/src/mame/drivers/kingobox.c
+++ b/src/mame/drivers/kingobox.c
@@ -474,10 +474,7 @@ static MACHINE_RESET( kingofb )
state->palette_bank = 0;
}
-static MACHINE_DRIVER_START( kingofb )
-
- /* driver data */
- MDRV_DRIVER_DATA(kingofb_state)
+static MACHINE_CONFIG_START( kingofb, kingofb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4.0 MHz */
@@ -526,14 +523,11 @@ static MACHINE_DRIVER_START( kingofb )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Ring King */
-static MACHINE_DRIVER_START( ringking )
-
- /* driver data */
- MDRV_DRIVER_DATA(kingofb_state)
+static MACHINE_CONFIG_START( ringking, kingofb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4.0 MHz */
@@ -582,7 +576,7 @@ static MACHINE_DRIVER_START( ringking )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/kingpin.c b/src/mame/drivers/kingpin.c
index b97cbfe780b..fb32c4cee9e 100644
--- a/src/mame/drivers/kingpin.c
+++ b/src/mame/drivers/kingpin.c
@@ -138,7 +138,7 @@ static const TMS9928a_interface tms9928a_interface =
vdp_interrupt
};
-static MACHINE_DRIVER_START( kingpin )
+static MACHINE_CONFIG_START( kingpin, driver_data_t )
/* MAIN CPU */
MDRV_CPU_ADD("maincpu", Z80, 3579545)
MDRV_CPU_PROGRAM_MAP(kingpin_program_map)
@@ -151,7 +151,7 @@ static MACHINE_DRIVER_START( kingpin )
/*MDRV_CPU_IO_MAP(sound_io_map)*/
/* VIDEO */
- MDRV_IMPORT_FROM(tms9928a)
+ MDRV_FRAGMENT_ADD(tms9928a)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE(60)
@@ -168,7 +168,7 @@ static MACHINE_DRIVER_START( kingpin )
MDRV_SOUND_CONFIG(ay8912_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
*/
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT( kingpin )
{
diff --git a/src/mame/drivers/kinst.c b/src/mame/drivers/kinst.c
index 4a1802f6b3a..ddaef34876c 100644
--- a/src/mame/drivers/kinst.c
+++ b/src/mame/drivers/kinst.c
@@ -636,7 +636,7 @@ static const mips3_config r4600_config =
};
-static MACHINE_DRIVER_START( kinst )
+static MACHINE_CONFIG_START( kinst, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R4600LE, MASTER_CLOCK*2)
@@ -665,8 +665,8 @@ static MACHINE_DRIVER_START( kinst )
MDRV_VIDEO_UPDATE(kinst)
/* sound hardware */
- MDRV_IMPORT_FROM(dcs_audio_2k)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(dcs_audio_2k)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/klax.c b/src/mame/drivers/klax.c
index 7fc5ef1b9ca..1dbdd191925 100644
--- a/src/mame/drivers/klax.c
+++ b/src/mame/drivers/klax.c
@@ -164,8 +164,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( klax )
- MDRV_DRIVER_DATA(klax_state)
+static MACHINE_CONFIG_START( klax, klax_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -195,7 +194,7 @@ static MACHINE_DRIVER_START( klax )
MDRV_OKIM6295_ADD("oki", ATARI_CLOCK_14MHz/4/4, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/kncljoe.c b/src/mame/drivers/kncljoe.c
index 1561cf9aa2b..9fc5d53e69c 100644
--- a/src/mame/drivers/kncljoe.c
+++ b/src/mame/drivers/kncljoe.c
@@ -272,10 +272,7 @@ static MACHINE_RESET( kncljoe )
state->flipscreen = 0;
}
-static MACHINE_DRIVER_START( kncljoe )
-
- /* driver data */
- MDRV_DRIVER_DATA(kncljoe_state)
+static MACHINE_CONFIG_START( kncljoe, kncljoe_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_6MHz) /* verified on pcb */
@@ -319,7 +316,7 @@ static MACHINE_DRIVER_START( kncljoe )
MDRV_SOUND_ADD("sn2", SN76489, XTAL_3_579545MHz) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/koftball.c b/src/mame/drivers/koftball.c
index d2b813e8def..4ef4c2d51de 100644
--- a/src/mame/drivers/koftball.c
+++ b/src/mame/drivers/koftball.c
@@ -202,7 +202,7 @@ static GFXDECODE_START( koftball )
GFXDECODE_END
-static MACHINE_DRIVER_START( koftball )
+static MACHINE_CONFIG_START( koftball, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 21477270/2 )
MDRV_CPU_PROGRAM_MAP(koftball_mem)
MDRV_CPU_VBLANK_INT_HACK(bmc_interrupt,3)
@@ -226,7 +226,7 @@ static MACHINE_DRIVER_START( koftball )
MDRV_OKIM6295_ADD("oki", 1122000, OKIM6295_PIN7_LOW) /* clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( koftball )
ROM_REGION( 0x200000, "maincpu", 0 ) /* 68000 Code */
diff --git a/src/mame/drivers/koikoi.c b/src/mame/drivers/koikoi.c
index 414d8175ef0..1776fe019b2 100644
--- a/src/mame/drivers/koikoi.c
+++ b/src/mame/drivers/koikoi.c
@@ -357,10 +357,7 @@ static MACHINE_RESET( koikoi )
state->ioram[i] = 0;
}
-static MACHINE_DRIVER_START( koikoi )
-
- /* driver data */
- MDRV_DRIVER_DATA(koikoi_state)
+static MACHINE_CONFIG_START( koikoi, koikoi_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,KOIKOI_CRYSTAL/4) /* ?? */
@@ -392,7 +389,7 @@ static MACHINE_DRIVER_START( koikoi )
MDRV_SOUND_ADD("aysnd", AY8910, KOIKOI_CRYSTAL/8)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/konamigq.c b/src/mame/drivers/konamigq.c
index 09fb2c505f3..86924b22dcb 100644
--- a/src/mame/drivers/konamigq.c
+++ b/src/mame/drivers/konamigq.c
@@ -357,7 +357,7 @@ static MACHINE_RESET( konamigq )
psx_machine_init(machine);
}
-static MACHINE_DRIVER_START( konamigq )
+static MACHINE_CONFIG_START( konamigq, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PSXCPU, XTAL_67_7376MHz )
MDRV_CPU_PROGRAM_MAP( konamigq_map)
@@ -398,7 +398,7 @@ static MACHINE_DRIVER_START( konamigq )
MDRV_SOUND_CONFIG(k054539_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( konamigq )
PORT_START("GUNX1")
diff --git a/src/mame/drivers/konamigv.c b/src/mame/drivers/konamigv.c
index dde730ca60c..8e815b5915d 100644
--- a/src/mame/drivers/konamigv.c
+++ b/src/mame/drivers/konamigv.c
@@ -327,7 +327,7 @@ static const psx_spu_interface konamigv_psxspu_interface =
psx_dma_install_write_handler
};
-static MACHINE_DRIVER_START( konamigv )
+static MACHINE_CONFIG_START( konamigv, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PSXCPU, XTAL_67_7376MHz )
MDRV_CPU_PROGRAM_MAP( konamigv_map)
@@ -363,7 +363,7 @@ static MACHINE_DRIVER_START( konamigv )
MDRV_SOUND_ADD( "cdda", CDDA, 0 )
MDRV_SOUND_ROUTE( 0, "lspeaker", 1.0 )
MDRV_SOUND_ROUTE( 1, "rspeaker", 1.0 )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( konamigv )
PORT_START("P1")
@@ -537,10 +537,9 @@ static DRIVER_INIT( simpbowl )
DRIVER_INIT_CALL(konamigv);
}
-static MACHINE_DRIVER_START( simpbowl )
- MDRV_IMPORT_FROM( konamigv )
+static MACHINE_CONFIG_DERIVED( simpbowl, konamigv )
MDRV_NVRAM_HANDLER( simpbowl )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( simpbowl )
PORT_INCLUDE( konamigv )
@@ -624,10 +623,9 @@ static DRIVER_INIT( btchamp )
DRIVER_INIT_CALL(konamigv);
}
-static MACHINE_DRIVER_START( btchamp )
- MDRV_IMPORT_FROM( konamigv )
+static MACHINE_CONFIG_DERIVED( btchamp, konamigv )
MDRV_NVRAM_HANDLER( btchamp )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( btchamp )
PORT_INCLUDE( konamigv )
@@ -715,10 +713,9 @@ static DRIVER_INIT( kdeadeye )
DRIVER_INIT_CALL(konamigv);
}
-static MACHINE_DRIVER_START( kdeadeye )
- MDRV_IMPORT_FROM( konamigv )
+static MACHINE_CONFIG_DERIVED( kdeadeye, konamigv )
MDRV_NVRAM_HANDLER( btchamp )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( kdeadeye )
PORT_INCLUDE( konamigv )
diff --git a/src/mame/drivers/konamigx.c b/src/mame/drivers/konamigx.c
index e526117db7b..1f94e63310d 100644
--- a/src/mame/drivers/konamigx.c
+++ b/src/mame/drivers/konamigx.c
@@ -1785,7 +1785,7 @@ static GFXDECODE_START( type4 )
GFXDECODE_ENTRY( "gfx3", 0, bglayout_8bpp, 0x1800, 8 )
GFXDECODE_END
-static MACHINE_DRIVER_START( konamigx )
+static MACHINE_CONFIG_START( konamigx, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 24000000)
MDRV_CPU_PROGRAM_MAP(gx_type2_map)
@@ -1836,34 +1836,29 @@ static MACHINE_DRIVER_START( konamigx )
MDRV_SOUND_CONFIG(k054539_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dragoonj )
- MDRV_IMPORT_FROM(konamigx)
+static MACHINE_CONFIG_DERIVED( dragoonj, konamigx )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(26400000) // needs higher clock to stop sprite flickerings
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(40, 40+384-1, 16, 16+224-1)
MDRV_VIDEO_START(dragoonj)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( le2 )
- MDRV_IMPORT_FROM(konamigx)
+static MACHINE_CONFIG_DERIVED( le2, konamigx )
MDRV_VIDEO_START(le2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( konamigx_6bpp )
- MDRV_IMPORT_FROM(konamigx)
+static MACHINE_CONFIG_DERIVED( konamigx_6bpp, konamigx )
MDRV_VIDEO_START(konamigx_6bpp)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( konamigx_6bpp_2 )
- MDRV_IMPORT_FROM(konamigx)
+static MACHINE_CONFIG_DERIVED( konamigx_6bpp_2, konamigx )
MDRV_VIDEO_START(konamigx_6bpp_2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( opengolf )
- MDRV_IMPORT_FROM(konamigx)
+static MACHINE_CONFIG_DERIVED( opengolf, konamigx )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_RAW_PARAMS(8000000, 384+24+64+40, 0, 383, 224+16+8+16, 0, 223)
MDRV_SCREEN_VISIBLE_AREA(40, 40+384-1, 16, 16+224-1)
@@ -1874,10 +1869,9 @@ static MACHINE_DRIVER_START( opengolf )
MDRV_CPU_PROGRAM_MAP(gx_type1_map)
MDRV_ADC0834_ADD( "adc0834", konamigx_adc_interface )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( racinfrc )
- MDRV_IMPORT_FROM(konamigx)
+static MACHINE_CONFIG_DERIVED( racinfrc, konamigx )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_RAW_PARAMS(8000000, 384+24+64+40, 0, 383, 224+16+8+16, 0, 223)
MDRV_SCREEN_VISIBLE_AREA(32, 32+384-1, 16, 16+224-1)
@@ -1888,10 +1882,9 @@ static MACHINE_DRIVER_START( racinfrc )
MDRV_CPU_PROGRAM_MAP(gx_type1_map)
MDRV_ADC0834_ADD( "adc0834", konamigx_adc_interface )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gxtype3 )
- MDRV_IMPORT_FROM(konamigx)
+static MACHINE_CONFIG_DERIVED( gxtype3, konamigx )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gx_type3_map)
@@ -1914,10 +1907,9 @@ static MACHINE_DRIVER_START( gxtype3 )
MDRV_GFXDECODE(type34)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gxtype4 )
- MDRV_IMPORT_FROM(konamigx)
+static MACHINE_CONFIG_DERIVED( gxtype4, konamigx )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gx_type4_map)
@@ -1940,10 +1932,9 @@ static MACHINE_DRIVER_START( gxtype4 )
MDRV_PALETTE_LENGTH(8192)
MDRV_GFXDECODE(type4)
MDRV_VIDEO_START(konamigx_type4)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gxtype4_vsn )
- MDRV_IMPORT_FROM(gxtype4)
+static MACHINE_CONFIG_DERIVED( gxtype4_vsn, gxtype4 )
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
@@ -1956,23 +1947,21 @@ static MACHINE_DRIVER_START( gxtype4_vsn )
MDRV_SCREEN_VISIBLE_AREA(0, 576-1, 16, 32*8-1-16)
MDRV_VIDEO_START(konamigx_type4_vsn)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gxtype4sd2 )
- MDRV_IMPORT_FROM(gxtype4)
+static MACHINE_CONFIG_DERIVED( gxtype4sd2, gxtype4 )
MDRV_VIDEO_START(konamigx_type4_sd2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( winspike )
- MDRV_IMPORT_FROM(konamigx)
+static MACHINE_CONFIG_DERIVED( winspike, konamigx )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(38, 38+384-1, 16, 16+224-1)
MDRV_VIDEO_START(winspike)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**********************************************************************************/
diff --git a/src/mame/drivers/konamim2.c b/src/mame/drivers/konamim2.c
index 7bfd57f2cd3..a8538b0e354 100644
--- a/src/mame/drivers/konamim2.c
+++ b/src/mame/drivers/konamim2.c
@@ -1130,7 +1130,7 @@ static INTERRUPT_GEN(m2)
cpu_set_input_line(device, INPUT_LINE_IRQ0, ASSERT_LINE);
}
-static MACHINE_DRIVER_START( m2 )
+static MACHINE_CONFIG_START( m2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC602, 33000000) /* actually PPC602, 66MHz */
@@ -1156,7 +1156,7 @@ static MACHINE_DRIVER_START( m2 )
MDRV_VIDEO_START(m2)
MDRV_VIDEO_UPDATE(m2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( polystar )
diff --git a/src/mame/drivers/kongambl.c b/src/mame/drivers/kongambl.c
index c6df27f6052..b4dac4e88fc 100644
--- a/src/mame/drivers/kongambl.c
+++ b/src/mame/drivers/kongambl.c
@@ -126,7 +126,7 @@ static const k053247_interface k053247_intf =
kongambl_sprite_callback
};
-static MACHINE_DRIVER_START( kongambl )
+static MACHINE_CONFIG_START( kongambl, driver_data_t )
MDRV_CPU_ADD("maincpu", M68EC020, 25000000)
MDRV_CPU_PROGRAM_MAP(kongambl_map)
@@ -151,7 +151,7 @@ static MACHINE_DRIVER_START( kongambl )
MDRV_K056832_ADD("k056832", k056832_intf)
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( kingtut )
diff --git a/src/mame/drivers/kopunch.c b/src/mame/drivers/kopunch.c
index cfa92017baf..557669d246e 100644
--- a/src/mame/drivers/kopunch.c
+++ b/src/mame/drivers/kopunch.c
@@ -187,10 +187,7 @@ static MACHINE_RESET( kopunch )
state->gfxbank = 0;
}
-static MACHINE_DRIVER_START( kopunch )
-
- /* driver data */
- MDRV_DRIVER_DATA(kopunch_state)
+static MACHINE_CONFIG_START( kopunch, kopunch_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8085A, 4000000) /* 4 MHz ???? Uses SIM, must be 8085 */
@@ -217,7 +214,7 @@ static MACHINE_DRIVER_START( kopunch )
MDRV_VIDEO_UPDATE(kopunch)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/ksayakyu.c b/src/mame/drivers/ksayakyu.c
index f42d05b262d..9244342bb60 100644
--- a/src/mame/drivers/ksayakyu.c
+++ b/src/mame/drivers/ksayakyu.c
@@ -271,10 +271,7 @@ static MACHINE_RESET( ksayakyu )
state->flipscreen = 0;
}
-static MACHINE_DRIVER_START( ksayakyu )
-
- /* driver data */
- MDRV_DRIVER_DATA(ksayakyu_state)
+static MACHINE_CONFIG_START( ksayakyu, ksayakyu_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,MAIN_CLOCK/8) //divider is guessed
@@ -318,7 +315,7 @@ static MACHINE_DRIVER_START( ksayakyu )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ksayakyu )
ROM_REGION( 0x20000, "maincpu", 0 )
diff --git a/src/mame/drivers/ksys573.c b/src/mame/drivers/ksys573.c
index e60d3cc730c..b53d274b9a9 100644
--- a/src/mame/drivers/ksys573.c
+++ b/src/mame/drivers/ksys573.c
@@ -2841,7 +2841,7 @@ static const adc083x_interface konami573_adc_interface = {
analogue_inputs_callback
};
-static MACHINE_DRIVER_START( konami573 )
+static MACHINE_CONFIG_START( konami573, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PSXCPU, XTAL_67_7376MHz )
MDRV_CPU_PROGRAM_MAP( konami573_map)
@@ -2879,15 +2879,14 @@ static MACHINE_DRIVER_START( konami573 )
MDRV_M48T58_ADD( "m48t58" )
MDRV_ADC0834_ADD( "adc0834", konami573_adc_interface )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( k573bait )
- MDRV_IMPORT_FROM(konami573)
+static MACHINE_CONFIG_DERIVED( k573bait, konami573 )
/* Additional NEC Encoder */
MDRV_UPD4701_ADD( "upd4701" )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( konami573 )
PORT_START("IN0")
diff --git a/src/mame/drivers/kungfur.c b/src/mame/drivers/kungfur.c
index 921ae5c57d9..cb426560e71 100644
--- a/src/mame/drivers/kungfur.c
+++ b/src/mame/drivers/kungfur.c
@@ -333,7 +333,7 @@ static INTERRUPT_GEN( kungfur_irq )
cputag_set_input_line(device->machine, "maincpu", M6809_IRQ_LINE, HOLD_LINE);
}
-static MACHINE_DRIVER_START( kungfur )
+static MACHINE_CONFIG_START( kungfur, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M6809,8000000/2)
@@ -366,7 +366,7 @@ static MACHINE_DRIVER_START( kungfur )
MDRV_SOUND_ADD("adpcm2", MSM5205, 400000)
MDRV_SOUND_CONFIG(msm5205_config_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/kyugo.c b/src/mame/drivers/kyugo.c
index 04fe1331122..bfb6c1bf173 100644
--- a/src/mame/drivers/kyugo.c
+++ b/src/mame/drivers/kyugo.c
@@ -479,10 +479,7 @@ static MACHINE_RESET( kyugo )
}
-static MACHINE_DRIVER_START( gyrodine )
-
- /* driver data */
- MDRV_DRIVER_DATA(kyugo_state)
+static MACHINE_CONFIG_START( gyrodine, kyugo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/6) /* verified on pcb */
@@ -524,57 +521,52 @@ static MACHINE_DRIVER_START( gyrodine )
MDRV_SOUND_ADD("ay2", AY8910, XTAL_18_432MHz/12) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( repulse )
+static MACHINE_CONFIG_DERIVED( repulse, gyrodine )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gyrodine)
MDRV_CPU_MODIFY("sub")
MDRV_CPU_PROGRAM_MAP(repulse_sub_map)
MDRV_CPU_IO_MAP(repulse_sub_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( srdmissn )
+static MACHINE_CONFIG_DERIVED( srdmissn, gyrodine )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gyrodine)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(srdmissn_portmap)
MDRV_CPU_MODIFY("sub")
MDRV_CPU_PROGRAM_MAP(srdmissn_sub_map)
MDRV_CPU_IO_MAP(srdmissn_sub_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( flashgal )
+static MACHINE_CONFIG_DERIVED( flashgal, repulse )
/* basic machine hardware */
- MDRV_IMPORT_FROM(repulse)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(flashgal_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( flashgala )
+static MACHINE_CONFIG_DERIVED( flashgala, gyrodine )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gyrodine)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(flashgala_portmap)
MDRV_CPU_MODIFY("sub")
MDRV_CPU_PROGRAM_MAP(flashgala_sub_map)
MDRV_CPU_IO_MAP(flashgala_sub_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( legend )
+static MACHINE_CONFIG_DERIVED( legend, gyrodine )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gyrodine)
MDRV_CPU_MODIFY("sub")
MDRV_CPU_PROGRAM_MAP(legend_sub_map)
MDRV_CPU_IO_MAP(srdmissn_sub_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/labyrunr.c b/src/mame/drivers/labyrunr.c
index 2fcad2a9600..0ee6442332e 100644
--- a/src/mame/drivers/labyrunr.c
+++ b/src/mame/drivers/labyrunr.c
@@ -193,10 +193,7 @@ static MACHINE_START( labyrunr )
state->k007121 = machine->device("k007121");
}
-static MACHINE_DRIVER_START( labyrunr )
-
- /* driver data */
- MDRV_DRIVER_DATA(labyrunr_state)
+static MACHINE_CONFIG_START( labyrunr, labyrunr_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, 3000000*4) /* 24MHz/8? */
@@ -239,7 +236,7 @@ static MACHINE_DRIVER_START( labyrunr )
MDRV_SOUND_ROUTE(1, "mono", 0.40)
MDRV_SOUND_ROUTE(2, "mono", 0.40)
MDRV_SOUND_ROUTE(3, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/ladybug.c b/src/mame/drivers/ladybug.c
index 1b2579ceae7..26bb6663728 100644
--- a/src/mame/drivers/ladybug.c
+++ b/src/mame/drivers/ladybug.c
@@ -773,10 +773,7 @@ static MACHINE_RESET( sraider )
state->weird_value[i] = 0;
}
-static MACHINE_DRIVER_START( ladybug )
-
- /* driver data */
- MDRV_DRIVER_DATA(ladybug_state)
+static MACHINE_CONFIG_START( ladybug, ladybug_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz */
@@ -807,13 +804,10 @@ static MACHINE_DRIVER_START( ladybug )
MDRV_SOUND_ADD("sn2", SN76489, 4000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sraider )
- /* driver data */
- MDRV_DRIVER_DATA(ladybug_state)
+static MACHINE_CONFIG_START( sraider, ladybug_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz */
@@ -861,7 +855,7 @@ static MACHINE_DRIVER_START( sraider )
MDRV_SOUND_ADD("sn5", SN76489, 4000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/ladyfrog.c b/src/mame/drivers/ladyfrog.c
index 9c615166291..7253d998384 100644
--- a/src/mame/drivers/ladyfrog.c
+++ b/src/mame/drivers/ladyfrog.c
@@ -309,10 +309,7 @@ static MACHINE_RESET( ladyfrog )
state->snd_data = 0;
}
-static MACHINE_DRIVER_START( ladyfrog )
-
- /* driver data */
- MDRV_DRIVER_DATA(ladyfrog_state)
+static MACHINE_CONFIG_START( ladyfrog, ladyfrog_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000/2)
@@ -362,12 +359,11 @@ static MACHINE_DRIVER_START( ladyfrog )
// pin 1 SOLO 8' not mapped
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( toucheme )
- MDRV_IMPORT_FROM(ladyfrog)
+static MACHINE_CONFIG_DERIVED( toucheme, ladyfrog )
MDRV_VIDEO_START(toucheme)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ladyfrog )
diff --git a/src/mame/drivers/laserbas.c b/src/mame/drivers/laserbas.c
index 190f11d9175..e7e37c059b8 100644
--- a/src/mame/drivers/laserbas.c
+++ b/src/mame/drivers/laserbas.c
@@ -173,8 +173,7 @@ static MACHINE_RESET( laserbas )
state->count = 0;
}
-static MACHINE_DRIVER_START( laserbas )
- MDRV_DRIVER_DATA(laserbas_state)
+static MACHINE_CONFIG_START( laserbas, laserbas_state )
MDRV_CPU_ADD("maincpu", Z80, 4000000)
MDRV_CPU_PROGRAM_MAP(laserbas_memory)
@@ -194,7 +193,7 @@ static MACHINE_DRIVER_START( laserbas )
MDRV_PALETTE_LENGTH(32)
MDRV_VIDEO_START(laserbas)
MDRV_VIDEO_UPDATE(laserbas)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
Amstar LaserBase 1981 (Hoei)
diff --git a/src/mame/drivers/laserbat.c b/src/mame/drivers/laserbat.c
index fa1641b3fcc..a768340ab20 100644
--- a/src/mame/drivers/laserbat.c
+++ b/src/mame/drivers/laserbat.c
@@ -768,10 +768,7 @@ static MACHINE_RESET( laserbat )
state->bit14 = 0;
}
-static MACHINE_DRIVER_START( laserbat )
-
- /* driver data */
- MDRV_DRIVER_DATA(laserbat_state)
+static MACHINE_CONFIG_START( laserbat, laserbat_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, 14318180/4) // ???
@@ -811,12 +808,9 @@ static MACHINE_DRIVER_START( laserbat )
MDRV_SOUND_ADD("tms2", TMS3615, 4000000/8) // 500 kHz
MDRV_SOUND_ROUTE(TMS3615_FOOTAGE_8, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( catnmous )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(laserbat_state)
+static MACHINE_CONFIG_START( catnmous, laserbat_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, 14318000/4) /* ? */
@@ -860,7 +854,7 @@ static MACHINE_DRIVER_START( catnmous )
MDRV_SOUND_ADD("ay2", AY8910, 3580000/2) // ?
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/lasso.c b/src/mame/drivers/lasso.c
index fcec989ea3f..4afb82fceb2 100644
--- a/src/mame/drivers/lasso.c
+++ b/src/mame/drivers/lasso.c
@@ -499,10 +499,7 @@ static MACHINE_RESET( wwjgtin )
state->track_enable = 0;
}
-static MACHINE_DRIVER_START( base )
-
- /* driver data */
- MDRV_DRIVER_DATA(lasso_state)
+static MACHINE_CONFIG_START( base, lasso_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 11289000/16) /* guess */
@@ -540,21 +537,19 @@ static MACHINE_DRIVER_START( base )
MDRV_SOUND_ADD("sn76489.2", SN76489, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lasso )
+static MACHINE_CONFIG_DERIVED( lasso, base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(base)
MDRV_CPU_ADD("blitter", M6502, 11289000/16) /* guess */
MDRV_CPU_PROGRAM_MAP(lasso_coprocessor_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( chameleo )
+static MACHINE_CONFIG_DERIVED( chameleo, base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(chameleo_main_map)
@@ -563,12 +558,11 @@ static MACHINE_DRIVER_START( chameleo )
/* video hardware */
MDRV_VIDEO_UPDATE(chameleo)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wwjgtin )
+static MACHINE_CONFIG_DERIVED( wwjgtin, base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(wwjgtin_main_map)
@@ -591,12 +585,11 @@ static MACHINE_DRIVER_START( wwjgtin )
/* sound hardware */
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pinbo )
+static MACHINE_CONFIG_DERIVED( pinbo, base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(pinbo_main_map)
@@ -621,7 +614,7 @@ static MACHINE_DRIVER_START( pinbo )
MDRV_SOUND_ADD("ay2", AY8910, 1250000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.55)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( lasso )
diff --git a/src/mame/drivers/lastduel.c b/src/mame/drivers/lastduel.c
index 1013c484288..ae3aaefc63b 100644
--- a/src/mame/drivers/lastduel.c
+++ b/src/mame/drivers/lastduel.c
@@ -502,10 +502,7 @@ static MACHINE_RESET( lastduel )
state->scroll[i] = 0;
}
-static MACHINE_DRIVER_START( lastduel )
-
- /* driver data */
- MDRV_DRIVER_DATA(lastduel_state)
+static MACHINE_CONFIG_START( lastduel, lastduel_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* Could be 8 MHz */
@@ -544,13 +541,10 @@ static MACHINE_DRIVER_START( lastduel )
MDRV_SOUND_ADD("ym2", YM2203, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( madgear )
- /* driver data */
- MDRV_DRIVER_DATA(lastduel_state)
+static MACHINE_CONFIG_START( madgear, lastduel_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* Accurate */
@@ -592,7 +586,7 @@ static MACHINE_DRIVER_START( madgear )
MDRV_OKIM6295_ADD("oki", XTAL_10MHz/10, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.98)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/lastfght.c b/src/mame/drivers/lastfght.c
index 543b014fb33..15565ba63ab 100644
--- a/src/mame/drivers/lastfght.c
+++ b/src/mame/drivers/lastfght.c
@@ -570,10 +570,7 @@ static MACHINE_RESET( lastfght )
state->c00006 = 0;
}
-static MACHINE_DRIVER_START( lastfght )
-
- /* driver data */
- MDRV_DRIVER_DATA(lastfght_state)
+static MACHINE_CONFIG_START( lastfght, lastfght_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H83044, 32000000/2)
@@ -596,7 +593,7 @@ static MACHINE_DRIVER_START( lastfght )
MDRV_VIDEO_START( lastfght )
MDRV_VIDEO_UPDATE( lastfght )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/lazercmd.c b/src/mame/drivers/lazercmd.c
index 2302bf69a9c..4778c4b6cb2 100644
--- a/src/mame/drivers/lazercmd.c
+++ b/src/mame/drivers/lazercmd.c
@@ -624,10 +624,7 @@ static MACHINE_RESET( lazercmd )
}
-static MACHINE_DRIVER_START( lazercmd )
-
- /* driver data */
- MDRV_DRIVER_DATA(lazercmd_state)
+static MACHINE_CONFIG_START( lazercmd, lazercmd_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650,MASTER_CLOCK/12) /* 672 kHz? */
@@ -662,13 +659,10 @@ static MACHINE_DRIVER_START( lazercmd )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( medlanes )
- /* driver data */
- MDRV_DRIVER_DATA(lazercmd_state)
+static MACHINE_CONFIG_START( medlanes, lazercmd_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650,MASTER_CLOCK/12) /* 666 kHz */
@@ -703,13 +697,10 @@ static MACHINE_DRIVER_START( medlanes )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bbonk )
- /* driver data */
- MDRV_DRIVER_DATA(lazercmd_state)
+static MACHINE_CONFIG_START( bbonk, lazercmd_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650,MASTER_CLOCK/12) /* 666 kHz */
@@ -744,7 +735,7 @@ static MACHINE_DRIVER_START( bbonk )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/legionna.c b/src/mame/drivers/legionna.c
index d511c758646..a43fc0e6bfb 100644
--- a/src/mame/drivers/legionna.c
+++ b/src/mame/drivers/legionna.c
@@ -1039,7 +1039,7 @@ GFXDECODE_END
/*****************************************************************************/
-static MACHINE_DRIVER_START( legionna )
+static MACHINE_CONFIG_START( legionna, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,20000000/2) /* ??? */
@@ -1068,10 +1068,10 @@ static MACHINE_DRIVER_START( legionna )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM3812_INTERFACE(14318180/4,1320000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( heatbrl )
+static MACHINE_CONFIG_START( heatbrl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,20000000/2) /* ??? */
@@ -1100,9 +1100,9 @@ static MACHINE_DRIVER_START( heatbrl )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM3812_INTERFACE(14318180/4,1320000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( godzilla )
+static MACHINE_CONFIG_START( godzilla, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 20000000/2)
@@ -1131,9 +1131,9 @@ static MACHINE_DRIVER_START( godzilla )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM2151_INTERFACE(14318180/4,1320000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( denjinmk )
+static MACHINE_CONFIG_START( denjinmk, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 20000000/2)
@@ -1162,9 +1162,9 @@ static MACHINE_DRIVER_START( denjinmk )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM2151_INTERFACE(14318180/4,1320000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( grainbow )
+static MACHINE_CONFIG_START( grainbow, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 20000000/2)
@@ -1193,10 +1193,10 @@ static MACHINE_DRIVER_START( grainbow )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM2151_INTERFACE(14318180/4,1320000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cupsoc )
+static MACHINE_CONFIG_START( cupsoc, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,20000000/2)
@@ -1225,10 +1225,10 @@ static MACHINE_DRIVER_START( cupsoc )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM3812_INTERFACE(14318180/4,1320000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cupsocbl )
+static MACHINE_CONFIG_START( cupsocbl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000)
@@ -1264,7 +1264,7 @@ static MACHINE_DRIVER_START( cupsocbl )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/leland.c b/src/mame/drivers/leland.c
index 5be888030ee..b756417317e 100644
--- a/src/mame/drivers/leland.c
+++ b/src/mame/drivers/leland.c
@@ -731,7 +731,7 @@ static const eeprom_interface eeprom_intf =
*
*************************************/
-static MACHINE_DRIVER_START( leland )
+static MACHINE_CONFIG_START( leland, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("master", Z80, MASTER_CLOCK/2)
@@ -750,7 +750,7 @@ static MACHINE_DRIVER_START( leland )
MDRV_EEPROM_ADD("eeprom", eeprom_intf)
/* video hardware */
- MDRV_IMPORT_FROM(leland_video)
+ MDRV_FRAGMENT_ADD(leland_video)
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -765,13 +765,12 @@ static MACHINE_DRIVER_START( leland )
MDRV_SOUND_ADD("custom", LELAND, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( redline )
+static MACHINE_CONFIG_DERIVED( redline, leland )
/* basic machine hardware */
- MDRV_IMPORT_FROM(leland)
MDRV_CPU_ADD("audiocpu", I80186, MCU_CLOCK)
MDRV_CPU_PROGRAM_MAP(leland_80186_map_program)
@@ -780,13 +779,12 @@ static MACHINE_DRIVER_START( redline )
/* sound hardware */
MDRV_SOUND_REPLACE("custom", REDLINE_80186, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( quarterb )
+static MACHINE_CONFIG_DERIVED( quarterb, redline )
/* basic machine hardware */
- MDRV_IMPORT_FROM(redline)
MDRV_CPU_MODIFY("audiocpu")
MDRV_CPU_IO_MAP(leland_80186_map_io)
@@ -794,17 +792,16 @@ static MACHINE_DRIVER_START( quarterb )
/* sound hardware */
MDRV_SOUND_REPLACE("custom", LELAND_80186, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lelandi )
+static MACHINE_CONFIG_DERIVED( lelandi, quarterb )
/* basic machine hardware */
- MDRV_IMPORT_FROM(quarterb)
MDRV_CPU_MODIFY("slave")
MDRV_CPU_PROGRAM_MAP(slave_large_map_program)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/lemmings.c b/src/mame/drivers/lemmings.c
index 5c68987a37a..b33f5770973 100644
--- a/src/mame/drivers/lemmings.c
+++ b/src/mame/drivers/lemmings.c
@@ -262,10 +262,7 @@ static MACHINE_START( lemmings )
state->audiocpu = machine->device("audiocpu");
}
-static MACHINE_DRIVER_START( lemmings )
-
- /* driver data */
- MDRV_DRIVER_DATA(lemmings_state)
+static MACHINE_CONFIG_START( lemmings, lemmings_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -305,7 +302,7 @@ static MACHINE_DRIVER_START( lemmings )
MDRV_OKIM6295_ADD("oki", 1023924, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/lethal.c b/src/mame/drivers/lethal.c
index b5eee2fb723..55f99a46a53 100644
--- a/src/mame/drivers/lethal.c
+++ b/src/mame/drivers/lethal.c
@@ -661,10 +661,7 @@ static const k05324x_interface lethalej_k05324x_intf =
lethalen_sprite_callback
};
-static MACHINE_DRIVER_START( lethalen )
-
- /* driver data */
- MDRV_DRIVER_DATA(lethal_state)
+static MACHINE_CONFIG_START( lethalen, lethal_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, MAIN_CLOCK/2) /* verified on pcb */
@@ -708,17 +705,16 @@ static MACHINE_DRIVER_START( lethalen )
MDRV_SOUND_CONFIG(k054539_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lethalej )
- MDRV_IMPORT_FROM(lethalen)
+static MACHINE_CONFIG_DERIVED( lethalej, lethalen )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(224, 512-1, 16, 240-1)
MDRV_DEVICE_REMOVE("k053244")
MDRV_K053244_ADD("k053244", lethalej_k05324x_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( lethalen ) // US version UAE
ROM_REGION( 0x50000, "maincpu", 0 )
diff --git a/src/mame/drivers/lethalj.c b/src/mame/drivers/lethalj.c
index c4026409840..c96077b18b1 100644
--- a/src/mame/drivers/lethalj.c
+++ b/src/mame/drivers/lethalj.c
@@ -591,7 +591,7 @@ static const tms34010_config tms_config_lethalj =
*
*************************************/
-static MACHINE_DRIVER_START( gameroom )
+static MACHINE_CONFIG_START( gameroom, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, MASTER_CLOCK)
@@ -622,18 +622,17 @@ static MACHINE_DRIVER_START( gameroom )
MDRV_OKIM6295_ADD("oki3", SOUND_CLOCK, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.26)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lethalj )
- MDRV_IMPORT_FROM( gameroom )
+static MACHINE_CONFIG_DERIVED( lethalj, gameroom )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CONFIG(tms_config_lethalj)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_RAW_PARAMS(VIDEO_CLOCK_LETHALJ, 689, 0, 512, 259, 0, 236)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/lgp.c b/src/mame/drivers/lgp.c
index 225edbb8c59..319f77b53dc 100644
--- a/src/mame/drivers/lgp.c
+++ b/src/mame/drivers/lgp.c
@@ -338,7 +338,7 @@ static MACHINE_START( lgp )
/* DRIVER */
-static MACHINE_DRIVER_START( lgp )
+static MACHINE_CONFIG_START( lgp, driver_data_t )
/* main cpu */
MDRV_CPU_ADD("maincpu", Z80, CPU_PCB_CLOCK)
MDRV_CPU_PROGRAM_MAP(main_program_map)
@@ -369,7 +369,7 @@ static MACHINE_DRIVER_START( lgp )
MDRV_SOUND_ADD("ldsound", LASERDISC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( lgp )
diff --git a/src/mame/drivers/liberate.c b/src/mame/drivers/liberate.c
index bf04111d8f7..8d548060a54 100644
--- a/src/mame/drivers/liberate.c
+++ b/src/mame/drivers/liberate.c
@@ -826,9 +826,7 @@ static MACHINE_RESET( liberate )
state->bank = 0;
}
-static MACHINE_DRIVER_START( liberate )
-
- MDRV_DRIVER_DATA(liberate_state)
+static MACHINE_CONFIG_START( liberate, liberate_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",DECO16, 2000000)
@@ -868,27 +866,23 @@ static MACHINE_DRIVER_START( liberate )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( liberatb )
- MDRV_IMPORT_FROM(liberate)
+static MACHINE_CONFIG_DERIVED( liberatb, liberate )
/* basic machine hardware */
MDRV_CPU_REPLACE("maincpu", M6502, 2000000)
MDRV_CPU_PROGRAM_MAP(liberatb_map)
MDRV_CPU_VBLANK_INT("screen", deco16_interrupt)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( boomrang )
- MDRV_IMPORT_FROM(liberate)
+static MACHINE_CONFIG_DERIVED( boomrang, liberate )
MDRV_VIDEO_START(boomrang)
MDRV_VIDEO_UPDATE(boomrang)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( prosoccr )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(liberate)
+static MACHINE_CONFIG_DERIVED( prosoccr, liberate )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -909,11 +903,9 @@ static MACHINE_DRIVER_START( prosoccr )
MDRV_VIDEO_START(prosoccr)
MDRV_VIDEO_UPDATE(prosoccr)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( prosport )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA(liberate_state)
+static MACHINE_CONFIG_START( prosport, liberate_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", DECO16, 2000000)
@@ -952,7 +944,7 @@ static MACHINE_DRIVER_START( prosport )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/liberatr.c b/src/mame/drivers/liberatr.c
index 05e992af3ad..da8601f5784 100644
--- a/src/mame/drivers/liberatr.c
+++ b/src/mame/drivers/liberatr.c
@@ -380,7 +380,7 @@ static const pokey_interface pokey_interface_2 =
*
*************************************/
-static MACHINE_DRIVER_START( liberatr )
+static MACHINE_CONFIG_START( liberatr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/16) /* 1.25Mhz divided from 20Mhz master clock */
@@ -410,16 +410,15 @@ static MACHINE_DRIVER_START( liberatr )
MDRV_SOUND_ADD("pokey2", POKEY, MASTER_CLOCK/16) /* 1.25Mhz from Phi2 signal from 6502 */
MDRV_SOUND_CONFIG(pokey_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( liberat2 )
+static MACHINE_CONFIG_DERIVED( liberat2, liberatr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(liberatr)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(liberat2_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/limenko.c b/src/mame/drivers/limenko.c
index 81278a38dd7..220163ea42b 100644
--- a/src/mame/drivers/limenko.c
+++ b/src/mame/drivers/limenko.c
@@ -640,7 +640,7 @@ GFXDECODE_END
*****************************************************************************************************/
-static MACHINE_DRIVER_START( limenko )
+static MACHINE_CONFIG_START( limenko, driver_data_t )
MDRV_CPU_ADD("maincpu", E132XN, 20000000*4) /* 4x internal multiplier */
MDRV_CPU_PROGRAM_MAP(limenko_map)
MDRV_CPU_IO_MAP(limenko_io_map)
@@ -663,9 +663,9 @@ static MACHINE_DRIVER_START( limenko )
MDRV_VIDEO_UPDATE(limenko)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spotty )
+static MACHINE_CONFIG_START( spotty, driver_data_t )
MDRV_CPU_ADD("maincpu", GMS30C2232, 20000000) /* 20 MHz, no internal multiplier */
MDRV_CPU_PROGRAM_MAP(spotty_map)
MDRV_CPU_IO_MAP(spotty_io_map)
@@ -695,7 +695,7 @@ static MACHINE_DRIVER_START( spotty )
MDRV_OKIM6295_ADD("oki", 4000000 / 4 , OKIM6295_PIN7_HIGH) //?
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*****************************************************************************************************
diff --git a/src/mame/drivers/littlerb.c b/src/mame/drivers/littlerb.c
index 77e4cd16f91..01632fa629d 100644
--- a/src/mame/drivers/littlerb.c
+++ b/src/mame/drivers/littlerb.c
@@ -494,7 +494,7 @@ static INTERRUPT_GEN( littlerb )
cpu_set_input_line(device, 4, HOLD_LINE);
}
-static MACHINE_DRIVER_START( littlerb )
+static MACHINE_CONFIG_START( littlerb, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(littlerb_main)
MDRV_CPU_VBLANK_INT("screen", littlerb)
@@ -513,7 +513,7 @@ static MACHINE_DRIVER_START( littlerb )
// MDRV_PALETTE_INIT(littlerb)
MDRV_VIDEO_UPDATE(littlerb)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( littlerb )
ROM_REGION( 0x100000, "maincpu", 0 ) /* 68000 Code */
diff --git a/src/mame/drivers/lkage.c b/src/mame/drivers/lkage.c
index 16be99055d0..0d490fa9bc4 100644
--- a/src/mame/drivers/lkage.c
+++ b/src/mame/drivers/lkage.c
@@ -414,10 +414,7 @@ static MACHINE_RESET( lkage )
}
-static MACHINE_DRIVER_START( lkage )
-
- /* driver data */
- MDRV_DRIVER_DATA(lkage_state)
+static MACHINE_CONFIG_START( lkage, lkage_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,6000000)
@@ -464,13 +461,10 @@ static MACHINE_DRIVER_START( lkage )
MDRV_SOUND_ROUTE(1, "mono", 0.15)
MDRV_SOUND_ROUTE(2, "mono", 0.15)
MDRV_SOUND_ROUTE(3, "mono", 0.40)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lkageb )
- /* driver data */
- MDRV_DRIVER_DATA(lkage_state)
+static MACHINE_CONFIG_START( lkageb, lkage_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,6000000)
@@ -514,7 +508,7 @@ static MACHINE_DRIVER_START( lkageb )
MDRV_SOUND_ROUTE(1, "mono", 0.15)
MDRV_SOUND_ROUTE(2, "mono", 0.15)
MDRV_SOUND_ROUTE(3, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( lkage )
diff --git a/src/mame/drivers/lockon.c b/src/mame/drivers/lockon.c
index c1196b10d50..43b4d9347b3 100644
--- a/src/mame/drivers/lockon.c
+++ b/src/mame/drivers/lockon.c
@@ -517,10 +517,7 @@ static MACHINE_RESET( lockon )
state->main_inten = 0;
}
-static MACHINE_DRIVER_START( lockon )
-
- /* driver data */
- MDRV_DRIVER_DATA(lockon_state)
+static MACHINE_CONFIG_START( lockon, lockon_state )
MDRV_CPU_ADD("maincpu", V30, XTAL_16MHz / 2)
MDRV_CPU_PROGRAM_MAP(main_v30)
@@ -580,7 +577,7 @@ static MACHINE_DRIVER_START( lockon )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ADD("f2203.3r", FILTER_VOLUME, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/looping.c b/src/mame/drivers/looping.c
index 584b0cb2a4b..d85a4cb8db6 100644
--- a/src/mame/drivers/looping.c
+++ b/src/mame/drivers/looping.c
@@ -608,8 +608,7 @@ static COP400_INTERFACE( looping_cop_intf )
*
*************************************/
-static MACHINE_DRIVER_START( looping )
- MDRV_DRIVER_DATA(looping_state)
+static MACHINE_CONFIG_START( looping, looping_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS9995, MAIN_CPU_CLOCK)
@@ -654,7 +653,7 @@ static MACHINE_DRIVER_START( looping )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/lordgun.c b/src/mame/drivers/lordgun.c
index bb0b37a8848..e95e9dfc040 100644
--- a/src/mame/drivers/lordgun.c
+++ b/src/mame/drivers/lordgun.c
@@ -650,7 +650,7 @@ static const ym3812_interface lordgun_ym3812_interface =
soundirq
};
-static MACHINE_DRIVER_START( lordgun )
+static MACHINE_CONFIG_START( lordgun, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
MDRV_CPU_PROGRAM_MAP(lordgun_map)
MDRV_CPU_VBLANK_INT("screen", irq4_line_hold)
@@ -686,7 +686,7 @@ static MACHINE_DRIVER_START( lordgun )
MDRV_OKIM6295_ADD("oki", XTAL_20MHz / 20, OKIM6295_PIN7_HIGH) // ? 5MHz can't be right!
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const ymf278b_interface ymf278b_config =
@@ -694,7 +694,7 @@ static const ymf278b_interface ymf278b_config =
soundirq
};
-static MACHINE_DRIVER_START( aliencha )
+static MACHINE_CONFIG_START( aliencha, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
MDRV_CPU_PROGRAM_MAP(aliencha_map)
MDRV_CPU_VBLANK_INT("screen", irq4_line_hold)
@@ -733,7 +733,7 @@ static MACHINE_DRIVER_START( aliencha )
MDRV_OKIM6295_ADD("oki2", XTAL_20MHz / 20, OKIM6295_PIN7_HIGH) // ? 5MHz can't be right
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/lsasquad.c b/src/mame/drivers/lsasquad.c
index e69bf954d67..b15b804add2 100644
--- a/src/mame/drivers/lsasquad.c
+++ b/src/mame/drivers/lsasquad.c
@@ -616,10 +616,7 @@ static MACHINE_RESET( lsasquad )
}
/* Note: lsasquad clock values are not verified */
-static MACHINE_DRIVER_START( lsasquad )
-
- /* driver data */
- MDRV_DRIVER_DATA(lsasquad_state)
+static MACHINE_CONFIG_START( lsasquad, lsasquad_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK / 4)
@@ -665,21 +662,17 @@ static MACHINE_DRIVER_START( lsasquad )
MDRV_SOUND_ROUTE(1, "mono", 0.12)
MDRV_SOUND_ROUTE(2, "mono", 0.12)
MDRV_SOUND_ROUTE(3, "mono", 0.63)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( storming )
- MDRV_IMPORT_FROM( lsasquad )
+static MACHINE_CONFIG_DERIVED( storming, lsasquad )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(storming_map)
MDRV_DEVICE_REMOVE("mcu")
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( daikaiju )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(lsasquad_state)
+static MACHINE_CONFIG_START( daikaiju, lsasquad_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK / 4)
@@ -726,7 +719,7 @@ static MACHINE_DRIVER_START( daikaiju )
MDRV_SOUND_ROUTE(1, "mono", 0.12)
MDRV_SOUND_ROUTE(2, "mono", 0.12)
MDRV_SOUND_ROUTE(3, "mono", 0.63)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/ltcasino.c b/src/mame/drivers/ltcasino.c
index 28db48822f2..dc2fd5a9505 100644
--- a/src/mame/drivers/ltcasino.c
+++ b/src/mame/drivers/ltcasino.c
@@ -626,7 +626,7 @@ static VIDEO_UPDATE(ltcasino)
}
-static MACHINE_DRIVER_START( ltcasino )
+static MACHINE_CONFIG_START( ltcasino, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,2000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(ltcasino_map)
@@ -651,7 +651,7 @@ static MACHINE_DRIVER_START( ltcasino )
MDRV_SOUND_ADD("aysnd", AY8910, 1000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.4)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ltcasino )
diff --git a/src/mame/drivers/luckgrln.c b/src/mame/drivers/luckgrln.c
index b90e80aa07c..651a7a46289 100644
--- a/src/mame/drivers/luckgrln.c
+++ b/src/mame/drivers/luckgrln.c
@@ -815,7 +815,7 @@ static INTERRUPT_GEN( luckgrln_irq )
cputag_set_input_line(device->machine, "maincpu", INPUT_LINE_NMI, PULSE_LINE);
}
-static MACHINE_DRIVER_START( luckgrln )
+static MACHINE_CONFIG_START( luckgrln, driver_data_t )
MDRV_CPU_ADD("maincpu", Z180,8000000)
MDRV_CPU_PROGRAM_MAP(mainmap)
MDRV_CPU_IO_MAP(portmap)
@@ -838,7 +838,7 @@ static MACHINE_DRIVER_START( luckgrln )
MDRV_SPEAKER_STANDARD_MONO("mono")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT( luckgrln )
{
diff --git a/src/mame/drivers/lucky74.c b/src/mame/drivers/lucky74.c
index 89f63d35ac8..943a0f57130 100644
--- a/src/mame/drivers/lucky74.c
+++ b/src/mame/drivers/lucky74.c
@@ -1238,7 +1238,7 @@ static const msm5205_interface msm5205_config =
* Machine Drivers *
*************************/
-static MACHINE_DRIVER_START( lucky74 )
+static MACHINE_CONFIG_START( lucky74, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, C_06B49P_CLKOUT_03) /* 3 MHz. */
@@ -1292,7 +1292,7 @@ static MACHINE_DRIVER_START( lucky74 )
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/lvcards.c b/src/mame/drivers/lvcards.c
index 9ce6992496d..5f79f2ebe4e 100644
--- a/src/mame/drivers/lvcards.c
+++ b/src/mame/drivers/lvcards.c
@@ -470,7 +470,7 @@ static const ay8910_interface lcay8910_interface =
};
-static MACHINE_DRIVER_START( lvcards )
+static MACHINE_CONFIG_START( lvcards, driver_data_t )
// basic machine hardware
MDRV_CPU_ADD("maincpu",Z80, 18432000/6) // 3.072 MHz ?
@@ -500,10 +500,9 @@ static MACHINE_DRIVER_START( lvcards )
MDRV_SOUND_ADD("aysnd", AY8910, 18432000/12)
MDRV_SOUND_CONFIG(lcay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lvpoker )
- MDRV_IMPORT_FROM( lvcards )
+static MACHINE_CONFIG_DERIVED( lvpoker, lvcards )
// basic machine hardware
MDRV_NVRAM_HANDLER(generic_1fill)
@@ -511,10 +510,9 @@ static MACHINE_DRIVER_START( lvpoker )
MDRV_CPU_PROGRAM_MAP(lvpoker_map)
MDRV_MACHINE_START(lvpoker)
MDRV_MACHINE_RESET(lvpoker)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ponttehk )
- MDRV_IMPORT_FROM( lvcards )
+static MACHINE_CONFIG_DERIVED( ponttehk, lvcards )
// basic machine hardware
MDRV_NVRAM_HANDLER(generic_1fill)
@@ -524,7 +522,7 @@ static MACHINE_DRIVER_START( ponttehk )
// video hardware
MDRV_PALETTE_INIT(ponttehk)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( lvpoker )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/lwings.c b/src/mame/drivers/lwings.c
index 54e43248f58..0ef02f04b10 100644
--- a/src/mame/drivers/lwings.c
+++ b/src/mame/drivers/lwings.c
@@ -774,10 +774,7 @@ static MACHINE_RESET( lwings )
state->adpcm = 0;
}
-static MACHINE_DRIVER_START( lwings )
-
- /* driver data */
- MDRV_DRIVER_DATA(lwings_state)
+static MACHINE_CONFIG_START( lwings, lwings_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on PCB */
@@ -822,10 +819,9 @@ static MACHINE_DRIVER_START( lwings )
MDRV_SOUND_ROUTE(1, "mono", 0.20)
MDRV_SOUND_ROUTE(2, "mono", 0.20)
MDRV_SOUND_ROUTE(3, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( trojan )
- MDRV_IMPORT_FROM( lwings )
+static MACHINE_CONFIG_DERIVED( trojan, lwings )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(XTAL_12MHz/4) /* verified on PCB */
@@ -850,10 +846,9 @@ static MACHINE_DRIVER_START( trojan )
MDRV_SOUND_ADD("5205", MSM5205, XTAL_455kHz) /* verified on PCB */
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( avengers )
- MDRV_IMPORT_FROM( trojan )
+static MACHINE_CONFIG_DERIVED( avengers, trojan )
MDRV_CPU_MODIFY("maincpu") //AT: (avengers37b16gre)
MDRV_CPU_PROGRAM_MAP(avengers_map)
@@ -864,7 +859,7 @@ static MACHINE_DRIVER_START( avengers )
/* video hardware */
MDRV_VIDEO_START(avengers)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/m10.c b/src/mame/drivers/m10.c
index d18e2011781..837d29f3c9d 100644
--- a/src/mame/drivers/m10.c
+++ b/src/mame/drivers/m10.c
@@ -833,9 +833,7 @@ static const samples_interface m10_samples_interface =
*
*************************************/
-static MACHINE_DRIVER_START( m10 )
-
- MDRV_DRIVER_DATA(m10_state)
+static MACHINE_CONFIG_START( m10, m10_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,IREMM10_CPU_CLOCK)
@@ -870,24 +868,19 @@ static MACHINE_DRIVER_START( m10 )
MDRV_SOUND_CONFIG(m10_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( m11 )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA(m10_state)
+static MACHINE_CONFIG_DERIVED( m11, m10 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(m10)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(m11_main)
//MDRV_CPU_VBLANK_INT("screen", m11_interrupt)
/* sound hardware */
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( m15 )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA(m10_state)
+static MACHINE_CONFIG_START( m15, m10_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,IREMM15_CPU_CLOCK)
@@ -916,14 +909,13 @@ static MACHINE_DRIVER_START( m15 )
MDRV_SOUND_CONFIG(m10_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( headoni )
- MDRV_IMPORT_FROM(m15)
+static MACHINE_CONFIG_DERIVED( headoni, m15 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(11730000/16)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/m107.c b/src/mame/drivers/m107.c
index ce26c16e3b2..7b103b5f65e 100644
--- a/src/mame/drivers/m107.c
+++ b/src/mame/drivers/m107.c
@@ -435,7 +435,7 @@ static const ym2151_interface ym2151_config =
static const nec_config firebarr_config ={ rtypeleo_decryption_table, };
-static MACHINE_DRIVER_START( firebarr )
+static MACHINE_CONFIG_START( firebarr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V33, 28000000/2) /* NEC V33, 28MHz clock */
@@ -474,11 +474,10 @@ static MACHINE_DRIVER_START( firebarr )
MDRV_SOUND_ADD("irem", IREMGA20, 14318180/4)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config dsoccr94_config ={ dsoccr94_decryption_table, };
-static MACHINE_DRIVER_START( dsoccr94 )
- MDRV_IMPORT_FROM(firebarr)
+static MACHINE_CONFIG_DERIVED( dsoccr94, firebarr )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -489,15 +488,14 @@ static MACHINE_DRIVER_START( dsoccr94 )
/* video hardware */
MDRV_GFXDECODE(m107)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config wpksoc_config ={ leagueman_decryption_table, };
-static MACHINE_DRIVER_START( wpksoc )
- MDRV_IMPORT_FROM(firebarr)
+static MACHINE_CONFIG_DERIVED( wpksoc, firebarr )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(wpksoc_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/m14.c b/src/mame/drivers/m14.c
index c62e05e458e..62f00bf4a4a 100644
--- a/src/mame/drivers/m14.c
+++ b/src/mame/drivers/m14.c
@@ -330,10 +330,7 @@ static MACHINE_RESET( m14 )
}
-static MACHINE_DRIVER_START( m14 )
-
- /* driver data */
- MDRV_DRIVER_DATA(m14_state)
+static MACHINE_CONFIG_START( m14, m14_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",I8085A,6000000/2) //guess: 6 Mhz internally divided by 2
@@ -364,7 +361,7 @@ static MACHINE_DRIVER_START( m14 )
// MDRV_SOUND_ADD("discrete", DISCRETE, 0)
// MDRV_SOUND_CONFIG_DISCRETE(m14)
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/m52.c b/src/mame/drivers/m52.c
index 30ed80817ca..8898e2deb98 100644
--- a/src/mame/drivers/m52.c
+++ b/src/mame/drivers/m52.c
@@ -390,10 +390,7 @@ static MACHINE_RESET( m52 )
state->bgcontrol = 0;
}
-static MACHINE_DRIVER_START( m52 )
-
- /* driver data */
- MDRV_DRIVER_DATA(irem_z80_state)
+static MACHINE_CONFIG_START( m52, irem_z80_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6)
@@ -416,17 +413,16 @@ static MACHINE_DRIVER_START( m52 )
MDRV_VIDEO_UPDATE(m52)
/* sound hardware */
- MDRV_IMPORT_FROM(m52_sound_c_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(m52_sound_c_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( alpha1v )
- MDRV_IMPORT_FROM(m52)
+static MACHINE_CONFIG_DERIVED( alpha1v, m52 )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(alpha1v_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/m57.c b/src/mame/drivers/m57.c
index f01fd5e16a8..bc4fcf088f0 100644
--- a/src/mame/drivers/m57.c
+++ b/src/mame/drivers/m57.c
@@ -222,10 +222,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( m57 )
-
- /* driver data */
- MDRV_DRIVER_DATA(irem_z80_state)
+static MACHINE_CONFIG_START( m57, irem_z80_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/6) /* verified on pcb */
@@ -250,8 +247,8 @@ static MACHINE_DRIVER_START( m57 )
MDRV_VIDEO_UPDATE(m57)
/* sound hardware */
- MDRV_IMPORT_FROM(m52_sound_c_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(m52_sound_c_audio)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/m58.c b/src/mame/drivers/m58.c
index 1e563efcbe5..66ae7f3ec92 100644
--- a/src/mame/drivers/m58.c
+++ b/src/mame/drivers/m58.c
@@ -187,10 +187,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( yard )
-
- /* driver data */
- MDRV_DRIVER_DATA(irem_z80_state)
+static MACHINE_CONFIG_START( yard, irem_z80_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/3/2)
@@ -210,8 +207,8 @@ static MACHINE_DRIVER_START( yard )
MDRV_VIDEO_UPDATE(yard)
/* sound hardware */
- MDRV_IMPORT_FROM(m52_large_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(m52_large_audio)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/m62.c b/src/mame/drivers/m62.c
index 7b5d36646ea..d6cb88db996 100644
--- a/src/mame/drivers/m62.c
+++ b/src/mame/drivers/m62.c
@@ -954,10 +954,7 @@ static MACHINE_RESET( m62 )
state->bankcontrol[1] = 0;
}
-static MACHINE_DRIVER_START( ldrun )
-
- /* driver data */
- MDRV_DRIVER_DATA(irem_z80_state)
+static MACHINE_CONFIG_START( ldrun, irem_z80_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 24000000/6)
@@ -984,14 +981,13 @@ static MACHINE_DRIVER_START( ldrun )
MDRV_VIDEO_UPDATE(ldrun)
/* sound hardware */
- MDRV_IMPORT_FROM(m62_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(m62_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kungfum )
+static MACHINE_CONFIG_DERIVED( kungfum, ldrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ldrun)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(18432000/6)
MDRV_CPU_PROGRAM_MAP(kungfum_map)
@@ -1003,13 +999,12 @@ static MACHINE_DRIVER_START( kungfum )
MDRV_VIDEO_START(kungfum)
MDRV_VIDEO_UPDATE(kungfum)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( battroad )
+static MACHINE_CONFIG_DERIVED( battroad, ldrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ldrun)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(18432000/6)
MDRV_CPU_PROGRAM_MAP(battroad_map)
@@ -1024,26 +1019,24 @@ static MACHINE_DRIVER_START( battroad )
MDRV_PALETTE_INIT(battroad)
MDRV_VIDEO_START(battroad)
MDRV_VIDEO_UPDATE(battroad)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ldrun2 )
+static MACHINE_CONFIG_DERIVED( ldrun2, ldrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ldrun)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ldrun2_map)
MDRV_CPU_IO_MAP(ldrun2_io_map)
MDRV_VIDEO_START(ldrun2)
MDRV_VIDEO_UPDATE(ldrun)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ldrun3 )
+static MACHINE_CONFIG_DERIVED( ldrun3, ldrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ldrun)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ldrun3_map)
MDRV_CPU_IO_MAP(ldrun3_io_map)
@@ -1052,13 +1045,12 @@ static MACHINE_DRIVER_START( ldrun3 )
MDRV_GFXDECODE(ldrun3)
MDRV_VIDEO_START(ldrun2)
MDRV_VIDEO_UPDATE(ldrun3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ldrun4 )
+static MACHINE_CONFIG_DERIVED( ldrun4, ldrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ldrun)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ldrun4_map)
MDRV_CPU_IO_MAP(ldrun4_io_map)
@@ -1067,13 +1059,12 @@ static MACHINE_DRIVER_START( ldrun4 )
MDRV_GFXDECODE(ldrun3)
MDRV_VIDEO_START(ldrun4)
MDRV_VIDEO_UPDATE(ldrun4)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lotlot )
+static MACHINE_CONFIG_DERIVED( lotlot, ldrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ldrun)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(lotlot_map)
@@ -1084,13 +1075,12 @@ static MACHINE_DRIVER_START( lotlot )
MDRV_PALETTE_INIT(lotlot)
MDRV_VIDEO_START(lotlot)
MDRV_VIDEO_UPDATE(lotlot)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kidniki )
+static MACHINE_CONFIG_DERIVED( kidniki, ldrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ldrun)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(kidniki_map)
MDRV_CPU_IO_MAP(kidniki_io_map)
@@ -1100,13 +1090,12 @@ static MACHINE_DRIVER_START( kidniki )
MDRV_VIDEO_START(kidniki)
MDRV_VIDEO_UPDATE(kidniki)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spelunkr )
+static MACHINE_CONFIG_DERIVED( spelunkr, ldrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ldrun)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(spelunkr_map)
@@ -1115,13 +1104,12 @@ static MACHINE_DRIVER_START( spelunkr )
MDRV_VIDEO_START(spelunkr)
MDRV_VIDEO_UPDATE(spelunkr)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spelunk2 )
+static MACHINE_CONFIG_DERIVED( spelunk2, ldrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ldrun)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(spelunk2_map)
@@ -1132,13 +1120,12 @@ static MACHINE_DRIVER_START( spelunk2 )
MDRV_PALETTE_INIT(spelunk2)
MDRV_VIDEO_START(spelunk2)
MDRV_VIDEO_UPDATE(spelunk2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( youjyudn )
+static MACHINE_CONFIG_DERIVED( youjyudn, ldrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ldrun)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(18432000/6)
MDRV_CPU_PROGRAM_MAP(youjyudn_map)
@@ -1151,13 +1138,12 @@ static MACHINE_DRIVER_START( youjyudn )
MDRV_VIDEO_START(youjyudn)
MDRV_VIDEO_UPDATE(youjyudn)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( horizon )
+static MACHINE_CONFIG_DERIVED( horizon, ldrun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ldrun)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(horizon_map)
@@ -1167,7 +1153,7 @@ static MACHINE_DRIVER_START( horizon )
MDRV_VIDEO_START(horizon)
MDRV_VIDEO_UPDATE(horizon)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/m63.c b/src/mame/drivers/m63.c
index 7918620611f..a9248c6844e 100644
--- a/src/mame/drivers/m63.c
+++ b/src/mame/drivers/m63.c
@@ -732,10 +732,7 @@ static MACHINE_RESET( m63 )
state->p2 = 0;
}
-static MACHINE_DRIVER_START( m63 )
-
- /* driver data */
- MDRV_DRIVER_DATA(m63_state)
+static MACHINE_CONFIG_START( m63, m63_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,XTAL_12MHz/4) /* 3 MHz */
@@ -773,18 +770,14 @@ static MACHINE_DRIVER_START( m63 )
MDRV_SOUND_ADD("ay2", AY8910, XTAL_12MHz/8) /* ????? */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( atomboy )
- MDRV_IMPORT_FROM(m63)
+static MACHINE_CONFIG_DERIVED( atomboy, m63 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_PERIODIC_INT(snd_irq, 60/2)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( fghtbskt )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(m63_state)
+static MACHINE_CONFIG_START( fghtbskt, m63_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/4) /* 3 MHz */
@@ -823,7 +816,7 @@ static MACHINE_DRIVER_START( fghtbskt )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(fghtbskt_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/m72.c b/src/mame/drivers/m72.c
index 98a9e495bb6..69de9d343f7 100644
--- a/src/mame/drivers/m72.c
+++ b/src/mame/drivers/m72.c
@@ -1791,7 +1791,7 @@ static const ym2151_interface ym2151_config =
-static MACHINE_DRIVER_START( m72_base )
+static MACHINE_CONFIG_START( m72_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -1830,28 +1830,24 @@ static MACHINE_DRIVER_START( m72_base )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( m72 )
-
- MDRV_IMPORT_FROM(m72_base)
+static MACHINE_CONFIG_DERIVED( m72, m72_base )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT_HACK(fake_nmi,128) /* clocked by V1? (Vigilante) */
/* IRQs are generated by main Z80 and YM2151 */
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( m72_8751 )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(m72_base)
+static MACHINE_CONFIG_DERIVED( m72_8751, m72_base )
MDRV_CPU_ADD("mcu",I8751, MASTER_CLOCK/4)
MDRV_CPU_IO_MAP(mcu_io_map)
MDRV_CPU_VBLANK_INT("screen", m72_mcu_int)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rtype )
+static MACHINE_CONFIG_START( rtype, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -1887,9 +1883,9 @@ static MACHINE_DRIVER_START( rtype )
MDRV_SOUND_CONFIG(ym2151_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( xmultipl )
+static MACHINE_CONFIG_START( xmultipl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -1930,9 +1926,9 @@ static MACHINE_DRIVER_START( xmultipl )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( xmultiplm72 )
+static MACHINE_CONFIG_START( xmultiplm72, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -1973,9 +1969,9 @@ static MACHINE_DRIVER_START( xmultiplm72 )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dbreed )
+static MACHINE_CONFIG_START( dbreed, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2016,9 +2012,9 @@ static MACHINE_DRIVER_START( dbreed )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dbreedm72 )
+static MACHINE_CONFIG_START( dbreedm72, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2059,9 +2055,9 @@ static MACHINE_DRIVER_START( dbreedm72 )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rtype2 )
+static MACHINE_CONFIG_START( rtype2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2102,9 +2098,9 @@ static MACHINE_DRIVER_START( rtype2 )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( majtitle )
+static MACHINE_CONFIG_START( majtitle, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2145,9 +2141,9 @@ static MACHINE_DRIVER_START( majtitle )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hharry )
+static MACHINE_CONFIG_START( hharry, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2188,9 +2184,9 @@ static MACHINE_DRIVER_START( hharry )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hharryu )
+static MACHINE_CONFIG_START( hharryu, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2231,9 +2227,9 @@ static MACHINE_DRIVER_START( hharryu )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dkgenm72 )
+static MACHINE_CONFIG_START( dkgenm72, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2274,9 +2270,9 @@ static MACHINE_DRIVER_START( dkgenm72 )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( poundfor )
+static MACHINE_CONFIG_START( poundfor, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2317,9 +2313,9 @@ static MACHINE_DRIVER_START( poundfor )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cosmccop )
+static MACHINE_CONFIG_START( cosmccop, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2)
@@ -2360,15 +2356,14 @@ static MACHINE_DRIVER_START( cosmccop )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config kengo_config ={ gunforce_decryption_table, };
-static MACHINE_DRIVER_START( kengo )
- MDRV_IMPORT_FROM( cosmccop )
+static MACHINE_CONFIG_DERIVED( kengo, cosmccop )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CONFIG(kengo_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/m79amb.c b/src/mame/drivers/m79amb.c
index 042ab35e774..50155d0c7b3 100644
--- a/src/mame/drivers/m79amb.c
+++ b/src/mame/drivers/m79amb.c
@@ -205,10 +205,7 @@ static INTERRUPT_GEN( m79amb_interrupt )
cpu_set_input_line_and_vector(device, 0, HOLD_LINE, 0xcf); /* RST 08h */
}
-static MACHINE_DRIVER_START( m79amb )
-
- /* driver data */
- MDRV_DRIVER_DATA(m79amb_state)
+static MACHINE_CONFIG_START( m79amb, m79amb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, XTAL_19_6608MHz / 10)
@@ -232,7 +229,7 @@ static MACHINE_DRIVER_START( m79amb )
MDRV_SOUND_CONFIG_DISCRETE(m79amb)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/m90.c b/src/mame/drivers/m90.c
index 95fa3b9ce22..2fb656070a5 100644
--- a/src/mame/drivers/m90.c
+++ b/src/mame/drivers/m90.c
@@ -697,7 +697,7 @@ static INTERRUPT_GEN( bomblord_interrupt )
/* Basic hardware -- no decryption table is setup for CPU */
-static MACHINE_DRIVER_START( m90 )
+static MACHINE_CONFIG_START( m90, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,XTAL_32MHz/2/2) /* verified clock on cpu is 16Mhz but probably divided internally by 2 */
MDRV_CPU_PROGRAM_MAP(m90_main_cpu_map)
@@ -737,47 +737,43 @@ static MACHINE_DRIVER_START( m90 )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config hasamu_config ={ gunforce_decryption_table, };
-static MACHINE_DRIVER_START( hasamu )
- MDRV_IMPORT_FROM( m90 )
+static MACHINE_CONFIG_DERIVED( hasamu, m90 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CONFIG(hasamu_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config quizf1_config ={ lethalth_decryption_table, };
-static MACHINE_DRIVER_START( quizf1 )
- MDRV_IMPORT_FROM( m90 )
+static MACHINE_CONFIG_DERIVED( quizf1, m90 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CONFIG(quizf1_config)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(6*8, 54*8-1, 17*8-8, 47*8-1+8)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config matchit2_config ={ matchit2_decryption_table, };
-static MACHINE_DRIVER_START( matchit2 )
- MDRV_IMPORT_FROM( m90 )
+static MACHINE_CONFIG_DERIVED( matchit2, m90 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CONFIG(matchit2_config)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(6*8, 54*8-1, 17*8-8, 47*8-1+8)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config riskchal_config ={ gussun_decryption_table, };
-static MACHINE_DRIVER_START( riskchal )
- MDRV_IMPORT_FROM( m90 )
+static MACHINE_CONFIG_DERIVED( riskchal, m90 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CONFIG(riskchal_config)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(10*8, 50*8-1, 17*8, 47*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config bomberman_config ={ bomberman_decryption_table, };
-static MACHINE_DRIVER_START( bombrman )
+static MACHINE_CONFIG_START( bombrman, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,XTAL_32MHz/2/2) /* verified clock on cpu is 16Mhz but probably divided internally by 2 */
@@ -818,11 +814,11 @@ static MACHINE_DRIVER_START( bombrman )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config dynablaster_config ={ dynablaster_decryption_table, };
-static MACHINE_DRIVER_START( bbmanw )
+static MACHINE_CONFIG_START( bbmanw, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,XTAL_32MHz/2/2) /* verified clock on cpu is 16Mhz but probably divided internally by 2 */
@@ -863,24 +859,20 @@ static MACHINE_DRIVER_START( bbmanw )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config no_table ={ NULL, };
-static MACHINE_DRIVER_START( bbmanwj )
-
- MDRV_IMPORT_FROM( bbmanw )
+static MACHINE_CONFIG_DERIVED( bbmanwj, bbmanw )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_PROGRAM_MAP(m90_sound_cpu_map)
MDRV_CPU_IO_MAP(m90_sound_cpu_io_map)
MDRV_CPU_VBLANK_INT_HACK(nmi_line_pulse,128) /* clocked by V1? (Vigilante) */
/* IRQs are generated by main Z80 and YM2151 */
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( bomblord )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM( bbmanw )
+static MACHINE_CONFIG_DERIVED( bomblord, bbmanw )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CONFIG(no_table)
MDRV_CPU_PROGRAM_MAP(bomblord_main_cpu_map)
@@ -891,9 +883,9 @@ static MACHINE_DRIVER_START( bomblord )
MDRV_CPU_VBLANK_INT("screen", bomblord_interrupt)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dynablsb )
+static MACHINE_CONFIG_START( dynablsb, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,32000000/4)
@@ -933,7 +925,7 @@ static MACHINE_DRIVER_START( dynablsb )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/m92.c b/src/mame/drivers/m92.c
index 17e5b20326f..a39cc972e59 100644
--- a/src/mame/drivers/m92.c
+++ b/src/mame/drivers/m92.c
@@ -917,7 +917,7 @@ void m92_sprite_interrupt(running_machine *machine)
cputag_set_input_line_and_vector(machine, "maincpu", 0, HOLD_LINE, M92_IRQ_1);
}
-static MACHINE_DRIVER_START( m92 )
+static MACHINE_CONFIG_START( m92, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V33,18000000/2) /* NEC V33, 18 MHz clock */
@@ -956,61 +956,54 @@ static MACHINE_DRIVER_START( m92 )
MDRV_SOUND_ADD("irem", IREMGA20, 14318180/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config gunforce_config ={ gunforce_decryption_table, };
-static MACHINE_DRIVER_START( gunforce )
- MDRV_IMPORT_FROM( m92 )
+static MACHINE_CONFIG_DERIVED( gunforce, m92 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(gunforce_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config bmaster_config ={ bomberman_decryption_table, };
-static MACHINE_DRIVER_START( bmaster )
- MDRV_IMPORT_FROM( m92 )
+static MACHINE_CONFIG_DERIVED( bmaster, m92 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(bmaster_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config lethalth_config ={ lethalth_decryption_table, };
-static MACHINE_DRIVER_START( lethalth )
- MDRV_IMPORT_FROM(m92)
+static MACHINE_CONFIG_DERIVED( lethalth, m92 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(lethalth_map)
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(lethalth_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config uccops_config ={ dynablaster_decryption_table, };
-static MACHINE_DRIVER_START( uccops )
- MDRV_IMPORT_FROM(m92)
+static MACHINE_CONFIG_DERIVED( uccops, m92 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(uccops_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config mysticri_config ={ mysticri_decryption_table, };
-static MACHINE_DRIVER_START( mysticri )
- MDRV_IMPORT_FROM(m92)
+static MACHINE_CONFIG_DERIVED( mysticri, m92 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(mysticri_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config majtitl2_config ={ majtitl2_decryption_table, };
-static MACHINE_DRIVER_START( majtitl2 )
- MDRV_IMPORT_FROM(m92)
+static MACHINE_CONFIG_DERIVED( majtitl2, m92 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(majtitl2_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config hook_config ={ hook_decryption_table, };
-static MACHINE_DRIVER_START( hook )
- MDRV_IMPORT_FROM(m92)
+static MACHINE_CONFIG_DERIVED( hook, m92 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(hook_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ppan )
+static MACHINE_CONFIG_START( ppan, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V33,18000000/2)
@@ -1043,56 +1036,50 @@ static MACHINE_DRIVER_START( ppan )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config rtypeleo_config ={ rtypeleo_decryption_table, };
-static MACHINE_DRIVER_START( rtypeleo )
- MDRV_IMPORT_FROM(m92)
+static MACHINE_CONFIG_DERIVED( rtypeleo, m92 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(rtypeleo_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config inthunt_config ={ inthunt_decryption_table, };
-static MACHINE_DRIVER_START( inthunt )
- MDRV_IMPORT_FROM(m92)
+static MACHINE_CONFIG_DERIVED( inthunt, m92 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(inthunt_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config nbbatman_config ={ leagueman_decryption_table, };
-static MACHINE_DRIVER_START( nbbatman )
- MDRV_IMPORT_FROM(m92)
+static MACHINE_CONFIG_DERIVED( nbbatman, m92 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(nbbatman_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config psoldier_config ={ psoldier_decryption_table, };
-static MACHINE_DRIVER_START( psoldier )
- MDRV_IMPORT_FROM(m92)
+static MACHINE_CONFIG_DERIVED( psoldier, m92 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(psoldier_config)
/* video hardware */
MDRV_GFXDECODE(2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config dsoccr94_config ={ dsoccr94_decryption_table, };
-static MACHINE_DRIVER_START( dsoccr94j )
- MDRV_IMPORT_FROM(m92)
+static MACHINE_CONFIG_DERIVED( dsoccr94j, m92 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(dsoccr94_config)
/* video hardware */
MDRV_GFXDECODE(2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const nec_config gunforc2_config ={ lethalth_decryption_table, };
-static MACHINE_DRIVER_START( gunforc2 )
- MDRV_IMPORT_FROM(m92)
+static MACHINE_CONFIG_DERIVED( gunforc2, m92 )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_CONFIG(gunforc2_config)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/macrossp.c b/src/mame/drivers/macrossp.c
index d75243d208d..b3787ac7112 100644
--- a/src/mame/drivers/macrossp.c
+++ b/src/mame/drivers/macrossp.c
@@ -625,10 +625,7 @@ static MACHINE_RESET( macrossp )
state->old_fade = 0;
}
-static MACHINE_DRIVER_START( macrossp )
-
- /* driver data */
- MDRV_DRIVER_DATA(macrossp_state)
+static MACHINE_CONFIG_START( macrossp, macrossp_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 50000000/2) /* 25 MHz */
@@ -663,14 +660,13 @@ static MACHINE_DRIVER_START( macrossp )
MDRV_SOUND_CONFIG(es5506_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( quizmoon )
- MDRV_IMPORT_FROM(macrossp)
+static MACHINE_CONFIG_DERIVED( quizmoon, macrossp )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 24*16-1, 0*8, 14*16-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/macs.c b/src/mame/drivers/macs.c
index 91f7ebe852b..9c5dc690fd9 100644
--- a/src/mame/drivers/macs.c
+++ b/src/mame/drivers/macs.c
@@ -457,7 +457,7 @@ static const st0016_interface st0016_config =
&st0016_charram
};
-static MACHINE_DRIVER_START( macs )
+static MACHINE_CONFIG_START( macs, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,8000000) /* 8 MHz ? */
MDRV_CPU_PROGRAM_MAP(macs_mem)
@@ -487,7 +487,7 @@ static MACHINE_DRIVER_START( macs )
MDRV_SOUND_CONFIG(st0016_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/madalien.c b/src/mame/drivers/madalien.c
index bfdef807c57..8e74ff5c531 100644
--- a/src/mame/drivers/madalien.c
+++ b/src/mame/drivers/madalien.c
@@ -172,7 +172,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( madalien )
+static MACHINE_CONFIG_START( madalien, driver_data_t )
/* main CPU */
MDRV_CPU_ADD("maincpu", M6502, MADALIEN_MAIN_CLOCK / 8) /* 1324kHz */
@@ -183,7 +183,7 @@ static MACHINE_DRIVER_START( madalien )
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
/* video hardware */
- MDRV_IMPORT_FROM(madalien_video)
+ MDRV_FRAGMENT_ADD(madalien_video)
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -198,7 +198,7 @@ static MACHINE_DRIVER_START( madalien )
MDRV_SOUND_CONFIG_DISCRETE(madalien)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( madalien )
diff --git a/src/mame/drivers/madmotor.c b/src/mame/drivers/madmotor.c
index 69912df0974..745ae18d47f 100644
--- a/src/mame/drivers/madmotor.c
+++ b/src/mame/drivers/madmotor.c
@@ -240,10 +240,7 @@ static MACHINE_RESET( madmotor )
state->flipscreen = 0;
}
-static MACHINE_DRIVER_START( madmotor )
-
- /* driver data */
- MDRV_DRIVER_DATA(madmotor_state)
+static MACHINE_CONFIG_START( madmotor, madmotor_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* Custom chip 59, 24 MHz crystal */
@@ -288,7 +285,7 @@ static MACHINE_DRIVER_START( madmotor )
MDRV_OKIM6295_ADD("oki2", 2047848, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/magic10.c b/src/mame/drivers/magic10.c
index e326507cd78..8b7cff2b3cf 100644
--- a/src/mame/drivers/magic10.c
+++ b/src/mame/drivers/magic10.c
@@ -645,7 +645,7 @@ GFXDECODE_END
* Machine Drivers *
****************************/
-static MACHINE_DRIVER_START( magic10 )
+static MACHINE_CONFIG_START( magic10, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) // ?
MDRV_CPU_PROGRAM_MAP(magic10_map)
@@ -670,49 +670,49 @@ static MACHINE_DRIVER_START( magic10 )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( magic10a )
+static MACHINE_CONFIG_DERIVED( magic10a, magic10 )
+
/* basic machine hardware */
- MDRV_IMPORT_FROM(magic10)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(magic10a_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( magic102, magic10 )
-static MACHINE_DRIVER_START( magic102 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(magic10)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(magic102_map)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 0*8, 30*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hotslot )
+static MACHINE_CONFIG_DERIVED( hotslot, magic10 )
+
/* basic machine hardware */
- MDRV_IMPORT_FROM(magic10)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hotslot_map)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(8*8, 56*8-1, 2*8, 32*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( sgsafari, magic10 )
-static MACHINE_DRIVER_START( sgsafari )
/* basic machine hardware */
- MDRV_IMPORT_FROM(magic10)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sgsafari_map)
MDRV_CPU_VBLANK_INT("screen", irq2_line_hold) /* L1 interrupts */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0*8, 44*8-1, 0*8, 30*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/****************************
diff --git a/src/mame/drivers/magicard.c b/src/mame/drivers/magicard.c
index 4aa69449e07..67cdb4ebacb 100644
--- a/src/mame/drivers/magicard.c
+++ b/src/mame/drivers/magicard.c
@@ -623,7 +623,7 @@ static INTERRUPT_GEN( magicard_irq )
cpu_set_input_line_and_vector(device, 1, HOLD_LINE,0xf0/4);
}
-static MACHINE_DRIVER_START( magicard )
+static MACHINE_CONFIG_START( magicard, driver_data_t )
MDRV_CPU_ADD("maincpu", SCC68070, CLOCK_A/2) /* SCC-68070 CCA84 datasheet */
MDRV_CPU_PROGRAM_MAP(magicard_mem)
MDRV_CPU_VBLANK_INT("screen", magicard_irq) /* no interrupts? (it erases the vectors..) */
@@ -645,7 +645,7 @@ static MACHINE_DRIVER_START( magicard )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("ymsnd", YM2413, CLOCK_A/12)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/magicfly.c b/src/mame/drivers/magicfly.c
index d3701b1e287..57428cea6fa 100644
--- a/src/mame/drivers/magicfly.c
+++ b/src/mame/drivers/magicfly.c
@@ -755,7 +755,7 @@ static const mc6845_interface mc6845_intf =
* Machine Drivers *
*************************/
-static MACHINE_DRIVER_START( magicfly )
+static MACHINE_CONFIG_START( magicfly, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/12) /* guess */
@@ -785,17 +785,16 @@ static MACHINE_DRIVER_START( magicfly )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( 7mezzo )
+static MACHINE_CONFIG_DERIVED( 7mezzo, magicfly )
/* basic machine hardware */
- MDRV_IMPORT_FROM(magicfly)
/* video hardware */
MDRV_VIDEO_START(7mezzo)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/magictg.c b/src/mame/drivers/magictg.c
index 13535d8cf03..3827385a4be 100644
--- a/src/mame/drivers/magictg.c
+++ b/src/mame/drivers/magictg.c
@@ -139,7 +139,7 @@ ADDRESS_MAP_END
-static MACHINE_DRIVER_START( magictg )
+static MACHINE_CONFIG_START( magictg, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R4600BE, 10000000) // ?? what cpu?
MDRV_CPU_CONFIG(r4600_config)
@@ -156,7 +156,7 @@ static MACHINE_DRIVER_START( magictg )
MDRV_VIDEO_START(magictg)
MDRV_VIDEO_UPDATE(magictg)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( magictg )
PORT_START("IPT_TEST")
diff --git a/src/mame/drivers/magmax.c b/src/mame/drivers/magmax.c
index 0777fd26609..f750989bf1e 100644
--- a/src/mame/drivers/magmax.c
+++ b/src/mame/drivers/magmax.c
@@ -355,7 +355,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( magmax )
+static MACHINE_CONFIG_START( magmax, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz/2) /* verified on pcb */
@@ -397,7 +397,7 @@ static MACHINE_DRIVER_START( magmax )
MDRV_SOUND_ADD("ay3", AY8910, XTAL_20MHz/16) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( magmax )
diff --git a/src/mame/drivers/mainevt.c b/src/mame/drivers/mainevt.c
index 6b36c6477ec..85160b9a541 100644
--- a/src/mame/drivers/mainevt.c
+++ b/src/mame/drivers/mainevt.c
@@ -439,10 +439,7 @@ static MACHINE_RESET( mainevt )
state->nmi_enable = 0;
}
-static MACHINE_DRIVER_START( mainevt )
-
- /* driver data */
- MDRV_DRIVER_DATA(mainevt_state)
+static MACHINE_CONFIG_START( mainevt, mainevt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, 3000000*4) /* ?? */
@@ -484,7 +481,7 @@ static MACHINE_DRIVER_START( mainevt )
MDRV_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const k052109_interface dv_k052109_intf =
@@ -503,10 +500,7 @@ static const k051960_interface dv_k051960_intf =
dv_sprite_callback
};
-static MACHINE_DRIVER_START( devstors )
-
- /* driver data */
- MDRV_DRIVER_DATA(mainevt_state)
+static MACHINE_CONFIG_START( devstors, mainevt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, 3000000*4) /* ?? */
@@ -550,7 +544,7 @@ static MACHINE_DRIVER_START( devstors )
MDRV_SOUND_CONFIG(k007232_config)
MDRV_SOUND_ROUTE(0, "mono", 0.20)
MDRV_SOUND_ROUTE(1, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mainsnk.c b/src/mame/drivers/mainsnk.c
index fe37e59601c..d0fb18d3200 100644
--- a/src/mame/drivers/mainsnk.c
+++ b/src/mame/drivers/mainsnk.c
@@ -390,9 +390,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( mainsnk )
-
- MDRV_DRIVER_DATA( mainsnk_state )
+static MACHINE_CONFIG_START( mainsnk, mainsnk_state )
MDRV_CPU_ADD("maincpu", Z80, 3360000)
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -426,7 +424,7 @@ static MACHINE_DRIVER_START( mainsnk )
MDRV_SOUND_ADD("ay2", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( mainsnk)
diff --git a/src/mame/drivers/malzak.c b/src/mame/drivers/malzak.c
index 230a36ba544..352b5533b94 100644
--- a/src/mame/drivers/malzak.c
+++ b/src/mame/drivers/malzak.c
@@ -394,10 +394,7 @@ static MACHINE_RESET( malzak )
state->malzak_y = 0;
}
-static MACHINE_DRIVER_START( malzak )
-
- /* driver data */
- MDRV_DRIVER_DATA(malzak_state)
+static MACHINE_CONFIG_START( malzak, malzak_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, 3800000/4)
@@ -441,16 +438,15 @@ static MACHINE_DRIVER_START( malzak )
MDRV_SOUND_ADD("s2636snd_1", S2636, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( malzak2 )
- MDRV_IMPORT_FROM( malzak )
+static MACHINE_CONFIG_DERIVED( malzak2, malzak )
MDRV_CPU_MODIFY( "maincpu" )
MDRV_CPU_PROGRAM_MAP(malzak2_map)
MDRV_NVRAM_HANDLER( generic_0fill )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( malzak )
ROM_REGION( 0x8000, "maincpu", 0 )
diff --git a/src/mame/drivers/mappy.c b/src/mame/drivers/mappy.c
index 44f6fa2e147..d44b6397aa0 100644
--- a/src/mame/drivers/mappy.c
+++ b/src/mame/drivers/mappy.c
@@ -1602,9 +1602,7 @@ static const namcoio_interface intf1_interleave =
};
-static MACHINE_DRIVER_START( superpac )
-
- MDRV_DRIVER_DATA(mappy_state)
+static MACHINE_CONFIG_START( superpac, mappy_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, PIXEL_CLOCK/4) /* 1.536 MHz */
@@ -1641,12 +1639,11 @@ static MACHINE_DRIVER_START( superpac )
MDRV_SOUND_ADD("namco", NAMCO_15XX, 18432000/768)
MDRV_SOUND_CONFIG(namco_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pacnpal )
+static MACHINE_CONFIG_DERIVED( pacnpal, superpac )
/* basic machine hardware */
- MDRV_IMPORT_FROM( superpac )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", pacnpal_interrupt_1) // also update the custom I/O chips
@@ -1654,13 +1651,12 @@ static MACHINE_DRIVER_START( pacnpal )
MDRV_DEVICE_REMOVE("namcoio_2")
MDRV_NAMCO56XX_ADD("namcoio_1", intf0_lamps)
MDRV_NAMCO59XX_ADD("namcoio_2", intf1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( grobda )
+static MACHINE_CONFIG_DERIVED( grobda, superpac )
/* basic machine hardware */
- MDRV_IMPORT_FROM( superpac )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", phozon_interrupt_1) // also update the custom I/O chips
@@ -1672,12 +1668,10 @@ static MACHINE_DRIVER_START( grobda )
/* sound hardware */
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.55)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( phozon )
- MDRV_DRIVER_DATA(mappy_state)
+static MACHINE_CONFIG_START( phozon, mappy_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, PIXEL_CLOCK/4) /* MAIN CPU */
@@ -1718,12 +1712,10 @@ static MACHINE_DRIVER_START( phozon )
MDRV_SOUND_ADD("namco", NAMCO_15XX, 18432000/768)
MDRV_SOUND_CONFIG(namco_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mappy )
- MDRV_DRIVER_DATA(mappy_state)
+static MACHINE_CONFIG_START( mappy, mappy_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, PIXEL_CLOCK/4) /* 1.536 MHz */
@@ -1760,12 +1752,11 @@ static MACHINE_DRIVER_START( mappy )
MDRV_SOUND_ADD("namco", NAMCO_15XX, 18432000/768)
MDRV_SOUND_CONFIG(namco_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( digdug2 )
+static MACHINE_CONFIG_DERIVED( digdug2, mappy )
/* basic machine hardware */
- MDRV_IMPORT_FROM( mappy )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", phozon_interrupt_1) // also update the custom I/O chips
@@ -1775,12 +1766,11 @@ static MACHINE_DRIVER_START( digdug2 )
MDRV_DEVICE_REMOVE("namcoio_2")
MDRV_NAMCO58XX_ADD("namcoio_1", intf0)
MDRV_NAMCO56XX_ADD("namcoio_2", intf1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( todruaga )
+static MACHINE_CONFIG_DERIVED( todruaga, mappy )
/* basic machine hardware */
- MDRV_IMPORT_FROM( mappy )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", phozon_interrupt_1) // also update the custom I/O chips
@@ -1792,12 +1782,11 @@ static MACHINE_DRIVER_START( todruaga )
/* video hardware */
MDRV_GFXDECODE(todruaga)
MDRV_PALETTE_LENGTH(64*4+64*16)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( motos )
+static MACHINE_CONFIG_DERIVED( motos, mappy )
/* basic machine hardware */
- MDRV_IMPORT_FROM( mappy )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", superpac_interrupt_1) // also update the custom I/O chips
@@ -1805,7 +1794,7 @@ static MACHINE_DRIVER_START( motos )
MDRV_DEVICE_REMOVE("namcoio_2")
MDRV_NAMCO56XX_ADD("namcoio_1", intf0_lamps)
MDRV_NAMCO56XX_ADD("namcoio_2", intf1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/marineb.c b/src/mame/drivers/marineb.c
index 6a452d9f84a..f2aed763666 100644
--- a/src/mame/drivers/marineb.c
+++ b/src/mame/drivers/marineb.c
@@ -525,10 +525,7 @@ static GFXDECODE_START( hopprobo )
GFXDECODE_END
-static MACHINE_DRIVER_START( marineb )
-
- /* driver data */
- MDRV_DRIVER_DATA(espial_state)
+static MACHINE_CONFIG_START( marineb, espial_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3072000) /* 3.072 MHz */
@@ -558,46 +555,42 @@ static MACHINE_DRIVER_START( marineb )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("ay1", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( changes )
+static MACHINE_CONFIG_DERIVED( changes, marineb )
/* basic machine hardware */
- MDRV_IMPORT_FROM(marineb)
/* video hardware */
MDRV_GFXDECODE(changes)
MDRV_VIDEO_UPDATE(changes)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( springer )
+static MACHINE_CONFIG_DERIVED( springer, marineb )
/* basic machine hardware */
- MDRV_IMPORT_FROM(marineb)
MDRV_MACHINE_RESET(springer)
/* video hardware */
MDRV_VIDEO_UPDATE(springer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hoccer )
+static MACHINE_CONFIG_DERIVED( hoccer, marineb )
/* basic machine hardware */
- MDRV_IMPORT_FROM(marineb)
/* video hardware */
MDRV_GFXDECODE(hoccer)
MDRV_VIDEO_UPDATE(hoccer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wanted )
+static MACHINE_CONFIG_DERIVED( wanted, marineb )
/* basic machine hardware */
- MDRV_IMPORT_FROM(marineb)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(wanted_io_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
@@ -612,26 +605,24 @@ static MACHINE_DRIVER_START( wanted )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hopprobo )
+static MACHINE_CONFIG_DERIVED( hopprobo, marineb )
/* basic machine hardware */
- MDRV_IMPORT_FROM(marineb)
/* video hardware */
MDRV_GFXDECODE(hopprobo)
MDRV_VIDEO_UPDATE(hopprobo)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bcruzm12 )
+static MACHINE_CONFIG_DERIVED( bcruzm12, wanted )
/* basic machine hardware */
- MDRV_IMPORT_FROM(wanted)
MDRV_MACHINE_RESET(springer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/marinedt.c b/src/mame/drivers/marinedt.c
index c3b41419d94..0d94ebd1ba9 100644
--- a/src/mame/drivers/marinedt.c
+++ b/src/mame/drivers/marinedt.c
@@ -645,10 +645,7 @@ static MACHINE_RESET( marinedt )
state->cyqh = 0;
}
-static MACHINE_DRIVER_START( marinedt )
-
- /* driver data */
- MDRV_DRIVER_DATA(marinedt_state)
+static MACHINE_CONFIG_START( marinedt, marinedt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,10000000/4)
@@ -676,7 +673,7 @@ static MACHINE_DRIVER_START( marinedt )
/* sound hardware */
//discrete sound
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/mario.c b/src/mame/drivers/mario.c
index bcf24fb3372..67752cc80fd 100644
--- a/src/mame/drivers/mario.c
+++ b/src/mame/drivers/mario.c
@@ -317,10 +317,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( mario_base )
-
- /* driver data */
- MDRV_DRIVER_DATA(mario_state)
+static MACHINE_CONFIG_START( mario_base, mario_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, Z80_CLOCK) /* verified on pcb */
@@ -342,30 +339,28 @@ static MACHINE_DRIVER_START( mario_base )
MDRV_VIDEO_START(mario)
MDRV_VIDEO_UPDATE(mario)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mario )
+static MACHINE_CONFIG_DERIVED( mario, mario_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mario_base )
/* sound hardware */
- MDRV_IMPORT_FROM(mario_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(mario_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( masao )
+static MACHINE_CONFIG_DERIVED( masao, mario_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mario_base )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(4000000) /* 4.000 MHz (?) */
MDRV_CPU_PROGRAM_MAP(masao_map)
/* sound hardware */
- MDRV_IMPORT_FROM(masao_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(masao_audio)
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/markham.c b/src/mame/drivers/markham.c
index c658c7c2cf7..4d1a17d10f7 100644
--- a/src/mame/drivers/markham.c
+++ b/src/mame/drivers/markham.c
@@ -172,10 +172,7 @@ static GFXDECODE_START( markham )
GFXDECODE_END
-static MACHINE_DRIVER_START( markham )
-
- /* driver data */
- MDRV_DRIVER_DATA(markham_state)
+static MACHINE_CONFIG_START( markham, markham_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000/2) /* 4.000MHz */
@@ -211,7 +208,7 @@ static MACHINE_DRIVER_START( markham )
MDRV_SOUND_ADD("sn2", SN76496, 8000000/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/****************************************************************************/
diff --git a/src/mame/drivers/mastboy.c b/src/mame/drivers/mastboy.c
index 256a986b17d..4e9d27bb695 100644
--- a/src/mame/drivers/mastboy.c
+++ b/src/mame/drivers/mastboy.c
@@ -855,7 +855,7 @@ static MACHINE_RESET( mastboy )
-static MACHINE_DRIVER_START( mastboy )
+static MACHINE_CONFIG_START( mastboy, driver_data_t )
MDRV_CPU_ADD("maincpu", Z180, 12000000/2) /* HD647180X0CP6-1M1R */
MDRV_CPU_PROGRAM_MAP(mastboy_map)
MDRV_CPU_IO_MAP(mastboy_io_map)
@@ -887,7 +887,7 @@ static MACHINE_DRIVER_START( mastboy )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Romsets */
diff --git a/src/mame/drivers/matmania.c b/src/mame/drivers/matmania.c
index 87b712fa6fc..c2a61ef95a6 100644
--- a/src/mame/drivers/matmania.c
+++ b/src/mame/drivers/matmania.c
@@ -308,10 +308,7 @@ static MACHINE_START( matmania )
state->mcu = machine->device("mcu");
}
-static MACHINE_DRIVER_START( matmania )
-
- /* driver data */
- MDRV_DRIVER_DATA(matmania_state)
+static MACHINE_CONFIG_START( matmania, matmania_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1500000) /* 1.5 MHz ???? */
@@ -352,7 +349,7 @@ static MACHINE_DRIVER_START( matmania )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -409,10 +406,7 @@ static MACHINE_RESET( maniach )
state->from_mcu = 0;
}
-static MACHINE_DRIVER_START( maniach )
-
- /* driver data */
- MDRV_DRIVER_DATA(matmania_state)
+static MACHINE_CONFIG_START( maniach, matmania_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1500000) /* 1.5 MHz ???? */
@@ -455,7 +449,7 @@ static MACHINE_DRIVER_START( maniach )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/maxaflex.c b/src/mame/drivers/maxaflex.c
index 67f84c56e65..97326f356a3 100644
--- a/src/mame/drivers/maxaflex.c
+++ b/src/mame/drivers/maxaflex.c
@@ -427,7 +427,7 @@ static const pokey_interface pokey_config = {
atari_interrupt_cb
};
-static MACHINE_DRIVER_START( a600xl )
+static MACHINE_CONFIG_START( a600xl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, FREQ_17_EXACT)
MDRV_CPU_PROGRAM_MAP(a600xl_mem)
@@ -465,12 +465,11 @@ static MACHINE_DRIVER_START( a600xl )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MDRV_MACHINE_START( atarixl )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( maxaflex )
- MDRV_IMPORT_FROM( a600xl )
+static MACHINE_CONFIG_DERIVED( maxaflex, a600xl )
MDRV_MACHINE_RESET( supervisor_board )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START(maxaflex)
ROM_REGION(0x10000,"maincpu",0) /* 64K for the CPU */
diff --git a/src/mame/drivers/maygay1b.c b/src/mame/drivers/maygay1b.c
index 982ba8dd753..85d5ec60497 100644
--- a/src/mame/drivers/maygay1b.c
+++ b/src/mame/drivers/maygay1b.c
@@ -791,7 +791,7 @@ static const duart68681_config maygaym1_duart68681_config =
// machine driver for maygay m1 board /////////////////////////////////
-static MACHINE_DRIVER_START( m1 )
+static MACHINE_CONFIG_START( m1, driver_data_t )
MDRV_MACHINE_START(m1)
MDRV_MACHINE_RESET(m1)
@@ -814,7 +814,7 @@ static MACHINE_DRIVER_START( m1 )
MDRV_NVRAM_HANDLER(generic_0fill)
MDRV_DEFAULT_LAYOUT(layout_awpvid16)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( m_sptlgt )
ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 )
diff --git a/src/mame/drivers/maygayv1.c b/src/mame/drivers/maygayv1.c
index eed40d3e1bf..4beb2cd0a1d 100644
--- a/src/mame/drivers/maygayv1.c
+++ b/src/mame/drivers/maygayv1.c
@@ -989,7 +989,7 @@ static INTERRUPT_GEN( vsync_interrupt )
}
-static MACHINE_DRIVER_START( maygayv1 )
+static MACHINE_CONFIG_START( maygayv1, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK / 2)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", vsync_interrupt)
@@ -1029,7 +1029,7 @@ static MACHINE_DRIVER_START( maygayv1 )
MDRV_SOUND_ADD("upd",UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/mayumi.c b/src/mame/drivers/mayumi.c
index f97fea3ba2c..2d73e8e8a3d 100644
--- a/src/mame/drivers/mayumi.c
+++ b/src/mame/drivers/mayumi.c
@@ -368,10 +368,7 @@ static MACHINE_RESET( mayumi )
state->input_sel = 0;
}
-static MACHINE_DRIVER_START( mayumi )
-
- /* driver data */
- MDRV_DRIVER_DATA(mayumi_state)
+static MACHINE_CONFIG_START( mayumi, mayumi_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MCLK/2) /* 5.000 MHz ? */
@@ -409,7 +406,7 @@ static MACHINE_DRIVER_START( mayumi )
MDRV_NVRAM_HANDLER(generic_0fill)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/mazerbla.c b/src/mame/drivers/mazerbla.c
index 92db87040c0..37d27bf6259 100644
--- a/src/mame/drivers/mazerbla.c
+++ b/src/mame/drivers/mazerbla.c
@@ -1475,10 +1475,7 @@ static MACHINE_RESET( mazerbla )
}
-static MACHINE_DRIVER_START( mazerbla )
-
- /* driver data */
- MDRV_DRIVER_DATA(mazerbla_state)
+static MACHINE_CONFIG_START( mazerbla, mazerbla_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK) /* 4 MHz, no NMI, IM2 - vectors at 0xf8, 0xfa, 0xfc */
@@ -1518,13 +1515,10 @@ static MACHINE_DRIVER_START( mazerbla )
MDRV_VIDEO_UPDATE(mazerbla)
/* sound hardware */
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( greatgun )
- /* driver data */
- MDRV_DRIVER_DATA(mazerbla_state)
+static MACHINE_CONFIG_START( greatgun, mazerbla_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK) /* 4 MHz, no NMI, IM2 - vectors at 0xf8, 0xfa, 0xfc */
@@ -1571,7 +1565,7 @@ static MACHINE_DRIVER_START( greatgun )
MDRV_SOUND_ADD("ay2", AY8910, SOUND_CLOCK / 8)
MDRV_SOUND_CONFIG(ay8912_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/mcatadv.c b/src/mame/drivers/mcatadv.c
index b7404916382..68d4c6a4ac5 100644
--- a/src/mame/drivers/mcatadv.c
+++ b/src/mame/drivers/mcatadv.c
@@ -441,10 +441,7 @@ static MACHINE_START( mcatadv )
state_save_register_global(machine, state->palette_bank2);
}
-static MACHINE_DRIVER_START( mcatadv )
-
- /* driver data */
- MDRV_DRIVER_DATA(mcatadv_state)
+static MACHINE_CONFIG_START( mcatadv, mcatadv_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz) /* verified on pcb */
@@ -483,15 +480,14 @@ static MACHINE_DRIVER_START( mcatadv )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.32)
MDRV_SOUND_ROUTE(1, "lspeaker", 0.5)
MDRV_SOUND_ROUTE(2, "rspeaker", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nost )
- MDRV_IMPORT_FROM( mcatadv )
+static MACHINE_CONFIG_DERIVED( nost, mcatadv )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_PROGRAM_MAP(nost_sound_map)
MDRV_CPU_IO_MAP(nost_sound_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( mcatadv )
diff --git a/src/mame/drivers/mcr.c b/src/mame/drivers/mcr.c
index f9e6a7a778f..4d9a7d3befb 100644
--- a/src/mame/drivers/mcr.c
+++ b/src/mame/drivers/mcr.c
@@ -1566,7 +1566,7 @@ static const samples_interface journey_samples_interface =
*************************************/
/* 90009 CPU board plus 90908/90913/91483 sound board */
-static MACHINE_DRIVER_START( mcr_90009 )
+static MACHINE_CONFIG_START( mcr_90009, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_OSC_MCR_I/8)
@@ -1599,13 +1599,12 @@ static MACHINE_DRIVER_START( mcr_90009 )
MDRV_VIDEO_UPDATE(mcr)
/* sound hardware */
- MDRV_IMPORT_FROM(mcr_ssio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(mcr_ssio)
+MACHINE_CONFIG_END
/* 90010 CPU board plus 90908/90913/91483 sound board */
-static MACHINE_DRIVER_START( mcr_90010 )
- MDRV_IMPORT_FROM(mcr_90009)
+static MACHINE_CONFIG_DERIVED( mcr_90010, mcr_90009 )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1614,12 +1613,11 @@ static MACHINE_DRIVER_START( mcr_90010 )
/* video hardware */
MDRV_PALETTE_LENGTH(64)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* 91475 CPU board plus 90908/90913/91483 sound board plus cassette interface */
-static MACHINE_DRIVER_START( mcr_91475 )
- MDRV_IMPORT_FROM(mcr_90010)
+static MACHINE_CONFIG_DERIVED( mcr_91475, mcr_90010 )
/* video hardware */
MDRV_PALETTE_LENGTH(128)
@@ -1629,12 +1627,11 @@ static MACHINE_DRIVER_START( mcr_91475 )
MDRV_SOUND_CONFIG(journey_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* 91490 CPU board plus 90908/90913/91483 sound board */
-static MACHINE_DRIVER_START( mcr_91490 )
- MDRV_IMPORT_FROM(mcr_90010)
+static MACHINE_CONFIG_DERIVED( mcr_91490, mcr_90010 )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1644,23 +1641,21 @@ static MACHINE_DRIVER_START( mcr_91490 )
MDRV_DEVICE_MODIFY("ctc")
MDRV_DEVICE_CLOCK(5000000 /* same as "maincpu" */)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* 91490 CPU board plus 90908/90913/91483 sound board plus Squawk n' Talk sound board */
-static MACHINE_DRIVER_START( mcr_91490_snt )
+static MACHINE_CONFIG_DERIVED( mcr_91490_snt, mcr_91490 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcr_91490)
- MDRV_IMPORT_FROM(squawk_n_talk)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(squawk_n_talk)
+MACHINE_CONFIG_END
/* 91490 CPU board plus 90908/90913/91483 sound board plus Squawk n' Talk sound board plus IPU */
-static MACHINE_DRIVER_START( mcr_91490_ipu )
+static MACHINE_CONFIG_DERIVED( mcr_91490_ipu, mcr_91490_snt )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcr_91490_snt)
MDRV_MACHINE_START(nflfoot)
MDRV_CPU_ADD("ipu", Z80, 7372800/2)
@@ -1673,16 +1668,15 @@ static MACHINE_DRIVER_START( mcr_91490_ipu )
MDRV_Z80PIO_ADD("ipu_pio0", 7372800/2, nflfoot_pio_intf)
MDRV_Z80PIO_ADD("ipu_pio1", 7372800/2, nflfoot_pio_intf)
MDRV_Z80SIO_ADD("ipu_sio", 7372800/2 /* same as "ipu" */, nflfoot_sio_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* 91490 CPU board plus 90908/90913/91483 sound board plus Turbo Chip Squeak sound board */
-static MACHINE_DRIVER_START( mcr_91490_tcs )
+static MACHINE_CONFIG_DERIVED( mcr_91490_tcs, mcr_91490 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcr_91490)
- MDRV_IMPORT_FROM(turbo_chip_squeak)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(turbo_chip_squeak)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mcr3.c b/src/mame/drivers/mcr3.c
index e2afea04362..903800962f1 100644
--- a/src/mame/drivers/mcr3.c
+++ b/src/mame/drivers/mcr3.c
@@ -1073,7 +1073,7 @@ GFXDECODE_END
*************************************/
/* Core MCR3 system with no sound */
-static MACHINE_DRIVER_START( mcr3_base )
+static MACHINE_CONFIG_START( mcr3_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/4)
@@ -1102,17 +1102,16 @@ static MACHINE_DRIVER_START( mcr3_base )
MDRV_VIDEO_START(mcr)
MDRV_VIDEO_UPDATE(mcr)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************/
/* Core MCR monoboard system with no sound */
-static MACHINE_DRIVER_START( mcrmono )
+static MACHINE_CONFIG_DERIVED( mcrmono, mcr3_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcr3_base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mcrmono_map)
@@ -1121,36 +1120,33 @@ static MACHINE_DRIVER_START( mcrmono )
/* video hardware */
MDRV_VIDEO_START(mcrmono)
MDRV_VIDEO_UPDATE(mcr3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Sarge/Demolition Derby Mono/Max RPM = MCR monoboard with Turbo Chip Squeak */
-static MACHINE_DRIVER_START( mono_tcs )
+static MACHINE_CONFIG_DERIVED( mono_tcs, mcrmono )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcrmono)
- MDRV_IMPORT_FROM(turbo_chip_squeak)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(turbo_chip_squeak)
+MACHINE_CONFIG_END
/* Rampage/Power Drive/Star Guards = MCR monoboard with Sounds Good */
-static MACHINE_DRIVER_START( mono_sg )
+static MACHINE_CONFIG_DERIVED( mono_sg, mcrmono )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcrmono)
- MDRV_IMPORT_FROM(sounds_good)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sounds_good)
+MACHINE_CONFIG_END
/*************************************/
/* Core scrolling system with SSIO sound */
-static MACHINE_DRIVER_START( mcrscroll )
+static MACHINE_CONFIG_DERIVED( mcrscroll, mcr3_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcr3_base)
- MDRV_IMPORT_FROM(mcr_ssio)
+ MDRV_FRAGMENT_ADD(mcr_ssio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(spyhunt_map)
@@ -1166,16 +1162,15 @@ static MACHINE_DRIVER_START( mcrscroll )
MDRV_PALETTE_INIT(spyhunt)
MDRV_VIDEO_START(spyhunt)
MDRV_VIDEO_UPDATE(spyhunt)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Spy Hunter = scrolling system with an SSIO and a chip squeak deluxe */
-static MACHINE_DRIVER_START( mcrsc_csd )
+static MACHINE_CONFIG_DERIVED( mcrsc_csd, mcrscroll )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcrscroll)
- MDRV_IMPORT_FROM(chip_squeak_deluxe_stereo)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(chip_squeak_deluxe_stereo)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mcr68.c b/src/mame/drivers/mcr68.c
index ad8188af537..3a28b13036f 100644
--- a/src/mame/drivers/mcr68.c
+++ b/src/mame/drivers/mcr68.c
@@ -945,7 +945,7 @@ GFXDECODE_END
=================================================================*/
-static MACHINE_DRIVER_START( zwackery )
+static MACHINE_CONFIG_START( zwackery, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 7652400) /* should be XTAL_16MHz/2 */
@@ -975,11 +975,11 @@ static MACHINE_DRIVER_START( zwackery )
MDRV_VIDEO_UPDATE(zwackery)
/* sound hardware */
- MDRV_IMPORT_FROM(chip_squeak_deluxe)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(chip_squeak_deluxe)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mcr68 )
+static MACHINE_CONFIG_START( mcr68, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 7723800)
@@ -1005,66 +1005,60 @@ static MACHINE_DRIVER_START( mcr68 )
MDRV_VIDEO_UPDATE(mcr68)
/* sound hardware -- determined by specific machine */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( xenophob )
+static MACHINE_CONFIG_DERIVED( xenophob, mcr68 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcr68)
- MDRV_IMPORT_FROM(sounds_good)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sounds_good)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( intlaser )
+static MACHINE_CONFIG_DERIVED( intlaser, mcr68 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcr68)
- MDRV_IMPORT_FROM(sounds_good)
+ MDRV_FRAGMENT_ADD(sounds_good)
MDRV_WATCHDOG_VBLANK_INIT(800)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spyhunt2 )
+static MACHINE_CONFIG_DERIVED( spyhunt2, mcr68 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcr68)
- MDRV_IMPORT_FROM(sounds_good)
+ MDRV_FRAGMENT_ADD(sounds_good)
MDRV_DEVICE_REMOVE("mono")
- MDRV_IMPORT_FROM(turbo_chip_squeak)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(turbo_chip_squeak)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( archrivl )
+static MACHINE_CONFIG_DERIVED( archrivl, mcr68 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcr68)
- MDRV_IMPORT_FROM(williams_cvsd_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(williams_cvsd_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pigskin )
+static MACHINE_CONFIG_DERIVED( pigskin, mcr68 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcr68)
- MDRV_IMPORT_FROM(williams_cvsd_sound)
+ MDRV_FRAGMENT_ADD(williams_cvsd_sound)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(pigskin_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( trisport )
+static MACHINE_CONFIG_DERIVED( trisport, mcr68 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcr68)
- MDRV_IMPORT_FROM(williams_cvsd_sound)
+ MDRV_FRAGMENT_ADD(williams_cvsd_sound)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(trisport_map)
MDRV_NVRAM_HANDLER(generic_0fill)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/meadows.c b/src/mame/drivers/meadows.c
index 5b2dadf107f..304aec2f745 100644
--- a/src/mame/drivers/meadows.c
+++ b/src/mame/drivers/meadows.c
@@ -648,7 +648,7 @@ static const samples_interface bowl3d_samples_interface =
*
*************************************/
-static MACHINE_DRIVER_START( meadows )
+static MACHINE_CONFIG_START( meadows, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, MASTER_CLOCK/8) /* 5MHz / 8 = 625 kHz */
@@ -684,10 +684,10 @@ static MACHINE_DRIVER_START( meadows )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(meadows_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( minferno )
+static MACHINE_CONFIG_START( minferno, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, MASTER_CLOCK/24) /* 5MHz / 8 / 3 = 208.33 kHz */
@@ -710,10 +710,10 @@ static MACHINE_DRIVER_START( minferno )
MDRV_VIDEO_UPDATE(meadows)
/* audio hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bowl3d )
+static MACHINE_CONFIG_START( bowl3d, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, MASTER_CLOCK/8) /* 5MHz / 8 = 625 kHz */
MDRV_CPU_PROGRAM_MAP(bowl3d_main_map)
@@ -753,7 +753,7 @@ static MACHINE_DRIVER_START( bowl3d )
MDRV_SOUND_ADD("samples2", SAMPLES, 0)
MDRV_SOUND_CONFIG(bowl3d_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mediagx.c b/src/mame/drivers/mediagx.c
index 1f023d4d33c..851d84f46cb 100644
--- a/src/mame/drivers/mediagx.c
+++ b/src/mame/drivers/mediagx.c
@@ -1100,9 +1100,7 @@ static const struct pit8253_config mediagx_pit8254_config =
};
-static MACHINE_DRIVER_START(mediagx)
-
- MDRV_DRIVER_DATA(mediagx_state)
+static MACHINE_CONFIG_START( mediagx, mediagx_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", MEDIAGX, 166000000)
@@ -1152,7 +1150,7 @@ static MACHINE_DRIVER_START(mediagx)
MDRV_SOUND_ADD("dac2", DMADAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static void set_gate_a20(running_machine *machine, int a20)
{
diff --git a/src/mame/drivers/megadriv.c b/src/mame/drivers/megadriv.c
index 7863f3fb471..d6be45aa379 100644
--- a/src/mame/drivers/megadriv.c
+++ b/src/mame/drivers/megadriv.c
@@ -2468,12 +2468,11 @@ static ADDRESS_MAP_START( md_bootleg_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xe00000, 0xe0ffff) AM_RAM AM_MIRROR(0x1f0000) AM_BASE(&megadrive_ram)
ADDRESS_MAP_END
-MACHINE_DRIVER_START( md_bootleg )
- MDRV_IMPORT_FROM(megadriv)
+MACHINE_CONFIG_DERIVED( md_bootleg, megadriv )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(md_bootleg_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/****************************************** 32X related ******************************************/
@@ -3879,23 +3878,21 @@ INPUT_PORTS_START( megdsvp )
PORT_DIPSETTING( 0x01, DEF_STR( On ) )
INPUT_PORTS_END
-MACHINE_DRIVER_START( megdsvp )
- MDRV_IMPORT_FROM(megadriv)
+MACHINE_CONFIG_DERIVED( megdsvp, megadriv )
MDRV_CPU_ADD("svp", SSP1601, MASTER_CLOCK_NTSC / 7 * 3) /* ~23 MHz (guessed) */
MDRV_CPU_PROGRAM_MAP(svp_ssp_map)
MDRV_CPU_IO_MAP(svp_ext_map)
/* IRQs are not used by this CPU */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( megdsvppal )
- MDRV_IMPORT_FROM(megadpal)
+MACHINE_CONFIG_DERIVED( megdsvppal, megadpal )
MDRV_CPU_ADD("svp", SSP1601, MASTER_CLOCK_PAL / 7 * 3) /* ~23 MHz (guessed) */
MDRV_CPU_PROGRAM_MAP(svp_ssp_map)
MDRV_CPU_IO_MAP(svp_ext_map)
/* IRQs are not used by this CPU */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/****************************************** END SVP related *************************************/
@@ -6184,16 +6181,16 @@ static NVRAM_HANDLER( megadriv )
#endif
-MACHINE_DRIVER_START( megadriv_timers )
+MACHINE_CONFIG_FRAGMENT( megadriv_timers )
MDRV_TIMER_ADD("frame_timer", frame_timer_callback)
MDRV_TIMER_ADD("scanline_timer", scanline_timer_callback)
MDRV_TIMER_ADD("render_timer", render_timer_callback)
MDRV_TIMER_ADD("irq6_timer", irq6_on_callback)
MDRV_TIMER_ADD("irq4_timer", irq4_on_callback)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( megadriv )
+MACHINE_CONFIG_START( megadriv, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK_NTSC / 7) /* 7.67 MHz */
MDRV_CPU_PROGRAM_MAP(megadriv_map)
/* IRQs are handled via the timers */
@@ -6206,7 +6203,7 @@ MACHINE_DRIVER_START( megadriv )
MDRV_MACHINE_START(megadriv)
MDRV_MACHINE_RESET(megadriv)
- MDRV_IMPORT_FROM(megadriv_timers)
+ MDRV_FRAGMENT_ADD(megadriv_timers)
MDRV_SCREEN_ADD("megadriv", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
@@ -6236,11 +6233,11 @@ MACHINE_DRIVER_START( megadriv )
MDRV_SOUND_ADD("snsnd", SMSIII, MASTER_CLOCK_NTSC/15)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25) /* 3.58 MHz */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker",0.25) /* 3.58 MHz */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/************ PAL hardware has a different master clock *************/
-MACHINE_DRIVER_START( megadpal )
+MACHINE_CONFIG_START( megadpal, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK_PAL / 7) /* 7.67 MHz */
MDRV_CPU_PROGRAM_MAP(megadriv_map)
/* IRQs are handled via the timers */
@@ -6253,7 +6250,7 @@ MACHINE_DRIVER_START( megadpal )
MDRV_MACHINE_START(megadriv)
MDRV_MACHINE_RESET(megadriv)
- MDRV_IMPORT_FROM(megadriv_timers)
+ MDRV_FRAGMENT_ADD(megadriv_timers)
MDRV_SCREEN_ADD("megadriv", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
@@ -6283,15 +6280,14 @@ MACHINE_DRIVER_START( megadpal )
MDRV_SOUND_ADD("snsnd", SMSIII, MASTER_CLOCK_PAL/15)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25) /* 3.58 MHz */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker",0.25) /* 3.58 MHz */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const sh2_cpu_core sh2_conf_master = { 0, NULL };
static const sh2_cpu_core sh2_conf_slave = { 1, NULL };
-MACHINE_DRIVER_START( genesis_32x )
- MDRV_IMPORT_FROM(megadriv)
+MACHINE_CONFIG_DERIVED( genesis_32x, megadriv )
MDRV_CPU_ADD("32x_master_sh2", SH2, (MASTER_CLOCK_NTSC*3)/7 )
MDRV_CPU_PROGRAM_MAP(sh2_main_map)
@@ -6307,11 +6303,10 @@ MACHINE_DRIVER_START( genesis_32x )
// boosting the interleave here actually makes Kolibri run incorrectly however, that
// one works best just boosting the interleave on communications?!
MDRV_QUANTUM_TIME(HZ(1800000))
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( genesis_32x_pal )
- MDRV_IMPORT_FROM(megadpal)
+MACHINE_CONFIG_DERIVED( genesis_32x_pal, megadpal )
MDRV_CPU_ADD("32x_master_sh2", SH2, (MASTER_CLOCK_PAL*3)/7 )
MDRV_CPU_PROGRAM_MAP(sh2_main_map)
@@ -6321,21 +6316,19 @@ MACHINE_DRIVER_START( genesis_32x_pal )
MDRV_CPU_PROGRAM_MAP(sh2_slave_map)
MDRV_CPU_CONFIG(sh2_conf_slave)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( genesis_scd )
- MDRV_IMPORT_FROM(megadriv)
+MACHINE_CONFIG_DERIVED( genesis_scd, megadriv )
MDRV_CPU_ADD("segacd_68k", M68000, SEGACD_CLOCK ) /* 12.5 MHz */
MDRV_CPU_PROGRAM_MAP(segacd_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( genesis_32x_scd )
- MDRV_IMPORT_FROM(genesis_32x)
+MACHINE_CONFIG_DERIVED( genesis_32x_scd, genesis_32x )
MDRV_CPU_ADD("segacd_68k", M68000, SEGACD_CLOCK ) /* 12.5 MHz */
MDRV_CPU_PROGRAM_MAP(segacd_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Callback when the genesis enters interrupt code */
diff --git a/src/mame/drivers/megaplay.c b/src/mame/drivers/megaplay.c
index bfde6f5bae7..f1e164ebcb4 100644
--- a/src/mame/drivers/megaplay.c
+++ b/src/mame/drivers/megaplay.c
@@ -648,10 +648,9 @@ static VIDEO_EOF( mpnew )
VIDEO_EOF_CALL(megatech_bios);
}
-static MACHINE_DRIVER_START( mpnew )
+static MACHINE_CONFIG_DERIVED( mpnew, megadriv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(megadriv)
/* The Megaplay has an extra BIOS cpu which drives an SMS VDP
which includes an SN76496 for sound */
@@ -672,7 +671,7 @@ static MACHINE_DRIVER_START( mpnew )
/* New update functions to handle the extra layer */
MDRV_VIDEO_START(megplay)
MDRV_VIDEO_UPDATE(megplay)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* MegaPlay Games - Modified Genesis games */
diff --git a/src/mame/drivers/megasys1.c b/src/mame/drivers/megasys1.c
index 6cf265e9816..84690d09b1a 100644
--- a/src/mame/drivers/megasys1.c
+++ b/src/mame/drivers/megasys1.c
@@ -1454,7 +1454,7 @@ static const ym2151_interface ym2151_config =
megasys1_sound_irq
};
-static MACHINE_DRIVER_START( system_A )
+static MACHINE_CONFIG_START( system_A, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, SYS_A_CPU_CLOCK) /* 6MHz verified */
@@ -1499,17 +1499,15 @@ static MACHINE_DRIVER_START( system_A )
MDRV_OKIM6295_ADD("oki2", OKI4_SOUND_CLOCK, OKIM6295_PIN7_HIGH) /* 4MHz verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.30)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system_A_hachoo )
- MDRV_IMPORT_FROM(system_A)
+static MACHINE_CONFIG_DERIVED( system_A_hachoo, system_A )
MDRV_MACHINE_RESET(megasys1_hachoo)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system_B )
+static MACHINE_CONFIG_DERIVED( system_B, system_A )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system_A)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(SYS_B_CPU_CLOCK) /* 8MHz */
@@ -1518,10 +1516,10 @@ static MACHINE_DRIVER_START( system_B )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_PROGRAM_MAP(megasys1B_sound_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system_Bbl )
+static MACHINE_CONFIG_START( system_Bbl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, SYS_B_CPU_CLOCK)
@@ -1553,12 +1551,11 @@ static MACHINE_DRIVER_START( system_Bbl )
MDRV_OKIM6295_ADD("oki1", OKI4_SOUND_CLOCK, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.30)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system_B_hayaosi1 )
+static MACHINE_CONFIG_DERIVED( system_B_hayaosi1, system_B )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system_B)
MDRV_OKIM6295_REPLACE("oki1", 2000000, OKIM6295_PIN7_HIGH) /* correct speed, but unknown OSC + divider combo */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.30)
@@ -1567,13 +1564,12 @@ static MACHINE_DRIVER_START( system_B_hayaosi1 )
MDRV_OKIM6295_REPLACE("oki2", 2000000, OKIM6295_PIN7_HIGH) /* correct speed, but unknown OSC + divider combo */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.30)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system_C )
+static MACHINE_CONFIG_DERIVED( system_C, system_A )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system_A)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(SYS_C_CPU_CLOCK) /* 12MHz */
MDRV_CPU_PROGRAM_MAP(megasys1C_map)
@@ -1581,7 +1577,7 @@ static MACHINE_DRIVER_START( system_C )
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_PROGRAM_MAP(megasys1B_sound_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -1595,7 +1591,7 @@ MACHINE_DRIVER_END
***************************************************************************/
-static MACHINE_DRIVER_START( system_D )
+static MACHINE_CONFIG_START( system_D, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, SYS_D_CPU_CLOCK) /* 8MHz */
@@ -1625,7 +1621,7 @@ static MACHINE_DRIVER_START( system_D )
MDRV_OKIM6295_ADD("oki1", SYS_D_CPU_CLOCK/4, OKIM6295_PIN7_HIGH) /* 2MHz (8MHz / 4) */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1657,7 +1653,7 @@ static const ym2203_interface ym2203_config =
irq_handler
};
-static MACHINE_DRIVER_START( system_Z )
+static MACHINE_CONFIG_START( system_Z, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, SYS_A_CPU_CLOCK) /* 6MHz (12MHz / 2) */
@@ -1688,7 +1684,7 @@ static MACHINE_DRIVER_START( system_Z )
MDRV_SOUND_ADD("ymsnd", YM2203, 1500000)
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/megatech.c b/src/mame/drivers/megatech.c
index 2cab8765609..96d3f8f09a0 100644
--- a/src/mame/drivers/megatech.c
+++ b/src/mame/drivers/megatech.c
@@ -521,10 +521,9 @@ static MACHINE_RESET(mtnew)
megatech_select_game(machine, 0);
}
-static MACHINE_DRIVER_START( megatech )
+static MACHINE_CONFIG_DERIVED( megatech, megadriv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(megadriv)
/* Megatech has an extra SMS based bios *and* an additional screen */
MDRV_CPU_ADD("mtbios", Z80, MASTER_CLOCK / 15) /* ?? */
@@ -549,7 +548,7 @@ static MACHINE_DRIVER_START( megatech )
MDRV_SOUND_ADD("sn2", SN76496, MASTER_CLOCK/15)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* MegaTech Games - Genesis & sms! Games with a timer */
diff --git a/src/mame/drivers/megazone.c b/src/mame/drivers/megazone.c
index af982d49ba9..40b477a67f5 100644
--- a/src/mame/drivers/megazone.c
+++ b/src/mame/drivers/megazone.c
@@ -244,10 +244,7 @@ static MACHINE_RESET( megazone )
state->i8039_status = 0;
}
-static MACHINE_DRIVER_START( megazone )
-
- /* driver data */
- MDRV_DRIVER_DATA(megazone_state)
+static MACHINE_CONFIG_START( megazone, megazone_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 18432000/9) /* 2 MHz */
@@ -300,7 +297,7 @@ static MACHINE_DRIVER_START( megazone )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_SOUND_ADD("filter.0.2", FILTER_RC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/meijinsn.c b/src/mame/drivers/meijinsn.c
index 5815ad382cb..39d9d3b69fb 100644
--- a/src/mame/drivers/meijinsn.c
+++ b/src/mame/drivers/meijinsn.c
@@ -339,10 +339,7 @@ static MACHINE_RESET( meijinsn )
}
-static MACHINE_DRIVER_START( meijinsn )
-
- /* driver data */
- MDRV_DRIVER_DATA(meijinsn_state)
+static MACHINE_CONFIG_START( meijinsn, meijinsn_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 9000000 )
@@ -378,7 +375,7 @@ static MACHINE_DRIVER_START( meijinsn )
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( meijinsn )
diff --git a/src/mame/drivers/merit.c b/src/mame/drivers/merit.c
index 3fa43458263..2f45455f1a7 100644
--- a/src/mame/drivers/merit.c
+++ b/src/mame/drivers/merit.c
@@ -1175,7 +1175,7 @@ static MACHINE_START(casino5)
memory_set_bank(machine, "bank2", 0);
}
-static MACHINE_DRIVER_START( pitboss )
+static MACHINE_CONFIG_START( pitboss, driver_data_t )
MDRV_CPU_ADD("maincpu",Z80, CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(pitboss_map)
MDRV_CPU_IO_MAP(trvwhiz_io_map)
@@ -1200,10 +1200,9 @@ static MACHINE_DRIVER_START( pitboss )
MDRV_SOUND_ADD("aysnd", AY8910, CRTC_CLOCK)
MDRV_SOUND_CONFIG(merit_ay8912_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( casino5 )
- MDRV_IMPORT_FROM(pitboss)
+static MACHINE_CONFIG_DERIVED( casino5, pitboss )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(casino5_map)
@@ -1211,61 +1210,54 @@ static MACHINE_DRIVER_START( casino5 )
MDRV_NVRAM_HANDLER(generic_0fill)
MDRV_MACHINE_START(casino5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bigappg )
- MDRV_IMPORT_FROM(pitboss)
+static MACHINE_CONFIG_DERIVED( bigappg, pitboss )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(bigappg_map)
MDRV_CPU_IO_MAP(tictac_io_map)
MDRV_NVRAM_HANDLER(generic_0fill)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dodge )
- MDRV_IMPORT_FROM(pitboss)
+static MACHINE_CONFIG_DERIVED( dodge, pitboss )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dodge_map)
MDRV_NVRAM_HANDLER(dodge)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tictac )
- MDRV_IMPORT_FROM(pitboss)
+static MACHINE_CONFIG_DERIVED( tictac, pitboss )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tictac_map)
MDRV_CPU_IO_MAP(tictac_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( trvwhiz )
- MDRV_IMPORT_FROM(pitboss)
+static MACHINE_CONFIG_DERIVED( trvwhiz, pitboss )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(trvwhiz_map)
MDRV_CPU_IO_MAP(trvwhiz_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( phrcraze )
- MDRV_IMPORT_FROM(pitboss)
+static MACHINE_CONFIG_DERIVED( phrcraze, pitboss )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(phrcraze_map)
MDRV_CPU_IO_MAP(phrcraze_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( trvwhziv )
- MDRV_IMPORT_FROM(pitboss)
+static MACHINE_CONFIG_DERIVED( trvwhziv, pitboss )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(trvwhziv_map)
MDRV_CPU_IO_MAP(tictac_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( couple )
- MDRV_IMPORT_FROM(pitboss)
+static MACHINE_CONFIG_DERIVED( couple, pitboss )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(couple_map)
@@ -1275,7 +1267,7 @@ static MACHINE_DRIVER_START( couple )
MDRV_DEVICE_CONFIG( ppi8255_couple_intf[0])
MDRV_DEVICE_MODIFY("ppi8255_1")
MDRV_DEVICE_CONFIG( ppi8255_couple_intf[1])
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( pitboss )
diff --git a/src/mame/drivers/meritm.c b/src/mame/drivers/meritm.c
index f4d2e4dc976..ea63a979f6c 100644
--- a/src/mame/drivers/meritm.c
+++ b/src/mame/drivers/meritm.c
@@ -1047,7 +1047,7 @@ static TIMER_DEVICE_CALLBACK( vblank_end_tick )
z80pio_pa_w(meritm_z80pio[0], 0, meritm_vint);
}
-static MACHINE_DRIVER_START(meritm_crt250)
+static MACHINE_CONFIG_START( meritm_crt250, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80, SYSTEM_CLK/6)
MDRV_CPU_PROGRAM_MAP(meritm_crt250_map)
MDRV_CPU_IO_MAP(meritm_crt250_io_map)
@@ -1087,24 +1087,21 @@ static MACHINE_DRIVER_START(meritm_crt250)
MDRV_SOUND_ADD("aysnd", AY8910, SYSTEM_CLK/12)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START(meritm_crt250_questions)
- MDRV_IMPORT_FROM(meritm_crt250)
+static MACHINE_CONFIG_DERIVED( meritm_crt250_questions, meritm_crt250 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(meritm_crt250_questions_map)
MDRV_MACHINE_START(meritm_crt250_questions)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START(meritm_crt250_crt252_crt258)
- MDRV_IMPORT_FROM(meritm_crt250_questions)
+static MACHINE_CONFIG_DERIVED( meritm_crt250_crt252_crt258, meritm_crt250_questions )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(meritm_crt250_crt258_io_map)
MDRV_MACHINE_START(meritm_crt250_crt252_crt258)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START(meritm_crt260)
- MDRV_IMPORT_FROM(meritm_crt250)
+static MACHINE_CONFIG_DERIVED( meritm_crt260, meritm_crt250 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(meritm_map)
MDRV_CPU_IO_MAP(meritm_io_map)
@@ -1116,7 +1113,7 @@ static MACHINE_DRIVER_START(meritm_crt260)
MDRV_NVRAM_HANDLER(meritm_crt260)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/mermaid.c b/src/mame/drivers/mermaid.c
index 509f6af78b1..41964b3689e 100644
--- a/src/mame/drivers/mermaid.c
+++ b/src/mame/drivers/mermaid.c
@@ -356,10 +356,7 @@ static MACHINE_RESET( mermaid )
state->rougien_gfxbank2 = 0;
}
-static MACHINE_DRIVER_START( mermaid )
-
- /* driver data */
- MDRV_DRIVER_DATA(mermaid_state)
+static MACHINE_CONFIG_START( mermaid, mermaid_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) // ???
@@ -393,7 +390,7 @@ static MACHINE_DRIVER_START( mermaid )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/metalmx.c b/src/mame/drivers/metalmx.c
index c46651936ba..b9399405e53 100644
--- a/src/mame/drivers/metalmx.c
+++ b/src/mame/drivers/metalmx.c
@@ -740,8 +740,7 @@ static const dsp32_config dsp32c_config =
*
*************************************/
-static MACHINE_DRIVER_START( metalmx )
- MDRV_DRIVER_DATA(metalmx_state)
+static MACHINE_CONFIG_START( metalmx, metalmx_state )
MDRV_CPU_ADD("maincpu", M68EC020, XTAL_14_31818MHz)
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -778,8 +777,8 @@ static MACHINE_DRIVER_START( metalmx )
MDRV_VIDEO_START(metalmx)
MDRV_VIDEO_UPDATE(metalmx)
- MDRV_IMPORT_FROM(cage)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(cage)
+MACHINE_CONFIG_END
static DRIVER_INIT( metalmx )
diff --git a/src/mame/drivers/metlclsh.c b/src/mame/drivers/metlclsh.c
index ab731528448..576fa9ad1bd 100644
--- a/src/mame/drivers/metlclsh.c
+++ b/src/mame/drivers/metlclsh.c
@@ -294,10 +294,7 @@ static MACHINE_RESET( metlclsh )
state->gfxbank = 0;
}
-static MACHINE_DRIVER_START( metlclsh )
-
- /* driver data */
- MDRV_DRIVER_DATA(metlclsh_state)
+static MACHINE_CONFIG_START( metlclsh, metlclsh_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 1500000) // ?
@@ -338,7 +335,7 @@ static MACHINE_DRIVER_START( metlclsh )
MDRV_SOUND_ADD("ym2", YM3526, 3000000)
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/metro.c b/src/mame/drivers/metro.c
index 7bd6380c739..2de89461b65 100644
--- a/src/mame/drivers/metro.c
+++ b/src/mame/drivers/metro.c
@@ -3609,10 +3609,7 @@ static const UPD7810_CONFIG metro_cpu_config =
metro_io_callback
};
-static MACHINE_DRIVER_START( balcube )
-
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( balcube, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -3643,13 +3640,10 @@ static MACHINE_DRIVER_START( balcube )
MDRV_SOUND_CONFIG(ymf278b_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( daitoa )
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( daitoa, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -3680,13 +3674,10 @@ static MACHINE_DRIVER_START( daitoa )
MDRV_SOUND_CONFIG(ymf278b_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( msgogo )
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( msgogo, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -3717,13 +3708,10 @@ static MACHINE_DRIVER_START( msgogo )
MDRV_SOUND_CONFIG(ymf278b_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bangball )
-
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( bangball, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -3754,13 +3742,10 @@ static MACHINE_DRIVER_START( bangball )
MDRV_SOUND_CONFIG(ymf278b_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( batlbubl )
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( batlbubl, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -3791,12 +3776,9 @@ static MACHINE_DRIVER_START( batlbubl )
MDRV_SOUND_CONFIG(ymf278b_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( daitorid )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( daitorid, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -3836,13 +3818,10 @@ static MACHINE_DRIVER_START( daitorid )
MDRV_OKIM6295_ADD("oki", 1200000, OKIM6295_PIN7_HIGH) // was /128.. so pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dharma )
-
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( dharma, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -3881,13 +3860,10 @@ static MACHINE_DRIVER_START( dharma )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( karatour )
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( karatour, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -3926,13 +3902,10 @@ static MACHINE_DRIVER_START( karatour )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( 3kokushi )
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( 3kokushi, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -3971,13 +3944,10 @@ static MACHINE_DRIVER_START( 3kokushi )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lastfort )
-
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( lastfort, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -4016,12 +3986,9 @@ static MACHINE_DRIVER_START( lastfort )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( lastforg )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( lastforg, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -4060,12 +4027,9 @@ static MACHINE_DRIVER_START( lastforg )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( dokyusei )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( dokyusei, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -4099,12 +4063,9 @@ static MACHINE_DRIVER_START( dokyusei )
MDRV_SOUND_ADD("ymsnd", YM2413, 8000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dokyusp )
-
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( dokyusp, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -4139,13 +4100,10 @@ static MACHINE_DRIVER_START( dokyusp )
MDRV_SOUND_ADD("ymsnd", YM2413, 8000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gakusai )
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( gakusai, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -4180,13 +4138,10 @@ static MACHINE_DRIVER_START( gakusai )
MDRV_SOUND_ADD("ymsnd", YM2413, 8000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gakusai2 )
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( gakusai2, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -4221,13 +4176,10 @@ static MACHINE_DRIVER_START( gakusai2 )
MDRV_SOUND_ADD("ymsnd", YM2413, 8000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pangpoms )
-
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( pangpoms, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -4266,13 +4218,10 @@ static MACHINE_DRIVER_START( pangpoms )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( poitto )
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( poitto, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -4311,13 +4260,10 @@ static MACHINE_DRIVER_START( poitto )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pururun )
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( pururun, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -4358,13 +4304,10 @@ static MACHINE_DRIVER_START( pururun )
MDRV_OKIM6295_ADD("oki", 1200000, OKIM6295_PIN7_HIGH) // was /128.. so pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( skyalert )
-
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( skyalert, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -4403,13 +4346,10 @@ static MACHINE_DRIVER_START( skyalert )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( toride2g )
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( toride2g, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -4448,13 +4388,10 @@ static MACHINE_DRIVER_START( toride2g )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mouja )
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( mouja, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* ??? */
@@ -4487,7 +4424,7 @@ static MACHINE_DRIVER_START( mouja )
MDRV_SOUND_ADD("ymsnd", YM2413, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const k053936_interface blzntrnd_k053936_intf =
@@ -4495,10 +4432,7 @@ static const k053936_interface blzntrnd_k053936_intf =
0, -69, -21
};
-static MACHINE_DRIVER_START( blzntrnd )
-
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( blzntrnd, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -4537,7 +4471,7 @@ static MACHINE_DRIVER_START( blzntrnd )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* like blzntrnd but new vidstart / gfxdecode for the different bg tilemap */
@@ -4546,10 +4480,7 @@ static const k053936_interface gstrik2_k053936_intf =
0, -69, -19
};
-static MACHINE_DRIVER_START( gstrik2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( gstrik2, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -4588,7 +4519,7 @@ static MACHINE_DRIVER_START( gstrik2 )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INTERRUPT_GEN( puzzlet_interrupt )
@@ -4624,10 +4555,7 @@ static INTERRUPT_GEN( puzzlet_interrupt )
}
}
-static MACHINE_DRIVER_START( puzzlet )
-
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( puzzlet, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H83007, XTAL_20MHz) // H8/3007 - Hitachi HD6413007F20 CPU. Clock 20MHz
@@ -4662,7 +4590,7 @@ static MACHINE_DRIVER_START( puzzlet )
MDRV_SOUND_ADD("ymsnd", YM2413, XTAL_20MHz/5)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.90)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.90)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/mexico86.c b/src/mame/drivers/mexico86.c
index ec73db7ae29..7ff23fd7f96 100644
--- a/src/mame/drivers/mexico86.c
+++ b/src/mame/drivers/mexico86.c
@@ -471,10 +471,7 @@ static MACHINE_RESET( mexico86 )
state->charbank = 0;
}
-static MACHINE_DRIVER_START( mexico86 )
-
- /* driver data */
- MDRV_DRIVER_DATA(mexico86_state)
+static MACHINE_CONFIG_START( mexico86, mexico86_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80, 24000000/4) /* 6 MHz, Uses clock divided 24MHz OSC */
@@ -520,25 +517,23 @@ static MACHINE_DRIVER_START( mexico86 )
MDRV_SOUND_ROUTE(1, "mono", 0.30)
MDRV_SOUND_ROUTE(2, "mono", 0.30)
MDRV_SOUND_ROUTE(3, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( knightb )
+static MACHINE_CONFIG_DERIVED( knightb, mexico86 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mexico86)
MDRV_DEVICE_REMOVE("sub")
/* video hardware */
MDRV_VIDEO_UPDATE(kikikai)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kikikai )
+static MACHINE_CONFIG_DERIVED( kikikai, knightb )
/* basic machine hardware */
- MDRV_IMPORT_FROM(knightb)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", kikikai_interrupt) // IRQs should be triggered by the MCU, but we don't have it
@@ -547,7 +542,7 @@ static MACHINE_DRIVER_START( kikikai )
/* video hardware */
MDRV_VIDEO_UPDATE(kikikai)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/mgolf.c b/src/mame/drivers/mgolf.c
index c8f145ca74f..954d6e37e4f 100644
--- a/src/mame/drivers/mgolf.c
+++ b/src/mame/drivers/mgolf.c
@@ -321,10 +321,7 @@ static MACHINE_RESET( mgolf )
}
-static MACHINE_DRIVER_START( mgolf )
-
- /* driver data */
- MDRV_DRIVER_DATA(mgolf_state)
+static MACHINE_CONFIG_START( mgolf, mgolf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12096000 / 16) /* ? */
@@ -348,7 +345,7 @@ static MACHINE_DRIVER_START( mgolf )
MDRV_VIDEO_UPDATE(mgolf)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( mgolf )
diff --git a/src/mame/drivers/mhavoc.c b/src/mame/drivers/mhavoc.c
index 10d2f8a93a8..d6f43ed6519 100644
--- a/src/mame/drivers/mhavoc.c
+++ b/src/mame/drivers/mhavoc.c
@@ -471,7 +471,7 @@ static const pokey_interface pokey_config =
*
*************************************/
-static MACHINE_DRIVER_START( mhavoc )
+static MACHINE_CONFIG_START( mhavoc, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("alpha", M6502, MHAVOC_CLOCK_2_5M) /* 2.5 MHz */
@@ -510,21 +510,19 @@ static MACHINE_DRIVER_START( mhavoc )
MDRV_SOUND_ADD("pokey4", POKEY, MHAVOC_CLOCK_1_25M)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mhavocrv )
- MDRV_IMPORT_FROM( mhavoc )
+static MACHINE_CONFIG_DERIVED( mhavocrv, mhavoc )
MDRV_SOUND_ADD("tms", TMS5220, MHAVOC_CLOCK/2/9)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( alphaone )
+static MACHINE_CONFIG_DERIVED( alphaone, mhavoc )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mhavoc)
MDRV_CPU_MODIFY("alpha")
MDRV_CPU_PROGRAM_MAP(alphaone_map)
MDRV_DEVICE_REMOVE("gamma")
@@ -541,7 +539,7 @@ static MACHINE_DRIVER_START( alphaone )
MDRV_DEVICE_REMOVE("pokey3")
MDRV_DEVICE_REMOVE("pokey4")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/micro3d.c b/src/mame/drivers/micro3d.c
index b7a87551928..b93084f690d 100644
--- a/src/mame/drivers/micro3d.c
+++ b/src/mame/drivers/micro3d.c
@@ -312,8 +312,7 @@ static const duart68681_config micro3d_duart68681_config =
*
*************************************/
-static MACHINE_DRIVER_START( micro3d )
- MDRV_DRIVER_DATA(micro3d_state)
+static MACHINE_CONFIG_START( micro3d, micro3d_state )
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz / 2)
MDRV_CPU_PROGRAM_MAP(hostmem)
@@ -364,7 +363,7 @@ static MACHINE_DRIVER_START( micro3d )
MDRV_SOUND_ADD("noise_2", MICRO3D, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/midas.c b/src/mame/drivers/midas.c
index 84c89bd0ebd..0618c5837b9 100644
--- a/src/mame/drivers/midas.c
+++ b/src/mame/drivers/midas.c
@@ -671,7 +671,7 @@ static const ymz280b_interface ymz280b_config =
livequiz_irqhandler
};
-static MACHINE_DRIVER_START( livequiz )
+static MACHINE_CONFIG_START( livequiz, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz / 2)
@@ -700,9 +700,9 @@ static MACHINE_DRIVER_START( livequiz )
MDRV_SOUND_CONFIG(ymz280b_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hammer )
+static MACHINE_CONFIG_START( hammer, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_28MHz / 2)
@@ -735,7 +735,7 @@ static MACHINE_DRIVER_START( hammer )
MDRV_SOUND_CONFIG(ymz280b_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************************
diff --git a/src/mame/drivers/midtunit.c b/src/mame/drivers/midtunit.c
index 8b4da634d95..81501088563 100644
--- a/src/mame/drivers/midtunit.c
+++ b/src/mame/drivers/midtunit.c
@@ -600,7 +600,7 @@ static const tms34010_config tms_config =
*
*************************************/
-static MACHINE_DRIVER_START( tunit_core )
+static MACHINE_CONFIG_START( tunit_core, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, CPU_CLOCK)
@@ -619,23 +619,21 @@ static MACHINE_DRIVER_START( tunit_core )
MDRV_VIDEO_START(midtunit)
MDRV_VIDEO_UPDATE(tms340x0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tunit_adpcm )
+static MACHINE_CONFIG_DERIVED( tunit_adpcm, tunit_core )
/* basic machine hardware */
- MDRV_IMPORT_FROM(tunit_core)
- MDRV_IMPORT_FROM(williams_adpcm_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(williams_adpcm_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tunit_dcs )
+static MACHINE_CONFIG_DERIVED( tunit_dcs, tunit_core )
/* basic machine hardware */
- MDRV_IMPORT_FROM(tunit_core)
- MDRV_IMPORT_FROM(dcs_audio_2k)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(dcs_audio_2k)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/midvunit.c b/src/mame/drivers/midvunit.c
index 6c67f9c1d10..16f6acef453 100644
--- a/src/mame/drivers/midvunit.c
+++ b/src/mame/drivers/midvunit.c
@@ -1018,7 +1018,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( midvcommon )
+static MACHINE_CONFIG_START( midvcommon, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS32031, CPU_CLOCK)
@@ -1040,19 +1040,17 @@ static MACHINE_DRIVER_START( midvcommon )
MDRV_VIDEO_START(midvunit)
MDRV_VIDEO_UPDATE(midvunit)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( midvunit )
- MDRV_IMPORT_FROM(midvcommon)
+static MACHINE_CONFIG_DERIVED( midvunit, midvcommon )
/* sound hardware */
- MDRV_IMPORT_FROM(dcs_audio_2k)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(dcs_audio_2k)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( midvplus )
- MDRV_IMPORT_FROM(midvcommon)
+static MACHINE_CONFIG_DERIVED( midvplus, midvcommon )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1065,8 +1063,8 @@ static MACHINE_DRIVER_START( midvplus )
MDRV_IDE_CONTROLLER_ADD("ide", NULL)
/* sound hardware */
- MDRV_IMPORT_FROM(dcs2_audio_2115)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(dcs2_audio_2115)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/midwunit.c b/src/mame/drivers/midwunit.c
index b731d980904..dfb2a8c8c64 100644
--- a/src/mame/drivers/midwunit.c
+++ b/src/mame/drivers/midwunit.c
@@ -631,7 +631,7 @@ static const tms34010_config tms_config =
*
*************************************/
-static MACHINE_DRIVER_START( wunit )
+static MACHINE_CONFIG_START( wunit, driver_data_t )
MDRV_CPU_ADD("maincpu", TMS34010, 50000000)
MDRV_CPU_CONFIG(tms_config)
@@ -651,8 +651,8 @@ static MACHINE_DRIVER_START( wunit )
MDRV_VIDEO_UPDATE(tms340x0)
/* sound hardware */
- MDRV_IMPORT_FROM(dcs_audio_8k)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(dcs_audio_8k)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/midxunit.c b/src/mame/drivers/midxunit.c
index 7e1a511c846..169bd3244fd 100644
--- a/src/mame/drivers/midxunit.c
+++ b/src/mame/drivers/midxunit.c
@@ -255,7 +255,7 @@ static const tms34010_config tms_config =
*
*************************************/
-static MACHINE_DRIVER_START( midxunit )
+static MACHINE_CONFIG_START( midxunit, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34020, 40000000)
@@ -276,8 +276,8 @@ static MACHINE_DRIVER_START( midxunit )
MDRV_VIDEO_UPDATE(tms340x0)
/* sound hardware */
- MDRV_IMPORT_FROM(dcs_audio_2k_uart)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(dcs_audio_2k_uart)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/midyunit.c b/src/mame/drivers/midyunit.c
index 61b01dfef0d..e24b2112675 100644
--- a/src/mame/drivers/midyunit.c
+++ b/src/mame/drivers/midyunit.c
@@ -1014,7 +1014,7 @@ static const tms34010_config yunit_tms_config =
*
*************************************/
-static MACHINE_DRIVER_START( zunit )
+static MACHINE_CONFIG_START( zunit, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, FAST_MASTER_CLOCK)
@@ -1036,8 +1036,8 @@ static MACHINE_DRIVER_START( zunit )
MDRV_VIDEO_UPDATE(tms340x0)
/* sound hardware */
- MDRV_IMPORT_FROM(williams_narc_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(williams_narc_sound)
+MACHINE_CONFIG_END
@@ -1047,7 +1047,7 @@ MACHINE_DRIVER_END
*
*************************************/
-static MACHINE_DRIVER_START( yunit_core )
+static MACHINE_CONFIG_START( yunit_core, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, SLOW_MASTER_CLOCK)
@@ -1066,79 +1066,73 @@ static MACHINE_DRIVER_START( yunit_core )
MDRV_SCREEN_RAW_PARAMS(STDRES_PIXEL_CLOCK*2, 505, 0, 399, 289, 0, 253)
MDRV_VIDEO_UPDATE(tms340x0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( yunit_cvsd_4bit_slow )
+static MACHINE_CONFIG_DERIVED( yunit_cvsd_4bit_slow, yunit_core )
/* basic machine hardware */
- MDRV_IMPORT_FROM(yunit_core)
- MDRV_IMPORT_FROM(williams_cvsd_sound)
+ MDRV_FRAGMENT_ADD(williams_cvsd_sound)
/* video hardware */
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(midyunit_4bit)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( yunit_cvsd_4bit_fast )
+static MACHINE_CONFIG_DERIVED( yunit_cvsd_4bit_fast, yunit_core )
/* basic machine hardware */
- MDRV_IMPORT_FROM(yunit_core)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(FAST_MASTER_CLOCK)
- MDRV_IMPORT_FROM(williams_cvsd_sound)
+ MDRV_FRAGMENT_ADD(williams_cvsd_sound)
/* video hardware */
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(midyunit_4bit)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( yunit_cvsd_6bit_slow )
+static MACHINE_CONFIG_DERIVED( yunit_cvsd_6bit_slow, yunit_core )
/* basic machine hardware */
- MDRV_IMPORT_FROM(yunit_core)
- MDRV_IMPORT_FROM(williams_cvsd_sound)
+ MDRV_FRAGMENT_ADD(williams_cvsd_sound)
/* video hardware */
MDRV_PALETTE_LENGTH(4096)
MDRV_VIDEO_START(midyunit_6bit)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( yunit_adpcm_6bit_fast )
+static MACHINE_CONFIG_DERIVED( yunit_adpcm_6bit_fast, yunit_core )
/* basic machine hardware */
- MDRV_IMPORT_FROM(yunit_core)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(FAST_MASTER_CLOCK)
- MDRV_IMPORT_FROM(williams_adpcm_sound)
+ MDRV_FRAGMENT_ADD(williams_adpcm_sound)
/* video hardware */
MDRV_PALETTE_LENGTH(4096)
MDRV_VIDEO_START(midyunit_6bit)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( yunit_adpcm_6bit_faster )
+static MACHINE_CONFIG_DERIVED( yunit_adpcm_6bit_faster, yunit_core )
/* basic machine hardware */
- MDRV_IMPORT_FROM(yunit_core)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(FASTER_MASTER_CLOCK)
- MDRV_IMPORT_FROM(williams_adpcm_sound)
+ MDRV_FRAGMENT_ADD(williams_adpcm_sound)
/* video hardware */
MDRV_PALETTE_LENGTH(4096)
MDRV_VIDEO_START(midyunit_6bit)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mkyawdim )
+static MACHINE_CONFIG_DERIVED( mkyawdim, yunit_core )
/* basic machine hardware */
- MDRV_IMPORT_FROM(yunit_core)
MDRV_CPU_ADD("audiocpu", Z80, 5000000)
MDRV_CPU_PROGRAM_MAP(yawdim_sound_map)
@@ -1152,7 +1146,7 @@ static MACHINE_DRIVER_START( mkyawdim )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/midzeus.c b/src/mame/drivers/midzeus.c
index 04632f3b730..7b660129314 100644
--- a/src/mame/drivers/midzeus.c
+++ b/src/mame/drivers/midzeus.c
@@ -1107,7 +1107,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( midzeus )
+static MACHINE_CONFIG_START( midzeus, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS32032, CPU_CLOCK)
@@ -1129,8 +1129,8 @@ static MACHINE_DRIVER_START( midzeus )
MDRV_VIDEO_UPDATE(midzeus)
/* sound hardware */
- MDRV_IMPORT_FROM(dcs2_audio_2104)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(dcs2_audio_2104)
+MACHINE_CONFIG_END
static READ8_HANDLER( PIC16C5X_T0_clk_r )
{
@@ -1142,15 +1142,13 @@ static ADDRESS_MAP_START( pic_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( invasn )
-
- MDRV_IMPORT_FROM(midzeus)
+static MACHINE_CONFIG_DERIVED( invasn, midzeus )
MDRV_CPU_ADD("pic", PIC16C57, 8000000) /* ? */
MDRV_CPU_IO_MAP(pic_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( midzeus2 )
+static MACHINE_CONFIG_START( midzeus2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS32032, CPU_CLOCK)
@@ -1170,10 +1168,10 @@ static MACHINE_DRIVER_START( midzeus2 )
MDRV_VIDEO_UPDATE(midzeus2)
/* sound hardware */
- MDRV_IMPORT_FROM(dcs2_audio_2104)
+ MDRV_FRAGMENT_ADD(dcs2_audio_2104)
MDRV_M48T35_ADD( "m48t35" )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mikie.c b/src/mame/drivers/mikie.c
index 164bca581c7..5a9cdc5da53 100644
--- a/src/mame/drivers/mikie.c
+++ b/src/mame/drivers/mikie.c
@@ -244,10 +244,7 @@ static MACHINE_RESET( mikie )
state->last_irq = 0;
}
-static MACHINE_DRIVER_START( mikie )
-
- /* driver data */
- MDRV_DRIVER_DATA(mikie_state)
+static MACHINE_CONFIG_START( mikie, mikie_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, OSC/12)
@@ -283,7 +280,7 @@ static MACHINE_DRIVER_START( mikie )
MDRV_SOUND_ADD("sn2", SN76489A, CLK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/mil4000.c b/src/mame/drivers/mil4000.c
index d542047ea30..0edd44fe1bb 100644
--- a/src/mame/drivers/mil4000.c
+++ b/src/mame/drivers/mil4000.c
@@ -343,7 +343,7 @@ static GFXDECODE_START( mil4000 )
GFXDECODE_END
-static MACHINE_DRIVER_START( mil4000 )
+static MACHINE_CONFIG_START( mil4000, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 12000000 ) // ?
MDRV_CPU_PROGRAM_MAP(mil4000_map)
// irq 2/4/5 point to the same place, others invalid
@@ -366,7 +366,7 @@ static MACHINE_DRIVER_START( mil4000 )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH) // frequency from 1000 kHz resonator. pin 7 high not verified.
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/miniboy7.c b/src/mame/drivers/miniboy7.c
index e3cb7c416b8..e78a76df7c6 100644
--- a/src/mame/drivers/miniboy7.c
+++ b/src/mame/drivers/miniboy7.c
@@ -428,7 +428,7 @@ static const ay8910_interface miniboy7_ay8910_intf =
* Machine Drivers *
***********************************/
-static MACHINE_DRIVER_START( miniboy7 )
+static MACHINE_CONFIG_START( miniboy7, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/16) /* guess */
@@ -461,7 +461,7 @@ static MACHINE_DRIVER_START( miniboy7 )
MDRV_SOUND_CONFIG(miniboy7_ay8910_intf)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***********************************
diff --git a/src/mame/drivers/minivadr.c b/src/mame/drivers/minivadr.c
index 3f153900c24..1fb0011de75 100644
--- a/src/mame/drivers/minivadr.c
+++ b/src/mame/drivers/minivadr.c
@@ -80,10 +80,7 @@ static INPUT_PORTS_START( minivadr )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( minivadr )
-
- /* driver data */
- MDRV_DRIVER_DATA(minivadr_state)
+static MACHINE_CONFIG_START( minivadr, minivadr_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,24000000 / 6) /* 4 MHz ? */
@@ -101,7 +98,7 @@ static MACHINE_DRIVER_START( minivadr )
MDRV_VIDEO_UPDATE(minivadr)
/* the board has no sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/mirage.c b/src/mame/drivers/mirage.c
index 14449c5bcee..ee27cc21ed6 100644
--- a/src/mame/drivers/mirage.c
+++ b/src/mame/drivers/mirage.c
@@ -376,10 +376,7 @@ static MACHINE_RESET( mirage )
state->mux_data = 0;
}
-static MACHINE_DRIVER_START( mirage )
-
- /* driver data */
- MDRV_DRIVER_DATA(mirage_state)
+static MACHINE_CONFIG_START( mirage, mirage_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 28000000/2)
@@ -412,7 +409,7 @@ static MACHINE_DRIVER_START( mirage )
MDRV_OKIM6295_ADD("oki_sfx", 1000000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( mirage )
diff --git a/src/mame/drivers/mirax.c b/src/mame/drivers/mirax.c
index c17fb4b1801..bd8e06781f8 100644
--- a/src/mame/drivers/mirax.c
+++ b/src/mame/drivers/mirax.c
@@ -375,7 +375,7 @@ static INTERRUPT_GEN( mirax_vblank_irq )
cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
}
-static MACHINE_DRIVER_START( mirax )
+static MACHINE_CONFIG_START( mirax, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80, 12000000/4) // ceramic potted module, encrypted z80
MDRV_CPU_PROGRAM_MAP(mirax_main_map)
MDRV_CPU_VBLANK_INT("screen",mirax_vblank_irq)
@@ -405,7 +405,7 @@ static MACHINE_DRIVER_START( mirax )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MDRV_SOUND_ADD("ay2", AY8910, 12000000/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( mirax )
diff --git a/src/mame/drivers/missb2.c b/src/mame/drivers/missb2.c
index c813db53175..67b76c9e09b 100644
--- a/src/mame/drivers/missb2.c
+++ b/src/mame/drivers/missb2.c
@@ -379,10 +379,7 @@ static MACHINE_RESET( missb2 )
state->sound_status = 0;
}
-static MACHINE_DRIVER_START( missb2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(bublbobl_state)
+static MACHINE_CONFIG_START( missb2, bublbobl_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_XTAL/4) // 6 MHz
@@ -425,7 +422,7 @@ static MACHINE_DRIVER_START( missb2 )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.4)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/missile.c b/src/mame/drivers/missile.c
index 31b9e0b46c8..a3630b5681e 100644
--- a/src/mame/drivers/missile.c
+++ b/src/mame/drivers/missile.c
@@ -975,7 +975,7 @@ static const pokey_interface pokey_config =
*
*************************************/
-static MACHINE_DRIVER_START( missile )
+static MACHINE_CONFIG_START( missile, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/8)
@@ -1000,7 +1000,7 @@ static MACHINE_DRIVER_START( missile )
MDRV_SOUND_ADD("pokey", POKEY, MASTER_CLOCK/8)
MDRV_SOUND_CONFIG(pokey_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mitchell.c b/src/mame/drivers/mitchell.c
index 0a82473668a..e2bab7f8712 100644
--- a/src/mame/drivers/mitchell.c
+++ b/src/mame/drivers/mitchell.c
@@ -1105,10 +1105,7 @@ static MACHINE_RESET( mitchell )
state->keymatrix = 0;
}
-static MACHINE_DRIVER_START( mgakuen )
-
- /* driver data */
- MDRV_DRIVER_DATA(mitchell_state)
+static MACHINE_CONFIG_START( mgakuen, mitchell_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_16MHz/2) /* probably same clock as the other mitchell hardware games */
@@ -1143,13 +1140,10 @@ static MACHINE_DRIVER_START( mgakuen )
MDRV_SOUND_ADD("ymsnd", YM2413, XTAL_16MHz/4) /* probably same clock as the other mitchell hardware games */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pang )
- /* driver data */
- MDRV_DRIVER_DATA(mitchell_state)
+static MACHINE_CONFIG_START( pang, mitchell_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80, XTAL_16MHz/2) /* verified on pcb */
@@ -1185,7 +1179,7 @@ static MACHINE_DRIVER_START( pang )
MDRV_SOUND_ADD("ymsnd",YM2413, XTAL_16MHz/4) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const gfx_layout blcharlayout =
{
@@ -1224,8 +1218,7 @@ static const msm5205_interface msm5205_config =
};
-static MACHINE_DRIVER_START( spangbl )
- MDRV_IMPORT_FROM(pang)
+static MACHINE_CONFIG_DERIVED( spangbl, pang )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(spangbl_map)
@@ -1244,12 +1237,9 @@ static MACHINE_DRIVER_START( spangbl )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( mstworld )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(mitchell_state)
+static MACHINE_CONFIG_START( mstworld, mitchell_state )
/* basic machine hardware */
/* it doesn't glitch with the clock speed set to 4x normal, however this is incorrect..
@@ -1285,13 +1275,10 @@ static MACHINE_DRIVER_START( mstworld )
MDRV_OKIM6295_ADD("oki", 990000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( marukin )
-
- /* driver data */
- MDRV_DRIVER_DATA(mitchell_state)
+static MACHINE_CONFIG_START( marukin, mitchell_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_16MHz/2) /* verified on pcb */
@@ -1324,7 +1311,7 @@ static MACHINE_DRIVER_START( marukin )
MDRV_SOUND_ADD("ymsnd", YM2413, XTAL_16MHz/4) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -1344,10 +1331,7 @@ Vsync is 59.09hz
*/
-static MACHINE_DRIVER_START( pkladiesbl )
-
- /* driver data */
- MDRV_DRIVER_DATA(mitchell_state)
+static MACHINE_CONFIG_START( pkladiesbl, mitchell_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on pcb */
@@ -1380,7 +1364,7 @@ static MACHINE_DRIVER_START( pkladiesbl )
MDRV_SOUND_ADD("ymsnd", YM2413, 3750000) /* verified on pcb, read the comments */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/mjkjidai.c b/src/mame/drivers/mjkjidai.c
index 25182a226d0..f70beb49460 100644
--- a/src/mame/drivers/mjkjidai.c
+++ b/src/mame/drivers/mjkjidai.c
@@ -372,9 +372,7 @@ static GFXDECODE_START( mjkjidai )
GFXDECODE_END
-static MACHINE_DRIVER_START( mjkjidai )
-
- MDRV_DRIVER_DATA(mjkjidai_state)
+static MACHINE_CONFIG_START( mjkjidai, mjkjidai_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,10000000/2) /* 5 MHz ??? */
@@ -410,7 +408,7 @@ static MACHINE_DRIVER_START( mjkjidai )
MDRV_SOUND_ADD("adpcm", MJKJIDAI, 6000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mjsister.c b/src/mame/drivers/mjsister.c
index f0e3810e6ba..02290b8ec81 100644
--- a/src/mame/drivers/mjsister.c
+++ b/src/mame/drivers/mjsister.c
@@ -493,10 +493,7 @@ static MACHINE_RESET( mjsister )
}
-static MACHINE_DRIVER_START( mjsister )
-
- /* driver data */
- MDRV_DRIVER_DATA(mjsister_state)
+static MACHINE_CONFIG_START( mjsister, mjsister_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MCLK/2) /* 6.000 MHz */
@@ -530,7 +527,7 @@ static MACHINE_DRIVER_START( mjsister )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/mlanding.c b/src/mame/drivers/mlanding.c
index 9e3bcbd3429..47abc2ef55a 100644
--- a/src/mame/drivers/mlanding.c
+++ b/src/mame/drivers/mlanding.c
@@ -717,7 +717,7 @@ static MACHINE_RESET( mlanding )
dsp_HOLD_signal = 0;
}
-static MACHINE_DRIVER_START( mlanding )
+static MACHINE_CONFIG_START( mlanding, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000 ) /* 12 MHz ??? (guess) */
@@ -770,7 +770,7 @@ static MACHINE_DRIVER_START( mlanding )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.4)
MDRV_TC0140SYT_ADD("tc0140syt", mlanding_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( mlanding )
ROM_REGION( 0x60000, "maincpu", 0 ) /* 68000 */
diff --git a/src/mame/drivers/model1.c b/src/mame/drivers/model1.c
index 07586c2f17c..9a678cee0d4 100644
--- a/src/mame/drivers/model1.c
+++ b/src/mame/drivers/model1.c
@@ -1496,7 +1496,7 @@ ROM_START( wingwarj )
ROM_END
-static MACHINE_DRIVER_START( model1 )
+static MACHINE_CONFIG_START( model1, driver_data_t )
MDRV_CPU_ADD("maincpu", V60, 16000000)
MDRV_CPU_PROGRAM_MAP(model1_mem)
MDRV_CPU_IO_MAP(model1_io)
@@ -1534,9 +1534,9 @@ static MACHINE_DRIVER_START( model1 )
MDRV_SOUND_ADD("sega2", MULTIPCM, 8000000)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( model1_vr )
+static MACHINE_CONFIG_START( model1_vr, driver_data_t )
MDRV_CPU_ADD("maincpu", V60, 16000000)
MDRV_CPU_PROGRAM_MAP(model1_vr_mem)
MDRV_CPU_IO_MAP(model1_vr_io)
@@ -1578,7 +1578,7 @@ static MACHINE_DRIVER_START( model1_vr )
MDRV_SOUND_ADD("sega2", MULTIPCM, 8000000)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
GAME( 1993, vf, 0, model1, vf, 0, ROT0, "Sega", "Virtua Fighter", GAME_IMPERFECT_GRAPHICS )
GAME( 1992, vr, 0, model1_vr, vr, 0, ROT0, "Sega", "Virtua Racing", GAME_IMPERFECT_GRAPHICS )
diff --git a/src/mame/drivers/model2.c b/src/mame/drivers/model2.c
index 8bb9522bfee..77df6450da7 100644
--- a/src/mame/drivers/model2.c
+++ b/src/mame/drivers/model2.c
@@ -2009,7 +2009,7 @@ static const mb86233_cpu_core tgp_config =
/* original Model 2 */
-static MACHINE_DRIVER_START( model2o )
+static MACHINE_CONFIG_START( model2o, driver_data_t )
MDRV_CPU_ADD("maincpu", I960, 25000000)
MDRV_CPU_PROGRAM_MAP(model2o_mem)
MDRV_CPU_VBLANK_INT_HACK(model2_interrupt,2)
@@ -2062,10 +2062,10 @@ static MACHINE_DRIVER_START( model2o )
MDRV_SOUND_ADD("sega2", MULTIPCM, 8000000)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* 2A-CRX */
-static MACHINE_DRIVER_START( model2a )
+static MACHINE_CONFIG_START( model2a, driver_data_t )
MDRV_CPU_ADD("maincpu", I960, 25000000)
MDRV_CPU_PROGRAM_MAP(model2a_crx_mem)
MDRV_CPU_VBLANK_INT_HACK(model2_interrupt,2)
@@ -2111,7 +2111,7 @@ static MACHINE_DRIVER_START( model2a )
MDRV_SOUND_CONFIG(scsp_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 2.0)
MDRV_SOUND_ROUTE(0, "rspeaker", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static READ8_HANDLER( driveio_port_r )
{
@@ -2146,14 +2146,13 @@ static ADDRESS_MAP_START( drive_io_map, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0x80, 0x83) AM_NOP //r/w it during irq
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( srallyc )
- MDRV_IMPORT_FROM( model2a )
+static MACHINE_CONFIG_DERIVED( srallyc, model2a )
MDRV_CPU_ADD("drivecpu", Z80, 16000000/4) //???
MDRV_CPU_PROGRAM_MAP(drive_map)
MDRV_CPU_IO_MAP(drive_io_map)
// MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const sharc_config sharc_cfg =
{
@@ -2161,7 +2160,7 @@ static const sharc_config sharc_cfg =
};
/* 2B-CRX */
-static MACHINE_DRIVER_START( model2b )
+static MACHINE_CONFIG_START( model2b, driver_data_t )
MDRV_CPU_ADD("maincpu", I960, 25000000)
MDRV_CPU_PROGRAM_MAP(model2b_crx_mem)
MDRV_CPU_VBLANK_INT_HACK(model2_interrupt,2)
@@ -2213,10 +2212,10 @@ static MACHINE_DRIVER_START( model2b )
MDRV_SOUND_CONFIG(scsp_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 2.0)
MDRV_SOUND_ROUTE(0, "rspeaker", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* 2C-CRX */
-static MACHINE_DRIVER_START( model2c )
+static MACHINE_CONFIG_START( model2c, driver_data_t )
MDRV_CPU_ADD("maincpu", I960, 25000000)
MDRV_CPU_PROGRAM_MAP(model2c_crx_mem)
MDRV_CPU_VBLANK_INT_HACK(model2c_interrupt,3)
@@ -2258,7 +2257,7 @@ static MACHINE_DRIVER_START( model2c )
MDRV_SOUND_CONFIG(scsp_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 2.0)
MDRV_SOUND_ROUTE(0, "rspeaker", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROM definitions */
diff --git a/src/mame/drivers/model3.c b/src/mame/drivers/model3.c
index 12c40d6cde1..d0d6ecf907c 100644
--- a/src/mame/drivers/model3.c
+++ b/src/mame/drivers/model3.c
@@ -4992,7 +4992,7 @@ static const powerpc_config model3_2x =
66000000 /* Multiplier 2.5, Bus = 66MHz, Core = 166MHz */
};
-static MACHINE_DRIVER_START( model3_10 )
+static MACHINE_CONFIG_START( model3_10, driver_data_t )
MDRV_CPU_ADD("maincpu", PPC603E, 66000000)
MDRV_CPU_CONFIG(model3_10)
MDRV_CPU_PROGRAM_MAP(model3_mem)
@@ -5032,9 +5032,9 @@ static MACHINE_DRIVER_START( model3_10 )
MDRV_SOUND_CONFIG(scsp2_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 2.0)
MDRV_SOUND_ROUTE(0, "rspeaker", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( model3_15 )
+static MACHINE_CONFIG_START( model3_15, driver_data_t )
MDRV_CPU_ADD("maincpu", PPC603E, 100000000)
MDRV_CPU_CONFIG(model3_15)
MDRV_CPU_PROGRAM_MAP(model3_mem)
@@ -5072,9 +5072,9 @@ static MACHINE_DRIVER_START( model3_15 )
MDRV_SOUND_CONFIG(scsp2_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 2.0)
MDRV_SOUND_ROUTE(0, "rspeaker", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( model3_20 )
+static MACHINE_CONFIG_START( model3_20, driver_data_t )
MDRV_CPU_ADD("maincpu", PPC603R, 166000000)
MDRV_CPU_CONFIG(model3_2x)
MDRV_CPU_PROGRAM_MAP(model3_mem)
@@ -5112,9 +5112,9 @@ static MACHINE_DRIVER_START( model3_20 )
MDRV_SOUND_CONFIG(scsp2_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 2.0)
MDRV_SOUND_ROUTE(0, "rspeaker", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( model3_21 )
+static MACHINE_CONFIG_START( model3_21, driver_data_t )
MDRV_CPU_ADD("maincpu", PPC603R, 166000000)
MDRV_CPU_CONFIG(model3_2x)
MDRV_CPU_PROGRAM_MAP(model3_mem)
@@ -5153,7 +5153,7 @@ static MACHINE_DRIVER_START( model3_21 )
MDRV_SOUND_CONFIG(scsp2_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 2.0)
MDRV_SOUND_ROUTE(0, "rspeaker", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static void interleave_vroms(running_machine *machine)
{
diff --git a/src/mame/drivers/mogura.c b/src/mame/drivers/mogura.c
index 0fad0037631..a132450d608 100644
--- a/src/mame/drivers/mogura.c
+++ b/src/mame/drivers/mogura.c
@@ -201,10 +201,7 @@ static MACHINE_START( mogura )
state->dac2 = machine->device("dac2");
}
-static MACHINE_DRIVER_START( mogura )
-
- /* driver data */
- MDRV_DRIVER_DATA(mogura_state)
+static MACHINE_CONFIG_START( mogura, mogura_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,3000000) /* 3 MHz */
@@ -238,7 +235,7 @@ static MACHINE_DRIVER_START( mogura )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( mogura )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/mole.c b/src/mame/drivers/mole.c
index c5a4e3087ad..78dece0dc36 100644
--- a/src/mame/drivers/mole.c
+++ b/src/mame/drivers/mole.c
@@ -316,10 +316,7 @@ static MACHINE_RESET( mole )
state->tile_bank = 0;
}
-static MACHINE_DRIVER_START( mole )
-
- /* driver data */
- MDRV_DRIVER_DATA(mole_state)
+static MACHINE_CONFIG_START( mole, mole_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 4000000) // ???
@@ -349,7 +346,7 @@ static MACHINE_DRIVER_START( mole )
MDRV_SOUND_ADD("aysnd", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/momoko.c b/src/mame/drivers/momoko.c
index bd579a6ddfb..6479c4cb8c1 100644
--- a/src/mame/drivers/momoko.c
+++ b/src/mame/drivers/momoko.c
@@ -260,10 +260,7 @@ static MACHINE_RESET( momoko )
state->flipscreen = 0;
}
-static MACHINE_DRIVER_START( momoko )
-
- /* driver data */
- MDRV_DRIVER_DATA(momoko_state)
+static MACHINE_CONFIG_START( momoko, momoko_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5.0MHz */
@@ -304,7 +301,7 @@ static MACHINE_DRIVER_START( momoko )
MDRV_SOUND_ROUTE(1, "mono", 0.15)
MDRV_SOUND_ROUTE(2, "mono", 0.15)
MDRV_SOUND_ROUTE(3, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/****************************************************************************/
diff --git a/src/mame/drivers/monzagp.c b/src/mame/drivers/monzagp.c
index 60be4261cc6..5a72bc4c563 100644
--- a/src/mame/drivers/monzagp.c
+++ b/src/mame/drivers/monzagp.c
@@ -238,7 +238,7 @@ static GFXDECODE_START( monzagp )
GFXDECODE_ENTRY( "gfx1", 0x0000, tile_layout2, 0, 8 )
GFXDECODE_END
-static MACHINE_DRIVER_START( monzagp )
+static MACHINE_CONFIG_START( monzagp, driver_data_t )
MDRV_CPU_ADD("maincpu", I8035, 12000000/32) /* 400KHz ??? - Main board Crystal is 12MHz */
MDRV_CPU_PROGRAM_MAP(monzagp_map)
MDRV_CPU_IO_MAP(monzagp_io)
@@ -258,7 +258,7 @@ static MACHINE_DRIVER_START( monzagp )
MDRV_GFXDECODE(monzagp)
MDRV_VIDEO_START(monzagp)
MDRV_VIDEO_UPDATE(monzagp)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( monzagp )
ROM_REGION( 0x1000, "maincpu", 0 )
diff --git a/src/mame/drivers/moo.c b/src/mame/drivers/moo.c
index 287c5c7804f..d6210ccdb2f 100644
--- a/src/mame/drivers/moo.c
+++ b/src/mame/drivers/moo.c
@@ -505,10 +505,7 @@ static const k054338_interface moo_k054338_intf =
};
-static MACHINE_DRIVER_START( moo )
-
- /* driver data */
- MDRV_DRIVER_DATA(moo_state)
+static MACHINE_CONFIG_START( moo, moo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -553,12 +550,9 @@ static MACHINE_DRIVER_START( moo )
MDRV_SOUND_ADD("k054539", K054539, 48000)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.75)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.75)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( moobl )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(moo_state)
+static MACHINE_CONFIG_START( moobl, moo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16100000)
@@ -596,10 +590,9 @@ static MACHINE_DRIVER_START( moobl )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bucky )
- MDRV_IMPORT_FROM(moo)
+static MACHINE_CONFIG_DERIVED( bucky, moo )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(bucky_map)
@@ -611,7 +604,7 @@ static MACHINE_DRIVER_START( bucky )
/* video hardware */
MDRV_PALETTE_LENGTH(4096)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mosaic.c b/src/mame/drivers/mosaic.c
index 01136dbd052..903308e33ca 100644
--- a/src/mame/drivers/mosaic.c
+++ b/src/mame/drivers/mosaic.c
@@ -267,10 +267,7 @@ static MACHINE_RESET( mosaic )
state->prot_val = 0;
}
-static MACHINE_DRIVER_START( mosaic )
-
- /* driver data */
- MDRV_DRIVER_DATA(mosaic_state)
+static MACHINE_CONFIG_START( mosaic, mosaic_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, 7000000) /* ??? */
@@ -301,14 +298,13 @@ static MACHINE_DRIVER_START( mosaic )
MDRV_SOUND_ADD("ymsnd", YM2203, 3000000)
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gfire2 )
- MDRV_IMPORT_FROM(mosaic)
+static MACHINE_CONFIG_DERIVED( gfire2, mosaic )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gfire2_map)
MDRV_CPU_IO_MAP(gfire2_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mouser.c b/src/mame/drivers/mouser.c
index 6fe54939f6d..8910f4a03f9 100644
--- a/src/mame/drivers/mouser.c
+++ b/src/mame/drivers/mouser.c
@@ -190,10 +190,7 @@ static MACHINE_RESET( mouser )
state->nmi_enable = 0;
}
-static MACHINE_DRIVER_START( mouser )
-
- /* driver data */
- MDRV_DRIVER_DATA(mouser_state)
+static MACHINE_CONFIG_START( mouser, mouser_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz ? */
@@ -230,7 +227,7 @@ static MACHINE_DRIVER_START( mouser )
MDRV_SOUND_ADD("ay2", AY8910, 4000000/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( mouser )
diff --git a/src/mame/drivers/mpoker.c b/src/mame/drivers/mpoker.c
index 59dbfaf19f2..f758472d9fd 100644
--- a/src/mame/drivers/mpoker.c
+++ b/src/mame/drivers/mpoker.c
@@ -559,7 +559,7 @@ static GFXDECODE_START( mpoker )
GFXDECODE_ENTRY( "gfx1", 0, tiles16x16_layout, 0, 0x100 )
GFXDECODE_END
-static MACHINE_DRIVER_START( mpoker )
+static MACHINE_CONFIG_START( mpoker, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,MASTER_CLOCK/6) /* 3 MHz? */
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -586,7 +586,7 @@ static MACHINE_DRIVER_START( mpoker )
// MDRV_SPEAKER_STANDARD_MONO("mono")
// MDRV_SOUND_ADD("dac", DAC, 0)
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( mpoker )
ROM_REGION( 0x3000, "maincpu", 0 )
diff --git a/src/mame/drivers/mpu4.c b/src/mame/drivers/mpu4.c
index 1b1af61b7e8..6dbb6fc01d7 100644
--- a/src/mame/drivers/mpu4.c
+++ b/src/mame/drivers/mpu4.c
@@ -1856,7 +1856,7 @@ static const ay8910_interface ay8910_config =
/* machine driver for MOD 2 board */
-static MACHINE_DRIVER_START( mpu4mod2 )
+static MACHINE_CONFIG_START( mpu4mod2, driver_data_t )
MDRV_MACHINE_START(mpu4mod2)
MDRV_MACHINE_RESET(mpu4)
@@ -1883,10 +1883,9 @@ static MACHINE_DRIVER_START( mpu4mod2 )
MDRV_NVRAM_HANDLER(generic_0fill)
MDRV_DEFAULT_LAYOUT(layout_mpu4)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mod4yam )
- MDRV_IMPORT_FROM( mpu4mod2 )
+static MACHINE_CONFIG_DERIVED( mod4yam, mpu4mod2 )
MDRV_MACHINE_START(mpu4mod4)
MDRV_CPU_MODIFY("maincpu")
@@ -1895,10 +1894,9 @@ static MACHINE_DRIVER_START( mod4yam )
MDRV_DEVICE_REMOVE("ay8913")
MDRV_SOUND_ADD("ym2413", YM2413, MPU4_MASTER_CLOCK/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mod4oki )
- MDRV_IMPORT_FROM( mpu4mod2 )
+static MACHINE_CONFIG_DERIVED( mod4oki, mpu4mod2 )
MDRV_MACHINE_START(mpu4mod4)
MDRV_PIA6821_ADD("pia_gamebd", pia_gameboard_intf)
@@ -1909,14 +1907,13 @@ static MACHINE_DRIVER_START( mod4oki )
MDRV_DEVICE_REMOVE("ay8913")
MDRV_SOUND_ADD("msm6376", OKIM6376, 4000000) //?
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mpu4dutch )
- MDRV_IMPORT_FROM( mod4oki )
+static MACHINE_CONFIG_DERIVED( mpu4dutch, mod4oki )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dutch_memmap) // setup read and write memorymap
MDRV_MACHINE_START(mpu4dutch) // main mpu4 board initialisation
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT (connect4)
{
diff --git a/src/mame/drivers/mpu4drvr.c b/src/mame/drivers/mpu4drvr.c
index a93f85477d0..f7ba50e749e 100644
--- a/src/mame/drivers/mpu4drvr.c
+++ b/src/mame/drivers/mpu4drvr.c
@@ -2224,7 +2224,7 @@ static TIMER_DEVICE_CALLBACK( scanline_timer_callback )
}
-static MACHINE_DRIVER_START( mpu4_vid )
+static MACHINE_CONFIG_START( mpu4_vid, driver_data_t )
MDRV_CPU_ADD("maincpu", M6809, MPU4_MASTER_CLOCK/4 )
MDRV_CPU_PROGRAM_MAP(mpu4_6809_map)
MDRV_TIMER_ADD_PERIODIC("50hz",gen_50hz, HZ(100))
@@ -2278,30 +2278,27 @@ static MACHINE_DRIVER_START( mpu4_vid )
// for the video timing
MDRV_TIMER_ADD_SCANLINE("scan_timer", scanline_timer_callback, "screen", 0, 1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( crmaze )
- MDRV_IMPORT_FROM( mpu4_vid )
+static MACHINE_CONFIG_DERIVED( crmaze, mpu4_vid )
MDRV_PIA6821_MODIFY("pia_ic5", pia_ic5t_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mating )
- MDRV_IMPORT_FROM( crmaze )
+static MACHINE_CONFIG_DERIVED( mating, crmaze )
MDRV_SOUND_ADD("oki", OKIM6376, 64000) //?
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vgpoker )
- MDRV_IMPORT_FROM( mpu4_vid )
+static MACHINE_CONFIG_DERIVED( vgpoker, mpu4_vid )
MDRV_CPU_MODIFY("video")
MDRV_CPU_PROGRAM_MAP(vp_68k_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* machine driver for Zenitone Deal 'Em board */
-static MACHINE_DRIVER_START( dealem )
+static MACHINE_CONFIG_START( dealem, driver_data_t )
MDRV_MACHINE_START(mpu4mod2) /* main mpu4 board initialisation */
MDRV_MACHINE_RESET(mpu4_vid)
MDRV_CPU_ADD("maincpu", M6809, MPU4_MASTER_CLOCK/4)
@@ -2339,7 +2336,7 @@ static MACHINE_DRIVER_START( dealem )
MDRV_PALETTE_INIT(dealem)
MDRV_MC6845_ADD("crtc", HD6845, MPU4_MASTER_CLOCK / 4 / 8, hd6845_intf) /* HD68B45 */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mpu5.c b/src/mame/drivers/mpu5.c
index a4766403de1..96ba31e6eca 100644
--- a/src/mame/drivers/mpu5.c
+++ b/src/mame/drivers/mpu5.c
@@ -33,7 +33,7 @@ static VIDEO_UPDATE(mpu5)
return 0;
}
-static MACHINE_DRIVER_START( mpu5 )
+static MACHINE_CONFIG_START( mpu5, driver_data_t )
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) // ?
MDRV_CPU_PROGRAM_MAP(mpu5_map)
@@ -52,7 +52,7 @@ static MACHINE_DRIVER_START( mpu5 )
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
/* unknown sound */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( m_honmon )
ROM_REGION( 0x300000, "maincpu", 0 ) /* Code */
diff --git a/src/mame/drivers/mquake.c b/src/mame/drivers/mquake.c
index 8639661df6b..74c7492579c 100644
--- a/src/mame/drivers/mquake.c
+++ b/src/mame/drivers/mquake.c
@@ -356,7 +356,7 @@ static const mos6526_interface cia_1_intf =
DEVCB_NULL
};
-static MACHINE_DRIVER_START( mquake )
+static MACHINE_CONFIG_START( mquake, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, AMIGA_68000_NTSC_CLOCK)
@@ -400,7 +400,7 @@ static MACHINE_DRIVER_START( mquake )
/* cia */
MDRV_MOS8520_ADD("cia_0", AMIGA_68000_NTSC_CLOCK / 10, cia_0_intf)
MDRV_MOS8520_ADD("cia_1", AMIGA_68000_NTSC_CLOCK / 10, cia_1_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mrdo.c b/src/mame/drivers/mrdo.c
index 472bce69630..c8cf78bc763 100644
--- a/src/mame/drivers/mrdo.c
+++ b/src/mame/drivers/mrdo.c
@@ -165,10 +165,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( mrdo )
-
- /* driver data */
- MDRV_DRIVER_DATA(mrdo_state)
+static MACHINE_CONFIG_START( mrdo, mrdo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CLOCK/2) /* Verified */
@@ -195,7 +192,7 @@ static MACHINE_DRIVER_START( mrdo )
MDRV_SOUND_ADD("sn2", SN76489, MAIN_CLOCK/2) /* Verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mrflea.c b/src/mame/drivers/mrflea.c
index 4a9a9dc7f3a..90ae5165b8c 100644
--- a/src/mame/drivers/mrflea.c
+++ b/src/mame/drivers/mrflea.c
@@ -357,10 +357,7 @@ static MACHINE_RESET( mrflea )
state->select1 = 0;
}
-static MACHINE_DRIVER_START( mrflea )
-
- /* driver data */
- MDRV_DRIVER_DATA(mrflea_state)
+static MACHINE_CONFIG_START( mrflea, mrflea_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz? */
@@ -404,7 +401,7 @@ static MACHINE_DRIVER_START( mrflea )
MDRV_SOUND_ADD("ay3", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/mrjong.c b/src/mame/drivers/mrjong.c
index 766679fb539..66302d0395b 100644
--- a/src/mame/drivers/mrjong.c
+++ b/src/mame/drivers/mrjong.c
@@ -178,10 +178,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( mrjong )
-
- /* driver data */
- MDRV_DRIVER_DATA(mrjong_state)
+static MACHINE_CONFIG_START( mrjong, mrjong_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,15468000/6) /* 2.578 MHz?? */
@@ -212,7 +209,7 @@ static MACHINE_DRIVER_START( mrjong )
MDRV_SOUND_ADD("sn2", SN76489, 15468000/6)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/ms32.c b/src/mame/drivers/ms32.c
index e573cb4753f..4f23f3ad261 100644
--- a/src/mame/drivers/ms32.c
+++ b/src/mame/drivers/ms32.c
@@ -1312,7 +1312,7 @@ static MACHINE_RESET( ms32 )
/********** MACHINE DRIVER **********/
-static MACHINE_DRIVER_START( ms32 )
+static MACHINE_CONFIG_START( ms32, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V70, 20000000) // 20MHz
@@ -1346,10 +1346,9 @@ static MACHINE_DRIVER_START( ms32 )
MDRV_SOUND_ADD("ymf", YMF271, 16934400)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( f1superb )
- MDRV_IMPORT_FROM(ms32)
+static MACHINE_CONFIG_DERIVED( f1superb, ms32 )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(f1superb_map)
@@ -1357,7 +1356,7 @@ static MACHINE_DRIVER_START( f1superb )
MDRV_GFXDECODE(f1superb)
MDRV_VIDEO_START(f1superb)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/msisaac.c b/src/mame/drivers/msisaac.c
index 50f1f044a6e..dfb73aa9b71 100644
--- a/src/mame/drivers/msisaac.c
+++ b/src/mame/drivers/msisaac.c
@@ -526,10 +526,7 @@ static MACHINE_RESET( msisaac )
#endif
}
-static MACHINE_DRIVER_START( msisaac )
-
- /* driver data */
- MDRV_DRIVER_DATA(buggychl_state)
+static MACHINE_CONFIG_START( msisaac, buggychl_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000)
@@ -584,7 +581,7 @@ static MACHINE_DRIVER_START( msisaac )
// pin 1 SOLO 8' not mapped
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************************************/
diff --git a/src/mame/drivers/mugsmash.c b/src/mame/drivers/mugsmash.c
index 0b154e238eb..3c43badf119 100644
--- a/src/mame/drivers/mugsmash.c
+++ b/src/mame/drivers/mugsmash.c
@@ -408,9 +408,7 @@ static MACHINE_START( mugsmash )
state->audiocpu = machine->device("audiocpu");
}
-static MACHINE_DRIVER_START( mugsmash )
-
- MDRV_DRIVER_DATA( mugsmash_state )
+static MACHINE_CONFIG_START( mugsmash, mugsmash_state )
MDRV_CPU_ADD("maincpu", M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(mugsmash_map)
@@ -444,7 +442,7 @@ static MACHINE_DRIVER_START( mugsmash )
MDRV_OKIM6295_ADD("oki", 1122000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50) /* sound fx */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( mugsmash )
ROM_REGION( 0x80000, "maincpu", 0 ) /* 68000 Code */
diff --git a/src/mame/drivers/multfish.c b/src/mame/drivers/multfish.c
index 6b111f6b97e..d3c4ca153ff 100644
--- a/src/mame/drivers/multfish.c
+++ b/src/mame/drivers/multfish.c
@@ -606,7 +606,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( multfish )
+static MACHINE_CONFIG_START( multfish, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,6000000) /* 6 MHz? */
MDRV_CPU_PROGRAM_MAP(multfish_map)
@@ -633,7 +633,7 @@ static MACHINE_DRIVER_START( multfish )
MDRV_SOUND_ADD("aysnd", AY8910, 6000000/4)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_RESET( island2a )
{
@@ -644,11 +644,11 @@ static MACHINE_RESET( island2a )
multfish_bram[0x2003] = 0x01;
multfish_bram[0x4003] = 0x02;
}
-static MACHINE_DRIVER_START( island2a )
+static MACHINE_CONFIG_DERIVED( island2a, multfish )
+
/* basic machine hardware */
- MDRV_IMPORT_FROM(multfish)
MDRV_MACHINE_RESET( island2a )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/multigam.c b/src/mame/drivers/multigam.c
index 56c41d4e963..98c51f217bc 100644
--- a/src/mame/drivers/multigam.c
+++ b/src/mame/drivers/multigam.c
@@ -1133,7 +1133,7 @@ static MACHINE_START( supergm3 )
multigmc_mmc3_6000_ram = auto_alloc_array(machine, UINT8, 0x2000);
}
-static MACHINE_DRIVER_START( multigam )
+static MACHINE_CONFIG_START( multigam, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", N2A03, N2A03_DEFAULTCLOCK)
MDRV_CPU_PROGRAM_MAP(multigam_map)
@@ -1166,30 +1166,27 @@ static MACHINE_DRIVER_START( multigam )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( multigm3 )
- MDRV_IMPORT_FROM(multigam)
+static MACHINE_CONFIG_DERIVED( multigm3, multigam )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(multigm3_map)
MDRV_MACHINE_START( multigm3 )
MDRV_MACHINE_RESET( multigm3 )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( multigmt )
- MDRV_IMPORT_FROM(multigam)
+static MACHINE_CONFIG_DERIVED( multigmt, multigam )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(multigmt_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( supergm3 )
- MDRV_IMPORT_FROM(multigam)
+static MACHINE_CONFIG_DERIVED( supergm3, multigam )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(supergm3_map)
MDRV_MACHINE_START(supergm3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( multigam )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/munchmo.c b/src/mame/drivers/munchmo.c
index 63fb279f4e0..05e9473b121 100644
--- a/src/mame/drivers/munchmo.c
+++ b/src/mame/drivers/munchmo.c
@@ -328,10 +328,7 @@ static MACHINE_RESET( munchmo )
state->which = 0;
}
-static MACHINE_DRIVER_START( mnchmobl )
-
- /* driver data */
- MDRV_DRIVER_DATA(munchmo_state)
+static MACHINE_CONFIG_START( mnchmobl, munchmo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_15MHz/4) /* ? */
@@ -369,7 +366,7 @@ static MACHINE_DRIVER_START( mnchmobl )
MDRV_SOUND_ADD("ay2", AY8910, XTAL_15MHz/4/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/murogem.c b/src/mame/drivers/murogem.c
index d97ee26f6d9..d2fb74d6a7c 100644
--- a/src/mame/drivers/murogem.c
+++ b/src/mame/drivers/murogem.c
@@ -207,7 +207,7 @@ static const mc6845_interface mc6845_intf =
};
-static MACHINE_DRIVER_START( murogem )
+static MACHINE_CONFIG_START( murogem, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6802,8000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(murogem_map)
@@ -228,7 +228,7 @@ static MACHINE_DRIVER_START( murogem )
MDRV_VIDEO_UPDATE(murogem)
MDRV_MC6845_ADD("crtc", MC6845, 750000, mc6845_intf) /* ? MHz */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( murogem )
diff --git a/src/mame/drivers/murogmbl.c b/src/mame/drivers/murogmbl.c
index 5cdeb83a414..29ee0effc77 100644
--- a/src/mame/drivers/murogmbl.c
+++ b/src/mame/drivers/murogmbl.c
@@ -166,7 +166,7 @@ static GFXDECODE_START( murogmbl )
GFXDECODE_ENTRY( "gfx1", 0, layout8x8x2, 0x0, 1 )
GFXDECODE_END
-static MACHINE_DRIVER_START( murogmbl )
+static MACHINE_CONFIG_START( murogmbl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 1000000) /* Z80? */
MDRV_CPU_PROGRAM_MAP(murogmbl_map)
@@ -191,7 +191,7 @@ static MACHINE_DRIVER_START( murogmbl )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("dac1", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mustache.c b/src/mame/drivers/mustache.c
index afc0cc7265e..071a69d7aaf 100644
--- a/src/mame/drivers/mustache.c
+++ b/src/mame/drivers/mustache.c
@@ -195,7 +195,7 @@ static INTERRUPT_GEN( assert_irq )
*/
}
-static MACHINE_DRIVER_START( mustache )
+static MACHINE_CONFIG_START( mustache, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -228,7 +228,7 @@ static MACHINE_DRIVER_START( mustache )
MDRV_SOUND_CONFIG(t5182_ym2151_interface)
MDRV_SOUND_ROUTE(0, "mono", 1.0)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( mustache )
ROM_REGION( 0x20000, "maincpu", 0 )
diff --git a/src/mame/drivers/mw8080bw.c b/src/mame/drivers/mw8080bw.c
index 573d970b2e6..5fb3e4b0d8e 100644
--- a/src/mame/drivers/mw8080bw.c
+++ b/src/mame/drivers/mw8080bw.c
@@ -222,10 +222,7 @@ ADDRESS_MAP_END
*
*************************************/
-MACHINE_DRIVER_START( mw8080bw_root )
-
- /* driver data */
- MDRV_DRIVER_DATA(mw8080bw_state)
+MACHINE_CONFIG_START( mw8080bw_root, mw8080bw_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",I8080,MW8080BW_CPU_CLOCK)
@@ -240,7 +237,7 @@ MACHINE_DRIVER_START( mw8080bw_root )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(MW8080BW_PIXEL_CLOCK, MW8080BW_HTOTAL, MW8080BW_HBEND, MW8080BW_HPIXCOUNT, MW8080BW_VTOTAL, MW8080BW_VBEND, MW8080BW_VBSTART)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -404,10 +401,9 @@ static INPUT_PORTS_START( seawolf )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( seawolf )
+static MACHINE_CONFIG_DERIVED( seawolf, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(seawolf_io_map)
/* there is no watchdog */
@@ -416,9 +412,9 @@ static MACHINE_DRIVER_START( seawolf )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(seawolf_audio)
+ MDRV_FRAGMENT_ADD(seawolf_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -506,10 +502,9 @@ static INPUT_PORTS_START( gunfight )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( gunfight )
+static MACHINE_CONFIG_DERIVED( gunfight, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(gunfight_io_map)
/* there is no watchdog */
@@ -518,9 +513,9 @@ static MACHINE_DRIVER_START( gunfight )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(gunfight_audio)
+ MDRV_FRAGMENT_ADD(gunfight_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -737,10 +732,9 @@ static INPUT_PORTS_START( tornbase )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( tornbase)
+static MACHINE_CONFIG_DERIVED( tornbase, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(tornbase_io_map)
/* there is no watchdog */
@@ -749,9 +743,9 @@ static MACHINE_DRIVER_START( tornbase)
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(tornbase_audio)
+ MDRV_FRAGMENT_ADD(tornbase_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -853,10 +847,9 @@ static INPUT_PORTS_START( lagunar )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( zzzap )
+static MACHINE_CONFIG_DERIVED( zzzap, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(zzzap_io_map)
MDRV_WATCHDOG_TIME_INIT(NSEC(PERIOD_OF_555_MONOSTABLE_NSEC(RES_M(1), CAP_U(1)))) /* 1.1s */
@@ -865,9 +858,9 @@ static MACHINE_DRIVER_START( zzzap )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- /* MDRV_IMPORT_FROM(zzzap_audio) */
+ /* MDRV_FRAGMENT_ADD(zzzap_audio) */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -967,19 +960,18 @@ static INPUT_PORTS_START( maze )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( maze )
+static MACHINE_CONFIG_DERIVED( maze, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(maze_io_map)
MDRV_MACHINE_START(maze)
MDRV_WATCHDOG_TIME_INIT(NSEC(PERIOD_OF_555_MONOSTABLE_NSEC(RES_K(270), CAP_U(10)))) /* 2.97s */
/* audio hardware */
- MDRV_IMPORT_FROM(maze_audio)
+ MDRV_FRAGMENT_ADD(maze_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1060,10 +1052,9 @@ static INPUT_PORTS_START( boothill )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( boothill )
+static MACHINE_CONFIG_DERIVED( boothill, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(boothill_io_map)
MDRV_MACHINE_START(boothill)
@@ -1073,9 +1064,9 @@ static MACHINE_DRIVER_START( boothill )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(boothill_audio)
+ MDRV_FRAGMENT_ADD(boothill_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1168,18 +1159,17 @@ static INPUT_PORTS_START( checkmat )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( checkmat )
+static MACHINE_CONFIG_DERIVED( checkmat, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(checkmat_io_map)
MDRV_WATCHDOG_TIME_INIT(NSEC(PERIOD_OF_555_MONOSTABLE_NSEC(RES_K(270), CAP_U(10)))) /* 2.97s */
/* audio hardware */
- MDRV_IMPORT_FROM(checkmat_audio)
+ MDRV_FRAGMENT_ADD(checkmat_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1298,10 +1288,9 @@ static INPUT_PORTS_START( desertgu )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( desertgu )
+static MACHINE_CONFIG_DERIVED( desertgu, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(desertgu_io_map)
MDRV_MACHINE_START(desertgu)
@@ -1311,9 +1300,9 @@ static MACHINE_DRIVER_START( desertgu )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(desertgu_audio)
+ MDRV_FRAGMENT_ADD(desertgu_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1499,10 +1488,9 @@ static INPUT_PORTS_START( einning )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( dplay )
+static MACHINE_CONFIG_DERIVED( dplay, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(dplay_io_map)
MDRV_WATCHDOG_TIME_INIT(USEC(255000000 / (MW8080BW_PIXEL_CLOCK / MW8080BW_HTOTAL / MW8080BW_VTOTAL)))
@@ -1511,9 +1499,9 @@ static MACHINE_DRIVER_START( dplay )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(dplay_audio)
+ MDRV_FRAGMENT_ADD(dplay_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1595,10 +1583,9 @@ static INPUT_PORTS_START( gmissile )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( gmissile )
+static MACHINE_CONFIG_DERIVED( gmissile, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(gmissile_io_map)
MDRV_MACHINE_START(gmissile)
@@ -1608,9 +1595,9 @@ static MACHINE_DRIVER_START( gmissile )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(gmissile_audio)
+ MDRV_FRAGMENT_ADD(gmissile_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1690,10 +1677,9 @@ static INPUT_PORTS_START( m4 )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( m4 )
+static MACHINE_CONFIG_DERIVED( m4, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(m4_io_map)
MDRV_MACHINE_START(m4)
@@ -1703,9 +1689,9 @@ static MACHINE_DRIVER_START( m4 )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(m4_audio)
+ MDRV_FRAGMENT_ADD(m4_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1861,10 +1847,9 @@ static INPUT_PORTS_START( clowns1 )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( clowns )
+static MACHINE_CONFIG_DERIVED( clowns, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(clowns_io_map)
MDRV_MACHINE_START(clowns)
@@ -1874,9 +1859,9 @@ static MACHINE_DRIVER_START( clowns )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(clowns_audio)
+ MDRV_FRAGMENT_ADD(clowns_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1956,10 +1941,9 @@ static INPUT_PORTS_START( spacwalk )
PORT_ADJUSTER( 40, "R507 - Music Volume" )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( spacwalk )
+static MACHINE_CONFIG_DERIVED( spacwalk, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(spacwalk_io_map)
MDRV_MACHINE_START(clowns)
@@ -1969,9 +1953,9 @@ static MACHINE_DRIVER_START( spacwalk )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(spacwalk_audio)
+ MDRV_FRAGMENT_ADD(spacwalk_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2038,10 +2022,9 @@ static INPUT_PORTS_START( shuffle )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( shuffle )
+static MACHINE_CONFIG_DERIVED( shuffle, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(shuffle_io_map)
MDRV_WATCHDOG_TIME_INIT(USEC(255000000 / (MW8080BW_PIXEL_CLOCK / MW8080BW_HTOTAL / MW8080BW_VTOTAL)))
@@ -2050,9 +2033,9 @@ static MACHINE_DRIVER_START( shuffle )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(shuffle_audio)
+ MDRV_FRAGMENT_ADD(shuffle_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2124,10 +2107,9 @@ static INPUT_PORTS_START( dogpatch )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( dogpatch )
+static MACHINE_CONFIG_DERIVED( dogpatch, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(dogpatch_io_map)
/* the watch dog time is unknown, but all other */
@@ -2138,9 +2120,9 @@ static MACHINE_DRIVER_START( dogpatch )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(dogpatch_audio)
+ MDRV_FRAGMENT_ADD(dogpatch_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2290,10 +2272,9 @@ static INPUT_PORTS_START( spcenctr )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( spcenctr )
+static MACHINE_CONFIG_DERIVED( spcenctr, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(spcenctr_io_map)
MDRV_MACHINE_START(spcenctr)
@@ -2311,9 +2292,9 @@ static MACHINE_DRIVER_START( spcenctr )
MDRV_VIDEO_UPDATE(spcenctr)
/* audio hardware */
- MDRV_IMPORT_FROM(spcenctr_audio)
+ MDRV_FRAGMENT_ADD(spcenctr_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2386,10 +2367,9 @@ static INPUT_PORTS_START( phantom2 )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( phantom2 )
+static MACHINE_CONFIG_DERIVED( phantom2, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(phantom2_io_map)
MDRV_MACHINE_START(phantom2)
@@ -2403,9 +2383,9 @@ static MACHINE_DRIVER_START( phantom2 )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(phantom2_audio)
+ MDRV_FRAGMENT_ADD(phantom2_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2526,10 +2506,9 @@ static INPUT_PORTS_START( bowler )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( bowler )
+static MACHINE_CONFIG_DERIVED( bowler, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(bowler_io_map)
MDRV_WATCHDOG_TIME_INIT(USEC(255000000 / (MW8080BW_PIXEL_CLOCK / MW8080BW_HTOTAL / MW8080BW_VTOTAL)))
@@ -2538,9 +2517,9 @@ static MACHINE_DRIVER_START( bowler )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(bowler_audio)
+ MDRV_FRAGMENT_ADD(bowler_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2743,10 +2722,9 @@ static INPUT_PORTS_START( invaders )
INPUT_PORTS_END
-MACHINE_DRIVER_START( invaders )
+MACHINE_CONFIG_DERIVED( invaders, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(invaders_io_map)
MDRV_MACHINE_START(invaders)
@@ -2759,9 +2737,9 @@ MACHINE_DRIVER_START( invaders )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(invaders_audio)
+ MDRV_FRAGMENT_ADD(invaders_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2826,10 +2804,9 @@ static INPUT_PORTS_START( blueshrk )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( blueshrk )
+static MACHINE_CONFIG_DERIVED( blueshrk, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(blueshrk_io_map)
MDRV_WATCHDOG_TIME_INIT(USEC(255000000 / (MW8080BW_PIXEL_CLOCK / MW8080BW_HTOTAL / MW8080BW_VTOTAL)))
@@ -2838,9 +2815,9 @@ static MACHINE_DRIVER_START( blueshrk )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(blueshrk_audio)
+ MDRV_FRAGMENT_ADD(blueshrk_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2927,10 +2904,9 @@ static INPUT_PORTS_START( invad2ct )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( invad2ct )
+static MACHINE_CONFIG_DERIVED( invad2ct, mw8080bw_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mw8080bw_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(invad2ct_io_map)
MDRV_WATCHDOG_TIME_INIT(USEC(255000000 / (MW8080BW_PIXEL_CLOCK / MW8080BW_HTOTAL / MW8080BW_VTOTAL)))
@@ -2939,9 +2915,9 @@ static MACHINE_DRIVER_START( invad2ct )
MDRV_MB14241_ADD("mb14241")
/* audio hardware */
- MDRV_IMPORT_FROM(invad2ct_audio)
+ MDRV_FRAGMENT_ADD(invad2ct_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mwarr.c b/src/mame/drivers/mwarr.c
index 94333cf4373..7ef53232b4f 100644
--- a/src/mame/drivers/mwarr.c
+++ b/src/mame/drivers/mwarr.c
@@ -534,10 +534,7 @@ static MACHINE_RESET( mwarr )
state->which = 0;
}
-static MACHINE_DRIVER_START( mwarr )
-
- /* driver data */
- MDRV_DRIVER_DATA(mwarr_state)
+static MACHINE_CONFIG_START( mwarr, mwarr_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK)
@@ -569,7 +566,7 @@ static MACHINE_DRIVER_START( mwarr )
MDRV_OKIM6295_ADD("oki2", SOUND_CLOCK/48 , OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/mystston.c b/src/mame/drivers/mystston.c
index c2f75cb483b..2f4e98ac1cc 100644
--- a/src/mame/drivers/mystston.c
+++ b/src/mame/drivers/mystston.c
@@ -201,16 +201,14 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( mystston )
-
- MDRV_DRIVER_DATA(mystston_state)
+static MACHINE_CONFIG_START( mystston, mystston_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(main_map)
/* video hardware */
- MDRV_IMPORT_FROM(mystston_video)
+ MDRV_FRAGMENT_ADD(mystston_video)
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -220,7 +218,7 @@ static MACHINE_DRIVER_START( mystston )
MDRV_SOUND_ADD("ay2", AY8910, AY8910_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mystwarr.c b/src/mame/drivers/mystwarr.c
index a1ca23238c4..365240149a8 100644
--- a/src/mame/drivers/mystwarr.c
+++ b/src/mame/drivers/mystwarr.c
@@ -957,7 +957,7 @@ static MACHINE_RESET(gaiapols)
for (i=5; i<=7; i++) k054539_set_gain(k054539_1, i, 2.0);
}
-static MACHINE_DRIVER_START( mystwarr )
+static MACHINE_CONFIG_START( mystwarr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz (confirmed) */
@@ -1003,10 +1003,9 @@ static MACHINE_DRIVER_START( mystwarr )
MDRV_SOUND_CONFIG(k054539_config)
MDRV_SOUND_ROUTE(0, "rspeaker", 1.0) /* stereo channels are inverted */
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( viostorm )
- MDRV_IMPORT_FROM(mystwarr)
+static MACHINE_CONFIG_DERIVED( viostorm, mystwarr )
MDRV_MACHINE_RESET(viostorm)
@@ -1023,10 +1022,9 @@ static MACHINE_DRIVER_START( viostorm )
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(900))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(40, 40+384-1, 16, 16+224-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( metamrph )
- MDRV_IMPORT_FROM(mystwarr)
+static MACHINE_CONFIG_DERIVED( metamrph, mystwarr )
MDRV_MACHINE_RESET(metamrph)
@@ -1043,10 +1041,9 @@ static MACHINE_DRIVER_START( metamrph )
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(900))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(24, 24+288-1, 17, 17+224-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dadandrn )
- MDRV_IMPORT_FROM(mystwarr)
+static MACHINE_CONFIG_DERIVED( dadandrn, mystwarr )
MDRV_MACHINE_RESET(dadandrn)
@@ -1065,10 +1062,9 @@ static MACHINE_DRIVER_START( dadandrn )
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(24, 24+288-1, 17, 17+224-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gaiapols )
- MDRV_IMPORT_FROM(mystwarr)
+static MACHINE_CONFIG_DERIVED( gaiapols, mystwarr )
MDRV_MACHINE_RESET(gaiapols)
@@ -1091,10 +1087,9 @@ static MACHINE_DRIVER_START( gaiapols )
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(40, 40+376-1, 16, 16+224-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( martchmp )
- MDRV_IMPORT_FROM(mystwarr)
+static MACHINE_CONFIG_DERIVED( martchmp, mystwarr )
MDRV_MACHINE_RESET(martchmp)
@@ -1113,7 +1108,7 @@ static MACHINE_DRIVER_START( martchmp )
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(32, 32+384-1, 16, 16+224-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**********************************************************************************/
diff --git a/src/mame/drivers/n8080.c b/src/mame/drivers/n8080.c
index 27b633db553..ad4f5182298 100644
--- a/src/mame/drivers/n8080.c
+++ b/src/mame/drivers/n8080.c
@@ -506,10 +506,7 @@ static MACHINE_RESET( helifire )
}
-static MACHINE_DRIVER_START( spacefev )
-
- /* driver data */
- MDRV_DRIVER_DATA(n8080_state)
+static MACHINE_CONFIG_START( spacefev, n8080_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, MASTER_CLOCK / 10)
@@ -536,14 +533,11 @@ static MACHINE_DRIVER_START( spacefev )
MDRV_TIMER_ADD_SCANLINE("rst2", rst2_tick, "screen", 240, 256)
/* sound hardware */
- MDRV_IMPORT_FROM( spacefev_sound )
-MACHINE_DRIVER_END
-
+ MDRV_FRAGMENT_ADD( spacefev_sound )
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sheriff )
- /* driver data */
- MDRV_DRIVER_DATA(n8080_state)
+static MACHINE_CONFIG_START( sheriff, n8080_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, MASTER_CLOCK / 10)
@@ -570,14 +564,11 @@ static MACHINE_DRIVER_START( sheriff )
MDRV_TIMER_ADD_SCANLINE("rst2", rst2_tick, "screen", 240, 256)
/* sound hardware */
- MDRV_IMPORT_FROM( sheriff_sound )
-MACHINE_DRIVER_END
-
+ MDRV_FRAGMENT_ADD( sheriff_sound )
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( helifire )
- /* driver data */
- MDRV_DRIVER_DATA(n8080_state)
+static MACHINE_CONFIG_START( helifire, n8080_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, MASTER_CLOCK / 10)
@@ -605,8 +596,8 @@ static MACHINE_DRIVER_START( helifire )
MDRV_TIMER_ADD_SCANLINE("rst2", rst2_tick, "screen", 240, 256)
/* sound hardware */
- MDRV_IMPORT_FROM( helifire_sound )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( helifire_sound )
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/namcofl.c b/src/mame/drivers/namcofl.c
index f57ec24813b..3bae9d7c672 100644
--- a/src/mame/drivers/namcofl.c
+++ b/src/mame/drivers/namcofl.c
@@ -590,7 +590,7 @@ static MACHINE_RESET( namcofl )
}
-static MACHINE_DRIVER_START( namcofl )
+static MACHINE_CONFIG_START( namcofl, driver_data_t )
MDRV_CPU_ADD("maincpu", I960, 20000000) // i80960KA-20 == 20 MHz part
MDRV_CPU_PROGRAM_MAP(namcofl_mem)
@@ -622,7 +622,7 @@ static MACHINE_DRIVER_START( namcofl )
MDRV_SOUND_ROUTE(1, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.00)
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( speedrcr )
ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program
diff --git a/src/mame/drivers/namcona1.c b/src/mame/drivers/namcona1.c
index 05fe866f1fd..57d8f334d29 100644
--- a/src/mame/drivers/namcona1.c
+++ b/src/mame/drivers/namcona1.c
@@ -1004,7 +1004,7 @@ static const c140_interface C140_interface_typeA =
};
/* cropped at sides */
-static MACHINE_DRIVER_START( namcona1 )
+static MACHINE_CONFIG_START( namcona1, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 50113000/4)
MDRV_CPU_PROGRAM_MAP(namcona1_main_map)
@@ -1042,29 +1042,27 @@ static MACHINE_DRIVER_START( namcona1 )
MDRV_SOUND_CONFIG(C140_interface_typeA)
MDRV_SOUND_ROUTE(0, "rspeaker", 1.00)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* full-width */
-static MACHINE_DRIVER_START( namcona1w )
+static MACHINE_CONFIG_DERIVED( namcona1w, namcona1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(namcona1)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 38*8-1-0, 4*8, 32*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( namcona2 )
+static MACHINE_CONFIG_DERIVED( namcona2, namcona1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(namcona1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(namcona2_main_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static void init_namcona1( running_machine *machine, int gametype )
diff --git a/src/mame/drivers/namconb1.c b/src/mame/drivers/namconb1.c
index ae4ffb1a774..046777f9daa 100644
--- a/src/mame/drivers/namconb1.c
+++ b/src/mame/drivers/namconb1.c
@@ -1011,7 +1011,7 @@ ADDRESS_MAP_END
#define MASTER_CLOCK_HZ 48384000
-static MACHINE_DRIVER_START( namconb1 )
+static MACHINE_CONFIG_START( namconb1, driver_data_t )
MDRV_CPU_ADD("maincpu", M68EC020,MASTER_CLOCK_HZ/2)
MDRV_CPU_PROGRAM_MAP(namconb1_am)
MDRV_CPU_VBLANK_INT("screen", namconb1_interrupt)
@@ -1042,9 +1042,9 @@ static MACHINE_DRIVER_START( namconb1 )
MDRV_SOUND_ROUTE(1, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.00)
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( namconb2 )
+static MACHINE_CONFIG_START( namconb2, driver_data_t )
MDRV_CPU_ADD("maincpu", M68EC020,MASTER_CLOCK_HZ/2)
MDRV_CPU_PROGRAM_MAP(namconb2_am)
MDRV_CPU_VBLANK_INT("screen", namconb2_interrupt)
@@ -1075,7 +1075,7 @@ static MACHINE_DRIVER_START( namconb2 )
MDRV_SOUND_ROUTE(1, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.00)
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************/
diff --git a/src/mame/drivers/namcond1.c b/src/mame/drivers/namcond1.c
index 8a4cbd460d3..8146fdc98a5 100644
--- a/src/mame/drivers/namcond1.c
+++ b/src/mame/drivers/namcond1.c
@@ -281,7 +281,7 @@ static INTERRUPT_GEN( mcu_interrupt )
- The level 1 interrupt to the 68k has been measured at 60Hz.
*******************************************/
-static MACHINE_DRIVER_START( namcond1 )
+static MACHINE_CONFIG_START( namcond1, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12288000)
@@ -329,7 +329,7 @@ static MACHINE_DRIVER_START( namcond1 )
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
MDRV_AT28C16_ADD( "at28c16", NULL )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ncv1 )
ROM_REGION( 0x100000,"maincpu", 0 ) /* 16MB for Main CPU */
diff --git a/src/mame/drivers/namcops2.c b/src/mame/drivers/namcops2.c
index 389fe5f4792..cd34239302b 100644
--- a/src/mame/drivers/namcops2.c
+++ b/src/mame/drivers/namcops2.c
@@ -47,7 +47,7 @@ static const mips3_config r5000_config =
16384 /* data cache size */
};
-static MACHINE_DRIVER_START( system246 )
+static MACHINE_CONFIG_START( system246, driver_data_t )
MDRV_CPU_ADD("maincpu", R5000LE, 294000000) // actually R5900 @ 294 MHz
MDRV_CPU_PROGRAM_MAP(ps2_map)
MDRV_CPU_CONFIG(r5000_config)
@@ -63,11 +63,10 @@ static MACHINE_DRIVER_START( system246 )
MDRV_VIDEO_START(system246)
MDRV_VIDEO_UPDATE(system246)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system256 )
- MDRV_IMPORT_FROM( system246 )
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( system256, system246 )
+MACHINE_CONFIG_END
#define SYSTEM246_BIOS \
ROM_LOAD( "r27v1602f.7d", 0x000000, 0x200000, CRC(2b2e41a2) SHA1(f0a74bbcaf801f3fd0b7002ebd0118564aae3528) )
diff --git a/src/mame/drivers/namcos1.c b/src/mame/drivers/namcos1.c
index 3ebc08e181f..a26f7edcc96 100644
--- a/src/mame/drivers/namcos1.c
+++ b/src/mame/drivers/namcos1.c
@@ -1077,7 +1077,7 @@ static const namco_interface namco_config =
LPF info : Fco = 3.3KHz , g = -12dB/oct
*/
-static MACHINE_DRIVER_START( ns1 )
+static MACHINE_CONFIG_START( ns1, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809,49152000/32)
@@ -1136,7 +1136,7 @@ static MACHINE_DRIVER_START( ns1 )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/namcos10.c b/src/mame/drivers/namcos10.c
index 3e22a596b08..e3ee4445173 100644
--- a/src/mame/drivers/namcos10.c
+++ b/src/mame/drivers/namcos10.c
@@ -375,7 +375,7 @@ static MACHINE_RESET( namcos10 )
psx_machine_init(machine);
}
-static MACHINE_DRIVER_START( namcos10 )
+static MACHINE_CONFIG_START( namcos10, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PSXCPU, XTAL_101_4912MHz )
MDRV_CPU_PROGRAM_MAP( namcos10_map)
@@ -399,7 +399,7 @@ static MACHINE_DRIVER_START( namcos10 )
/* sound hardware */
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( namcos10 )
/* IN 0 */
diff --git a/src/mame/drivers/namcos11.c b/src/mame/drivers/namcos11.c
index 710a3c8bfba..50cd3116999 100644
--- a/src/mame/drivers/namcos11.c
+++ b/src/mame/drivers/namcos11.c
@@ -953,7 +953,7 @@ static MACHINE_RESET( namcos11 )
psx_machine_init(machine);
}
-static MACHINE_DRIVER_START( coh100 )
+static MACHINE_CONFIG_START( coh100, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PSXCPU, XTAL_67_7376MHz )
MDRV_CPU_PROGRAM_MAP( namcos11_map)
@@ -988,15 +988,14 @@ static MACHINE_DRIVER_START( coh100 )
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
MDRV_AT28C16_ADD( "at28c16", NULL )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( coh110 )
- MDRV_IMPORT_FROM( coh100 )
+static MACHINE_CONFIG_DERIVED( coh110, coh100 )
MDRV_VIDEO_START( psx_type2 )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE( 30 )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( namcos11 )
PORT_START( "SWITCH" )
diff --git a/src/mame/drivers/namcos12.c b/src/mame/drivers/namcos12.c
index 88876509c0d..4645aa2c018 100644
--- a/src/mame/drivers/namcos12.c
+++ b/src/mame/drivers/namcos12.c
@@ -1511,7 +1511,7 @@ static DRIVER_INIT( ghlpanic )
system11gun_install(machine);
}
-static MACHINE_DRIVER_START( coh700 )
+static MACHINE_CONFIG_START( coh700, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", CXD8661R, XTAL_100MHz )
MDRV_CPU_PROGRAM_MAP( namcos12_map)
@@ -1548,7 +1548,7 @@ static MACHINE_DRIVER_START( coh700 )
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
MDRV_AT28C16_ADD( "at28c16", NULL )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( namcos12 )
PORT_START("DSW")
diff --git a/src/mame/drivers/namcos2.c b/src/mame/drivers/namcos2.c
index 749f3f94c56..6dba8c552d9 100644
--- a/src/mame/drivers/namcos2.c
+++ b/src/mame/drivers/namcos2.c
@@ -1605,7 +1605,7 @@ via software as INT1
/* */
/*************************************************************/
-static MACHINE_DRIVER_START( default )
+static MACHINE_CONFIG_START( default, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */
MDRV_CPU_PROGRAM_MAP(master_default_am)
MDRV_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
@@ -1653,27 +1653,24 @@ static MACHINE_DRIVER_START( default )
MDRV_SOUND_ADD("ymsnd", YM2151, YM2151_SOUND_CLOCK) /* 3.579545MHz */
MDRV_SOUND_ROUTE(0, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* adjusted machine driver start */
-static MACHINE_DRIVER_START( default2 )
- MDRV_IMPORT_FROM(default)
+static MACHINE_CONFIG_DERIVED( default2, default )
MDRV_SOUND_REPLACE("c140", C140, C140_SOUND_CLOCK) /* 21.333kHz */
MDRV_SOUND_CONFIG(c140_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* end */
-static MACHINE_DRIVER_START( assaultp )
- MDRV_IMPORT_FROM(default2)
+static MACHINE_CONFIG_DERIVED( assaultp, default2 )
MDRV_QUANTUM_TIME(HZ(12000*8)) /* CPU slices per frame - boosted (along with MCU speed) so that the Mode Select works */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( default3 )
- MDRV_IMPORT_FROM(default)
+static MACHINE_CONFIG_DERIVED( default3, default )
MDRV_SOUND_REPLACE("c140", C140, C140_SOUND_CLOCK) /* 21.333kHz */
MDRV_SOUND_CONFIG(c140_config)
@@ -1683,9 +1680,9 @@ static MACHINE_DRIVER_START( default3 )
MDRV_SOUND_REPLACE("ymsnd", YM2151, YM2151_SOUND_CLOCK) /* 3.579545MHz */
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gollygho )
+static MACHINE_CONFIG_START( gollygho, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */
MDRV_CPU_PROGRAM_MAP(master_default_am)
MDRV_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
@@ -1733,9 +1730,9 @@ static MACHINE_DRIVER_START( gollygho )
MDRV_SOUND_ADD("ymsnd", YM2151, YM2151_SOUND_CLOCK) /* 3.579545MHz */
MDRV_SOUND_ROUTE(0, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( finallap )
+static MACHINE_CONFIG_START( finallap, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */
MDRV_CPU_PROGRAM_MAP(master_finallap_am)
MDRV_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
@@ -1783,9 +1780,9 @@ static MACHINE_DRIVER_START( finallap )
MDRV_SOUND_ADD("ymsnd", YM2151, YM2151_SOUND_CLOCK) /* 3.579545MHz */
MDRV_SOUND_ROUTE(0, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sgunner )
+static MACHINE_CONFIG_START( sgunner, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */
MDRV_CPU_PROGRAM_MAP(master_sgunner_am)
MDRV_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
@@ -1833,9 +1830,9 @@ static MACHINE_DRIVER_START( sgunner )
MDRV_SOUND_ADD("ymsnd", YM2151, YM2151_SOUND_CLOCK) /* 3.579545MHz */
MDRV_SOUND_ROUTE(0, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( luckywld )
+static MACHINE_CONFIG_START( luckywld, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */
MDRV_CPU_PROGRAM_MAP(master_luckywld_am)
MDRV_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
@@ -1883,9 +1880,9 @@ static MACHINE_DRIVER_START( luckywld )
MDRV_SOUND_ADD("ymsnd", YM2151, YM2151_SOUND_CLOCK) /* 3.579545MHz */
MDRV_SOUND_ROUTE(0, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( metlhawk )
+static MACHINE_CONFIG_START( metlhawk, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */
MDRV_CPU_PROGRAM_MAP(master_metlhawk_am)
MDRV_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
@@ -1933,7 +1930,7 @@ static MACHINE_DRIVER_START( metlhawk )
MDRV_SOUND_ADD("ymsnd", YM2151, YM2151_SOUND_CLOCK) /* 3.579545MHz */
MDRV_SOUND_ROUTE(0, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************************************/
diff --git a/src/mame/drivers/namcos21.c b/src/mame/drivers/namcos21.c
index 931396496cf..b9c0658e629 100644
--- a/src/mame/drivers/namcos21.c
+++ b/src/mame/drivers/namcos21.c
@@ -1522,7 +1522,7 @@ static const c140_interface C140_interface_typeB =
C140_TYPE_SYSTEM21_B
};
-static MACHINE_DRIVER_START( s21base )
+static MACHINE_CONFIG_START( s21base, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000,12288000) /* Master */
MDRV_CPU_PROGRAM_MAP(namcos21_68k_master)
MDRV_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
@@ -1569,10 +1569,9 @@ static MACHINE_DRIVER_START( s21base )
MDRV_VIDEO_START(namcos21)
MDRV_VIDEO_UPDATE(namcos21)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( poly_c140_typeA )
- MDRV_IMPORT_FROM(s21base)
+static MACHINE_CONFIG_DERIVED( poly_c140_typeA, s21base )
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
@@ -1584,10 +1583,9 @@ static MACHINE_DRIVER_START( poly_c140_typeA )
MDRV_SOUND_ADD("ymsnd", YM2151, 3579580)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.30)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( poly_c140_typeB )
- MDRV_IMPORT_FROM(s21base)
+static MACHINE_CONFIG_DERIVED( poly_c140_typeB, s21base )
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
@@ -1599,9 +1597,9 @@ static MACHINE_DRIVER_START( poly_c140_typeB )
MDRV_SOUND_ADD("ymsnd", YM2151, 3579580)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.30)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( driveyes )
+static MACHINE_CONFIG_START( driveyes, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000,12288000) /* Master */
MDRV_CPU_PROGRAM_MAP(driveyes_68k_master)
MDRV_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
@@ -1654,9 +1652,9 @@ static MACHINE_DRIVER_START( driveyes )
MDRV_SOUND_ADD("ymsnd", YM2151, 3579580)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.30)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( winrun_c140_typeB )
+static MACHINE_CONFIG_START( winrun_c140_typeB, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000,12288000) /* Master */
MDRV_CPU_PROGRAM_MAP(am_master_winrun)
MDRV_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
@@ -1712,7 +1710,7 @@ static MACHINE_DRIVER_START( winrun_c140_typeB )
MDRV_SOUND_ADD("ymsnd", YM2151, 3579580)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.30)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( aircomb )
ROM_REGION( 0x100000, "maincpu", 0 ) /* Master */
diff --git a/src/mame/drivers/namcos22.c b/src/mame/drivers/namcos22.c
index b7e37cd24ae..dcad5c8c556 100644
--- a/src/mame/drivers/namcos22.c
+++ b/src/mame/drivers/namcos22.c
@@ -2868,7 +2868,7 @@ static INTERRUPT_GEN( mcu_interrupt )
}
}
-static MACHINE_DRIVER_START( namcos22s )
+static MACHINE_CONFIG_START( namcos22s, driver_data_t )
MDRV_CPU_ADD("maincpu", M68EC020,SS22_MASTER_CLOCK/2)
MDRV_CPU_PROGRAM_MAP(namcos22s_am)
MDRV_CPU_VBLANK_INT_HACK(namcos22s_interrupt,2)
@@ -2913,7 +2913,7 @@ static MACHINE_DRIVER_START( namcos22s )
MDRV_SOUND_ROUTE(1, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.00)
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*********************************************************************************/
@@ -3284,7 +3284,7 @@ static MACHINE_RESET(namcos22)
InitDSP(machine, 0);
}
-static MACHINE_DRIVER_START( namcos22 )
+static MACHINE_CONFIG_START( namcos22, driver_data_t )
MDRV_CPU_ADD("maincpu", M68020,SS22_MASTER_CLOCK/2) /* 25 MHz? */
MDRV_CPU_PROGRAM_MAP(namcos22_am)
MDRV_CPU_VBLANK_INT_HACK(namcos22_interrupt,2)
@@ -3326,7 +3326,7 @@ static MACHINE_DRIVER_START( namcos22 )
MDRV_SOUND_ROUTE(1, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.00)
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*********************************************************************************/
diff --git a/src/mame/drivers/namcos23.c b/src/mame/drivers/namcos23.c
index 06a438a4e51..c67bcbe1043 100644
--- a/src/mame/drivers/namcos23.c
+++ b/src/mame/drivers/namcos23.c
@@ -2871,7 +2871,7 @@ static const mips3_config r4650_config =
8192 /* data cache size - VERIFIED */
};
-static MACHINE_DRIVER_START( gorgon )
+static MACHINE_CONFIG_START( gorgon, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R4650BE, S23_BUSCLOCK*4)
@@ -2916,9 +2916,9 @@ static MACHINE_DRIVER_START( gorgon )
MDRV_SOUND_ROUTE(1, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.00)
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( s23 )
+static MACHINE_CONFIG_START( s23, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R4650BE, S23_BUSCLOCK*4)
MDRV_CPU_CONFIG(r4650_config)
@@ -2962,9 +2962,9 @@ static MACHINE_DRIVER_START( s23 )
MDRV_SOUND_ROUTE(1, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.00)
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ss23 )
+static MACHINE_CONFIG_START( ss23, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R4650BE, S23_BUSCLOCK*5)
MDRV_CPU_CONFIG(r4650_config)
@@ -3004,10 +3004,9 @@ static MACHINE_DRIVER_START( ss23 )
MDRV_SOUND_ROUTE(1, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.00)
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ss23io )
- MDRV_IMPORT_FROM( ss23 )
+static MACHINE_CONFIG_DERIVED( ss23io, ss23 )
MDRV_CPU_MODIFY("audiocpu")
MDRV_CPU_IO_MAP( s23h8iomap )
@@ -3015,10 +3014,9 @@ static MACHINE_DRIVER_START( ss23io )
MDRV_CPU_ADD("ioboard", H83334, 14745600 )
MDRV_CPU_PROGRAM_MAP( s23iobrdmap )
MDRV_CPU_IO_MAP( s23iobrdiomap )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ss23e2 )
- MDRV_IMPORT_FROM( ss23 )
+static MACHINE_CONFIG_DERIVED( ss23e2, ss23 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(S23_BUSCLOCK*6)
@@ -3029,10 +3027,9 @@ static MACHINE_DRIVER_START( ss23e2 )
MDRV_CPU_ADD("ioboard", H83334, 14745600 )
MDRV_CPU_PROGRAM_MAP( s23iobrdmap )
MDRV_CPU_IO_MAP( s23iobrdiomap )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gmen )
- MDRV_IMPORT_FROM( s23 )
+static MACHINE_CONFIG_DERIVED( gmen, s23 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(S23_BUSCLOCK*5)
@@ -3042,7 +3039,7 @@ static MACHINE_DRIVER_START( gmen )
MDRV_CPU_PROGRAM_MAP(gmen_sh2_map)
MDRV_MACHINE_RESET(gmen)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( rapidrvr )
ROM_REGION32_BE( 0x400000, "user1", 0 ) /* 4 megs for main R4650 code */
diff --git a/src/mame/drivers/namcos86.c b/src/mame/drivers/namcos86.c
index 2e12a29da7e..a41255b1d65 100644
--- a/src/mame/drivers/namcos86.c
+++ b/src/mame/drivers/namcos86.c
@@ -1013,7 +1013,7 @@ static const namco_interface namco_config =
};
-static MACHINE_DRIVER_START( hopmappy )
+static MACHINE_CONFIG_START( hopmappy, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("cpu1", M6809, 49152000/32)
@@ -1059,37 +1059,34 @@ static MACHINE_DRIVER_START( hopmappy )
MDRV_SOUND_ADD("namco", NAMCO_CUS30, 49152000/2048)
MDRV_SOUND_CONFIG(namco_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( skykiddx )
+static MACHINE_CONFIG_DERIVED( skykiddx, hopmappy )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hopmappy)
MDRV_CPU_MODIFY("cpu2")
MDRV_CPU_PROGRAM_MAP(skykiddx_cpu2_map)
MDRV_CPU_MODIFY("mcu")
MDRV_CPU_PROGRAM_MAP(skykiddx_mcu_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( roishtar )
+static MACHINE_CONFIG_DERIVED( roishtar, hopmappy )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hopmappy)
MDRV_CPU_MODIFY("cpu2")
MDRV_CPU_PROGRAM_MAP(roishtar_cpu2_map)
MDRV_CPU_MODIFY("mcu")
MDRV_CPU_PROGRAM_MAP(roishtar_mcu_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( genpeitd )
+static MACHINE_CONFIG_DERIVED( genpeitd, hopmappy )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hopmappy)
MDRV_CPU_MODIFY("cpu2")
MDRV_CPU_PROGRAM_MAP(genpeitd_cpu2_map)
@@ -1099,13 +1096,12 @@ static MACHINE_DRIVER_START( genpeitd )
/* sound hardware */
MDRV_SOUND_ADD("namco2", NAMCO_63701X, 6000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rthunder )
+static MACHINE_CONFIG_DERIVED( rthunder, hopmappy )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hopmappy)
MDRV_CPU_MODIFY("cpu2")
MDRV_CPU_PROGRAM_MAP(rthunder_cpu2_map)
@@ -1115,13 +1111,12 @@ static MACHINE_DRIVER_START( rthunder )
/* sound hardware */
MDRV_SOUND_ADD("namco2", NAMCO_63701X, 6000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wndrmomo )
+static MACHINE_CONFIG_DERIVED( wndrmomo, hopmappy )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hopmappy)
MDRV_CPU_MODIFY("cpu2")
MDRV_CPU_PROGRAM_MAP(wndrmomo_cpu2_map)
@@ -1131,7 +1126,7 @@ static MACHINE_DRIVER_START( wndrmomo )
/* sound hardware */
MDRV_SOUND_ADD("namco2", NAMCO_63701X, 6000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/naomi.c b/src/mame/drivers/naomi.c
index fe9d2d6d983..94634608fda 100644
--- a/src/mame/drivers/naomi.c
+++ b/src/mame/drivers/naomi.c
@@ -1915,7 +1915,7 @@ static MACHINE_RESET( naomi )
* Common for Naomi 1, Naomi GD-Rom, Naomi 2, Atomiswave ...
*/
-static MACHINE_DRIVER_START( naomi_base )
+static MACHINE_CONFIG_START( naomi_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", SH4, CPU_CLOCK) // SH4!!!
MDRV_CPU_CONFIG(sh4cpu_config)
@@ -1951,25 +1951,23 @@ static MACHINE_DRIVER_START( naomi_base )
MDRV_SOUND_CONFIG(aica_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 2.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
* Naomi 1
*/
-static MACHINE_DRIVER_START( naomi )
- MDRV_IMPORT_FROM(naomi_base)
+static MACHINE_CONFIG_DERIVED( naomi, naomi_base )
MDRV_NAOMI_ROM_BOARD_ADD("rom_board", "user1")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
* Naomi 1 GD-Rom
*/
-static MACHINE_DRIVER_START( naomigd )
- MDRV_IMPORT_FROM(naomi_base)
+static MACHINE_CONFIG_DERIVED( naomigd, naomi_base )
MDRV_NAOMI_DIMM_BOARD_ADD("rom_board", "gdrom", "user1", "picreturn")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
* Naomi 2
@@ -1987,14 +1985,13 @@ MACHINE_DRIVER_END
* Atomiswave
*/
-static MACHINE_DRIVER_START( aw )
- MDRV_IMPORT_FROM(naomi_base)
+static MACHINE_CONFIG_DERIVED( aw, naomi_base )
// MDRV_DEVICE_REMOVE("main_eeprom")
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(aw_map)
MDRV_NVRAM_HANDLER(aw_nvram)
MDRV_AW_ROM_BOARD_ADD("rom_board", "user1")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#define ROM_LOAD16_WORD_SWAP_BIOS(bios,name,offset,length,hash) \
ROMX_LOAD(name, offset, length, hash, ROM_GROUPWORD | ROM_BIOS(bios+1)) /* Note '+1' */
diff --git a/src/mame/drivers/naughtyb.c b/src/mame/drivers/naughtyb.c
index 34dbdc861d5..616682e0668 100644
--- a/src/mame/drivers/naughtyb.c
+++ b/src/mame/drivers/naughtyb.c
@@ -433,7 +433,7 @@ static const tms36xx_interface tms3615_interface =
-static MACHINE_DRIVER_START( naughtyb )
+static MACHINE_CONFIG_START( naughtyb, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CLOCK_XTAL / 4) /* 12 MHz clock, divided by 4. CPU is a Z80A */
@@ -465,11 +465,11 @@ static MACHINE_DRIVER_START( naughtyb )
MDRV_SOUND_ADD("naughtyb", NAUGHTYB, 0)
MDRV_SOUND_ROUTE(0, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Exactly the same but for certain address writes */
-static MACHINE_DRIVER_START( popflame )
+static MACHINE_CONFIG_START( popflame, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CLOCK_XTAL / 4) /* 12 MHz clock, divided by 4. CPU is a Z80A */
@@ -500,7 +500,7 @@ static MACHINE_DRIVER_START( popflame )
MDRV_SOUND_ADD("popflame", POPFLAME, 0)
MDRV_SOUND_ROUTE(0, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nbmj8688.c b/src/mame/drivers/nbmj8688.c
index 12769d60f3e..573fa3b4cf8 100644
--- a/src/mame/drivers/nbmj8688.c
+++ b/src/mame/drivers/nbmj8688.c
@@ -2916,7 +2916,7 @@ static const ay8910_interface ay8910_config =
-static MACHINE_DRIVER_START( NBMJDRV_4096 )
+static MACHINE_CONFIG_START( NBMJDRV_4096, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5.00 MHz */
@@ -2948,26 +2948,24 @@ static MACHINE_DRIVER_START( NBMJDRV_4096 )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( NBMJDRV_256 )
+static MACHINE_CONFIG_DERIVED( NBMJDRV_256, NBMJDRV_4096 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_4096)
/* video hardware */
MDRV_PALETTE_LENGTH(256)
MDRV_PALETTE_INIT(mbmj8688_8bit)
MDRV_VIDEO_START(mbmj8688_8bit)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( NBMJDRV_65536 )
+static MACHINE_CONFIG_DERIVED( NBMJDRV_65536, NBMJDRV_4096 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_4096)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
@@ -2976,37 +2974,34 @@ static MACHINE_DRIVER_START( NBMJDRV_65536 )
MDRV_PALETTE_INIT(mbmj8688_16bit)
MDRV_VIDEO_START(mbmj8688_hybrid_16bit)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
// --------------------------------------------------------------------------------
-static MACHINE_DRIVER_START( crystalg )
+static MACHINE_CONFIG_DERIVED( crystalg, NBMJDRV_256 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_256)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(secolove_map)
MDRV_CPU_IO_MAP(crystalg_io_map)
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 96) // nmiclock = 2f
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( apparel )
+static MACHINE_CONFIG_DERIVED( apparel, NBMJDRV_256 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_256)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(secolove_map)
MDRV_CPU_IO_MAP(secolove_io_map)
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 128) // nmiclock = 60
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mbmj_h12bit )
+static MACHINE_CONFIG_DERIVED( mbmj_h12bit, NBMJDRV_4096 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_4096)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(secolove_map)
MDRV_CPU_IO_MAP(secolove_io_map)
@@ -3014,13 +3009,12 @@ static MACHINE_DRIVER_START( mbmj_h12bit )
/* video hardware */
MDRV_VIDEO_START(mbmj8688_hybrid_12bit)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*Same as h12bit HW with different sound HW + NMI enable bit*/
-static MACHINE_DRIVER_START( barline )
+static MACHINE_CONFIG_DERIVED( barline, mbmj_h12bit )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mbmj_h12bit)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(barline_io_map)
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 128) // nmiclock = 60
@@ -3029,12 +3023,11 @@ static MACHINE_DRIVER_START( barline )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
MDRV_DEVICE_REMOVE("dac")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mbmj_p16bit )
+static MACHINE_CONFIG_DERIVED( mbmj_p16bit, NBMJDRV_65536 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_65536)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(secolove_map)
MDRV_CPU_IO_MAP(secolove_io_map)
@@ -3042,10 +3035,10 @@ static MACHINE_DRIVER_START( mbmj_p16bit )
/* video hardware */
MDRV_VIDEO_START(mbmj8688_pure_16bit)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mbmj_p16bit_LCD )
+static MACHINE_CONFIG_START( mbmj_p16bit_LCD, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5.00 MHz */
@@ -3095,65 +3088,59 @@ static MACHINE_DRIVER_START( mbmj_p16bit_LCD )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( seiha )
+static MACHINE_CONFIG_DERIVED( seiha, NBMJDRV_65536 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_65536)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(secolove_map)
MDRV_CPU_IO_MAP(seiha_io_map)
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 128) // nmiclock = 60
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjgaiden )
+static MACHINE_CONFIG_DERIVED( mjgaiden, NBMJDRV_4096 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_4096)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ojousan_map)
MDRV_CPU_IO_MAP(mjgaiden_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( iemoto )
+static MACHINE_CONFIG_DERIVED( iemoto, NBMJDRV_65536 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_65536)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(secolove_map)
MDRV_CPU_IO_MAP(iemoto_io_map)
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 128) // nmiclock = 60
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ojousan )
+static MACHINE_CONFIG_DERIVED( ojousan, NBMJDRV_65536 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_65536)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ojousan_map)
MDRV_CPU_IO_MAP(iemoto_io_map)
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 128) // nmiclock = 60
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mbmj_p12bit )
+static MACHINE_CONFIG_DERIVED( mbmj_p12bit, NBMJDRV_4096 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_4096)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjsikaku_map)
MDRV_CPU_IO_MAP(kaguya_io_map)
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 128)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjsikaku )
+static MACHINE_CONFIG_DERIVED( mjsikaku, NBMJDRV_4096 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_4096)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjsikaku_map)
MDRV_CPU_IO_MAP(mjsikaku_io_map)
@@ -3162,27 +3149,25 @@ static MACHINE_DRIVER_START( mjsikaku )
/* sound hardware */
MDRV_SOUND_REPLACE("psg", YM3812, 20000000/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mmsikaku )
+static MACHINE_CONFIG_DERIVED( mmsikaku, NBMJDRV_4096 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(NBMJDRV_4096)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(secolove_map)
MDRV_CPU_IO_MAP(mmsikaku_io_map)
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 128)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( otonano )
+static MACHINE_CONFIG_DERIVED( otonano, mjsikaku )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mjsikaku)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(otonano_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nbmj8891.c b/src/mame/drivers/nbmj8891.c
index 04922625245..d58cd1bb3cc 100644
--- a/src/mame/drivers/nbmj8891.c
+++ b/src/mame/drivers/nbmj8891.c
@@ -2605,7 +2605,7 @@ static const ay8910_interface ay8910_config =
-static MACHINE_DRIVER_START( gionbana )
+static MACHINE_CONFIG_START( gionbana, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 20000000/4) /* 5.00 MHz ? */
@@ -2637,25 +2637,23 @@ static MACHINE_DRIVER_START( gionbana )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mgion )
+static MACHINE_CONFIG_DERIVED( mgion, gionbana )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gionbana)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mgion_map)
MDRV_CPU_IO_MAP(mgion_io_map)
MDRV_NVRAM_HANDLER(nb1413m3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( omotesnd )
+static MACHINE_CONFIG_DERIVED( omotesnd, gionbana )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gionbana)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(omotesnd_map)
MDRV_CPU_IO_MAP(omotesnd_io_map)
@@ -2666,14 +2664,13 @@ static MACHINE_DRIVER_START( omotesnd )
MDRV_SOUND_REPLACE("fmsnd", AY8910, 1250000)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* NBMJDRV2 */
-static MACHINE_DRIVER_START( mjcamerb )
+static MACHINE_CONFIG_DERIVED( mjcamerb, gionbana )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gionbana)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(hanamomo_io_map)
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 142) // ?
@@ -2684,12 +2681,11 @@ static MACHINE_DRIVER_START( mjcamerb )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
MDRV_VIDEO_START(nbmj8891_1layer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mmcamera )
+static MACHINE_CONFIG_DERIVED( mmcamera, gionbana )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gionbana)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(hanamomo_io_map)
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 128)
@@ -2700,12 +2696,11 @@ static MACHINE_DRIVER_START( mmcamera )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
MDRV_VIDEO_START(nbmj8891_1layer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hanamomo )
+static MACHINE_CONFIG_DERIVED( hanamomo, gionbana )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gionbana)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hanamomo_map)
MDRV_CPU_IO_MAP(hanamomo_io_map)
@@ -2715,152 +2710,138 @@ static MACHINE_DRIVER_START( hanamomo )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
MDRV_VIDEO_START(nbmj8891_1layer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( msjiken )
+static MACHINE_CONFIG_DERIVED( msjiken, hanamomo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hanamomo)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gionbana_map)
MDRV_CPU_IO_MAP(msjiken_io_map)
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 142) // nmiclock = 70
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* NBMJDRV3 */
-static MACHINE_DRIVER_START( telmahjn )
+static MACHINE_CONFIG_DERIVED( telmahjn, gionbana )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gionbana)
MDRV_CPU_MODIFY("maincpu")
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 142) // nmiclock = 70
/* video hardware */
MDRV_VIDEO_START(nbmj8891_1layer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mgmen89 )
+static MACHINE_CONFIG_DERIVED( mgmen89, telmahjn )
/* basic machine hardware */
- MDRV_IMPORT_FROM(telmahjn)
MDRV_CPU_MODIFY("maincpu")
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt, 128)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* NBMJDRV4 */
-static MACHINE_DRIVER_START( mjfocus )
+static MACHINE_CONFIG_DERIVED( mjfocus, gionbana )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gionbana)
/* video hardware */
MDRV_VIDEO_START(nbmj8891_1layer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* NBMJDRV5 */
-static MACHINE_DRIVER_START( mjnanpas )
+static MACHINE_CONFIG_DERIVED( mjnanpas, gionbana )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gionbana)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(club90s_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( maiko )
+static MACHINE_CONFIG_DERIVED( maiko, mjnanpas )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mjnanpas)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(maiko_map)
MDRV_CPU_IO_MAP(maiko_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mmaiko )
+static MACHINE_CONFIG_DERIVED( mmaiko, maiko )
/* basic machine hardware */
- MDRV_IMPORT_FROM(maiko)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mmaiko_map)
MDRV_NVRAM_HANDLER(nb1413m3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lovehous )
+static MACHINE_CONFIG_DERIVED( lovehous, mjnanpas )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mjnanpas)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(lovehous_map)
MDRV_CPU_IO_MAP(lovehous_io_map)
MDRV_NVRAM_HANDLER(nb1413m3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hanaoji )
+static MACHINE_CONFIG_DERIVED( hanaoji, maiko )
/* basic machine hardware */
- MDRV_IMPORT_FROM(maiko)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hanaoji_map)
MDRV_NVRAM_HANDLER(nb1413m3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hnxmasev )
+static MACHINE_CONFIG_DERIVED( hnxmasev, maiko )
/* basic machine hardware */
- MDRV_IMPORT_FROM(maiko)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hnxmasev_map)
MDRV_CPU_IO_MAP(maiko_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hnageman )
+static MACHINE_CONFIG_DERIVED( hnageman, maiko )
/* basic machine hardware */
- MDRV_IMPORT_FROM(maiko)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hnageman_map)
MDRV_CPU_IO_MAP(maiko_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( scandal )
+static MACHINE_CONFIG_DERIVED( scandal, hanamomo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hanamomo)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(scandalm_map)
MDRV_CPU_IO_MAP(scandal_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bananadr )
+static MACHINE_CONFIG_DERIVED( bananadr, mjnanpas )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mjnanpas)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(scandalm_map)
MDRV_CPU_IO_MAP(bananadr_io_map)
MDRV_NVRAM_HANDLER(nb1413m3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* NBMJDRV6 */
-static MACHINE_DRIVER_START( mjfocusm )
+static MACHINE_CONFIG_DERIVED( mjfocusm, gionbana )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gionbana)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(scandalm_map)
MDRV_CPU_IO_MAP(scandalm_io_map)
@@ -2877,13 +2858,12 @@ static MACHINE_DRIVER_START( mjfocusm )
MDRV_SOUND_REPLACE("fmsnd", AY8910, 1250000)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( taiwanmb )
+static MACHINE_CONFIG_DERIVED( taiwanmb, gionbana )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gionbana)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(taiwanmb_map)
MDRV_CPU_IO_MAP(taiwanmb_io_map)
@@ -2900,7 +2880,7 @@ static MACHINE_DRIVER_START( taiwanmb )
MDRV_SOUND_REPLACE("fmsnd", AY8910, 1250000)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nbmj8900.c b/src/mame/drivers/nbmj8900.c
index bbbfc6c189a..959c7ba7c24 100644
--- a/src/mame/drivers/nbmj8900.c
+++ b/src/mame/drivers/nbmj8900.c
@@ -328,7 +328,7 @@ INPUT_PORTS_END
-static MACHINE_DRIVER_START( ohpaipee )
+static MACHINE_CONFIG_START( ohpaipee, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 20000000/4) /* 5.00 MHz ? */
@@ -358,16 +358,15 @@ static MACHINE_DRIVER_START( ohpaipee )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( togenkyo )
+static MACHINE_CONFIG_DERIVED( togenkyo, ohpaipee )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ohpaipee)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(togenkyo_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nbmj8991.c b/src/mame/drivers/nbmj8991.c
index 6396ddd56d5..718dd255984 100644
--- a/src/mame/drivers/nbmj8991.c
+++ b/src/mame/drivers/nbmj8991.c
@@ -1474,7 +1474,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( nbmjdrv1 ) // galkoku
+static MACHINE_CONFIG_START( nbmjdrv1, driver_data_t ) // galkoku
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 25000000/5) /* 5.00 MHz ? */
@@ -1504,10 +1504,10 @@ static MACHINE_DRIVER_START( nbmjdrv1 ) // galkoku
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nbmjdrv2 ) // pstadium
+static MACHINE_CONFIG_START( nbmjdrv2, driver_data_t ) // pstadium
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 6000000/2) /* 3.00 MHz */
@@ -1546,176 +1546,157 @@ static MACHINE_DRIVER_START( nbmjdrv2 ) // pstadium
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nbmjdrv3 )
+static MACHINE_CONFIG_DERIVED( nbmjdrv3, nbmjdrv1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv1)
/* sound hardware */
MDRV_SOUND_REPLACE("fmsnd", AY8910, 1250000)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
// ---------------------------------------------------------------------
-static MACHINE_DRIVER_START( galkoku )
+static MACHINE_CONFIG_DERIVED( galkoku, nbmjdrv1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( galkaika )
+static MACHINE_CONFIG_DERIVED( galkaika, nbmjdrv1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(galkaika_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tokyogal )
+static MACHINE_CONFIG_DERIVED( tokyogal, nbmjdrv1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tokyogal_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tokimbsj )
+static MACHINE_CONFIG_DERIVED( tokimbsj, nbmjdrv1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(galkaika_map)
MDRV_NVRAM_HANDLER(nb1413m3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mcontest )
+static MACHINE_CONFIG_DERIVED( mcontest, nbmjdrv1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( uchuuai )
+static MACHINE_CONFIG_DERIVED( uchuuai, nbmjdrv1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hyouban )
+static MACHINE_CONFIG_DERIVED( hyouban, nbmjdrv3 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv3)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(hyouban_io_map)
MDRV_NVRAM_HANDLER(nb1413m3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pstadium )
+static MACHINE_CONFIG_DERIVED( pstadium, nbmjdrv2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( triplew1 )
+static MACHINE_CONFIG_DERIVED( triplew1, nbmjdrv2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(triplew1_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( triplew2 )
+static MACHINE_CONFIG_DERIVED( triplew2, nbmjdrv2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(triplew2_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ntopstar )
+static MACHINE_CONFIG_DERIVED( ntopstar, nbmjdrv2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjlstory )
+static MACHINE_CONFIG_DERIVED( mjlstory, nbmjdrv2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjlstory_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vanilla )
+static MACHINE_CONFIG_DERIVED( vanilla, nbmjdrv2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( finalbny )
+static MACHINE_CONFIG_DERIVED( finalbny, nbmjdrv2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv2)
MDRV_NVRAM_HANDLER(nb1413m3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qmhayaku )
+static MACHINE_CONFIG_DERIVED( qmhayaku, nbmjdrv2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjgottub )
+static MACHINE_CONFIG_DERIVED( mjgottub, nbmjdrv2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(triplew1_map)
MDRV_NVRAM_HANDLER(nb1413m3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( av2mj1bb )
+static MACHINE_CONFIG_DERIVED( av2mj1bb, nbmjdrv2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(av2mj1bb_map)
MDRV_CPU_IO_MAP(av2mj1bb_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( av2mj2rg )
+static MACHINE_CONFIG_DERIVED( av2mj2rg, nbmjdrv2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nbmjdrv2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(av2mj2rg_map)
MDRV_CPU_IO_MAP(av2mj1bb_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nbmj9195.c b/src/mame/drivers/nbmj9195.c
index aa1e96116eb..f69c9fe3b4c 100644
--- a/src/mame/drivers/nbmj9195.c
+++ b/src/mame/drivers/nbmj9195.c
@@ -2911,7 +2911,7 @@ static const z80_daisy_config daisy_chain_sound[] =
};
-static MACHINE_DRIVER_START( NBMJDRV1 )
+static MACHINE_CONFIG_START( NBMJDRV1, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 12000000/2) /* TMPZ84C011, 6.00 MHz */
@@ -2955,296 +2955,267 @@ static MACHINE_DRIVER_START( NBMJDRV1 )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( NBMJDRV2 )
+static MACHINE_CONFIG_DERIVED( NBMJDRV2, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
/* video hardware */
MDRV_VIDEO_START(nbmj9195_1layer)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( NBMJDRV3 )
+static MACHINE_CONFIG_DERIVED( NBMJDRV3, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
/* video hardware */
MDRV_PALETTE_LENGTH(512)
MDRV_VIDEO_START(nbmj9195_nb22090)
MDRV_VIDEO_UPDATE(nbmj9195)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
//-------------------------------------------------------------------------
-static MACHINE_DRIVER_START( mjuraden )
+static MACHINE_CONFIG_DERIVED( mjuraden, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjuraden_map)
MDRV_CPU_IO_MAP(mjuraden_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( koinomp )
+static MACHINE_CONFIG_DERIVED( koinomp, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(koinomp_map)
MDRV_CPU_IO_MAP(koinomp_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( patimono )
+static MACHINE_CONFIG_DERIVED( patimono, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(patimono_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( janbari )
+static MACHINE_CONFIG_DERIVED( janbari, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(patimono_io_map)
MDRV_NVRAM_HANDLER(nbmj9195)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mmehyou )
+static MACHINE_CONFIG_DERIVED( mmehyou, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(koinomp_map)
MDRV_CPU_IO_MAP(mmehyou_io_map)
MDRV_NVRAM_HANDLER(nbmj9195)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ultramhm )
+static MACHINE_CONFIG_DERIVED( ultramhm, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(koinomp_map)
MDRV_CPU_IO_MAP(koinomp_io_map)
MDRV_NVRAM_HANDLER(nbmj9195)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gal10ren )
+static MACHINE_CONFIG_DERIVED( gal10ren, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(gal10ren_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( renaiclb )
+static MACHINE_CONFIG_DERIVED( renaiclb, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(renaiclb_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjlaman )
+static MACHINE_CONFIG_DERIVED( mjlaman, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(mjlaman_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mkeibaou )
+static MACHINE_CONFIG_DERIVED( mkeibaou, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(mkeibaou_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pachiten )
+static MACHINE_CONFIG_DERIVED( pachiten, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(pachiten_io_map)
MDRV_NVRAM_HANDLER(nbmj9195)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sailorws )
+static MACHINE_CONFIG_DERIVED( sailorws, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sailorwr )
+static MACHINE_CONFIG_DERIVED( sailorwr, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(sailorwr_io_map)
MDRV_NVRAM_HANDLER(nbmj9195)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( psailor1 )
+static MACHINE_CONFIG_DERIVED( psailor1, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(psailor1_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( psailor2 )
+static MACHINE_CONFIG_DERIVED( psailor2, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(psailor2_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( otatidai )
+static MACHINE_CONFIG_DERIVED( otatidai, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(otatidai_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( yosimoto )
+static MACHINE_CONFIG_DERIVED( yosimoto, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(yosimoto_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jituroku )
+static MACHINE_CONFIG_DERIVED( jituroku, NBMJDRV1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV1 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(jituroku_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ngpgal )
+static MACHINE_CONFIG_DERIVED( ngpgal, NBMJDRV2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV2 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ngpgal_map)
MDRV_CPU_IO_MAP(ngpgal_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjgottsu )
+static MACHINE_CONFIG_DERIVED( mjgottsu, NBMJDRV2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV2 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ngpgal_map)
MDRV_CPU_IO_MAP(mjgottsu_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bakuhatu )
+static MACHINE_CONFIG_DERIVED( bakuhatu, NBMJDRV2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV2 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ngpgal_map)
MDRV_CPU_IO_MAP(mjgottsu_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cmehyou )
+static MACHINE_CONFIG_DERIVED( cmehyou, NBMJDRV2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV2 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ngpgal_map)
MDRV_CPU_IO_MAP(cmehyou_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjkoiura )
+static MACHINE_CONFIG_DERIVED( mjkoiura, NBMJDRV2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV2 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjuraden_map)
MDRV_CPU_IO_MAP(mjkoiura_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mkoiuraa )
+static MACHINE_CONFIG_DERIVED( mkoiuraa, NBMJDRV2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV2 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjuraden_map)
MDRV_CPU_IO_MAP(mkoiuraa_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mscoutm )
+static MACHINE_CONFIG_DERIVED( mscoutm, NBMJDRV3 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV3 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mscoutm_map)
MDRV_CPU_IO_MAP(mscoutm_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( imekura )
+static MACHINE_CONFIG_DERIVED( imekura, NBMJDRV3 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV3 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjegolf_map)
MDRV_CPU_IO_MAP(imekura_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjegolf )
+static MACHINE_CONFIG_DERIVED( mjegolf, NBMJDRV3 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( NBMJDRV3 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjegolf_map)
MDRV_CPU_IO_MAP(mjegolf_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( mjuraden )
diff --git a/src/mame/drivers/nemesis.c b/src/mame/drivers/nemesis.c
index 6edda7444a2..5ee63309e3f 100644
--- a/src/mame/drivers/nemesis.c
+++ b/src/mame/drivers/nemesis.c
@@ -1682,10 +1682,7 @@ static MACHINE_RESET( nemesis )
state->irq_port_last = 0;
}
-static MACHINE_DRIVER_START( nemesis )
-
- /* driver data */
- MDRV_DRIVER_DATA(nemesis_state)
+static MACHINE_CONFIG_START( nemesis, nemesis_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,18432000/2) /* 9.216 MHz? */
@@ -1729,13 +1726,10 @@ static MACHINE_DRIVER_START( nemesis )
MDRV_SOUND_ADD("vlm", VLM5030, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70) /* unused */
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gx400 )
- /* driver data */
- MDRV_DRIVER_DATA(nemesis_state)
+static MACHINE_CONFIG_START( gx400, nemesis_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,18432000/2) /* 9.216MHz */
@@ -1779,13 +1773,10 @@ static MACHINE_DRIVER_START( gx400 )
MDRV_SOUND_ADD("vlm", VLM5030, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70) /* unused */
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( konamigt )
- /* driver data */
- MDRV_DRIVER_DATA(nemesis_state)
+static MACHINE_CONFIG_START( konamigt, nemesis_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,18432000/2) /* 9.216 MHz? */
@@ -1825,13 +1816,10 @@ static MACHINE_DRIVER_START( konamigt )
MDRV_SOUND_ADD("k007232", K005289, 3579545/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rf2_gx400 )
-
- /* driver data */
- MDRV_DRIVER_DATA(nemesis_state)
+static MACHINE_CONFIG_START( rf2_gx400, nemesis_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,18432000/2) /* 9.216MHz */
@@ -1875,13 +1863,10 @@ static MACHINE_DRIVER_START( rf2_gx400 )
MDRV_SOUND_ADD("vlm", VLM5030, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( salamand )
- /* driver data */
- MDRV_DRIVER_DATA(nemesis_state)
+static MACHINE_CONFIG_START( salamand, nemesis_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,18432000/2) /* 9.216MHz */
@@ -1928,13 +1913,10 @@ static MACHINE_DRIVER_START( salamand )
MDRV_SOUND_CONFIG(ym2151_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( blkpnthr )
-
- /* driver data */
- MDRV_DRIVER_DATA(nemesis_state)
+static MACHINE_CONFIG_START( blkpnthr, nemesis_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,18432000/2) /* 9.216 MHz? */
@@ -1977,13 +1959,10 @@ static MACHINE_DRIVER_START( blkpnthr )
MDRV_SOUND_CONFIG(ym2151_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( citybomb )
- /* driver data */
- MDRV_DRIVER_DATA(nemesis_state)
+static MACHINE_CONFIG_START( citybomb, nemesis_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,18432000/2) /* 9.216 MHz? */
@@ -2030,13 +2009,10 @@ static MACHINE_DRIVER_START( citybomb )
MDRV_SOUND_ADD("k051649", K051649, 3579545/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.38)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.38)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nyanpani )
-
- /* driver data */
- MDRV_DRIVER_DATA(nemesis_state)
+static MACHINE_CONFIG_START( nyanpani, nemesis_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,18432000/2) /* 9.216 MHz? */
@@ -2083,13 +2059,10 @@ static MACHINE_DRIVER_START( nyanpani )
MDRV_SOUND_ADD("k051649", K051649, 3579545/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.38)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.38)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hcrash )
- /* driver data */
- MDRV_DRIVER_DATA(nemesis_state)
+static MACHINE_CONFIG_START( hcrash, nemesis_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,18432000/3) /* 6.144MHz */
@@ -2134,7 +2107,7 @@ static MACHINE_DRIVER_START( hcrash )
MDRV_SOUND_CONFIG(ym2151_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/neogeo.c b/src/mame/drivers/neogeo.c
index 08c2fdfdafb..5b852e45917 100644
--- a/src/mame/drivers/neogeo.c
+++ b/src/mame/drivers/neogeo.c
@@ -1337,10 +1337,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( neogeo )
-
- /* driver data */
- MDRV_DRIVER_DATA(neogeo_state)
+static MACHINE_CONFIG_START( neogeo, neogeo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, NEOGEO_MAIN_CPU_CLOCK)
@@ -1379,7 +1376,7 @@ static MACHINE_DRIVER_START( neogeo )
/* NEC uPD4990A RTC */
MDRV_UPD4990A_ADD("upd4990a")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/neptunp2.c b/src/mame/drivers/neptunp2.c
index 40b27f3209e..fe7cef3c689 100644
--- a/src/mame/drivers/neptunp2.c
+++ b/src/mame/drivers/neptunp2.c
@@ -66,7 +66,7 @@ static GFXDECODE_START( neptunp2 )
// GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 8 )
GFXDECODE_END
-static MACHINE_DRIVER_START( neptunp2 )
+static MACHINE_CONFIG_START( neptunp2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",I80188,20000000) // N80C188-20 AMD
@@ -90,7 +90,7 @@ static MACHINE_DRIVER_START( neptunp2 )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/news.c b/src/mame/drivers/news.c
index 3a13915cc8a..65b4a9f74e4 100644
--- a/src/mame/drivers/news.c
+++ b/src/mame/drivers/news.c
@@ -127,10 +127,7 @@ static MACHINE_RESET( news )
state->bgpic = 0;
}
-static MACHINE_DRIVER_START( news )
-
- /* driver data */
- MDRV_DRIVER_DATA(news_state)
+static MACHINE_CONFIG_START( news, news_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000) /* ? MHz */
@@ -159,7 +156,7 @@ static MACHINE_DRIVER_START( news )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nightgal.c b/src/mame/drivers/nightgal.c
index 05cae611857..1d2a4f37011 100644
--- a/src/mame/drivers/nightgal.c
+++ b/src/mame/drivers/nightgal.c
@@ -858,10 +858,7 @@ static MACHINE_RESET( nightgal )
memset(state->pen_raw_data, 0, ARRAY_LENGTH(state->pen_raw_data));
}
-static MACHINE_DRIVER_START( royalqn )
-
- /* driver data */
- MDRV_DRIVER_DATA(nightgal_state)
+static MACHINE_CONFIG_START( royalqn, nightgal_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,MASTER_CLOCK / 8) /* ? MHz */
@@ -898,11 +895,11 @@ static MACHINE_DRIVER_START( royalqn )
MDRV_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK / 8)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( sexygal, royalqn )
-static MACHINE_DRIVER_START( sexygal )
/* basic machine hardware */
- MDRV_IMPORT_FROM( royalqn )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sexygal_map)
MDRV_CPU_IO_MAP(sexygal_io)
@@ -917,15 +914,14 @@ static MACHINE_DRIVER_START( sexygal )
MDRV_SOUND_ADD("ymsnd", YM2203, MASTER_CLOCK / 8)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ngalsumr )
- MDRV_IMPORT_FROM( royalqn )
+static MACHINE_CONFIG_DERIVED( ngalsumr, royalqn )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(royalqn_map)
MDRV_CPU_IO_MAP(royalqn_io)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse,244)//???
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
Night Gal
diff --git a/src/mame/drivers/ninjakd2.c b/src/mame/drivers/ninjakd2.c
index c3bb9230a7d..042b5b0e7ff 100644
--- a/src/mame/drivers/ninjakd2.c
+++ b/src/mame/drivers/ninjakd2.c
@@ -905,7 +905,7 @@ static const samples_interface ninjakd2_samples_interface =
*
*************************************/
-static MACHINE_DRIVER_START( ninjakd2 )
+static MACHINE_CONFIG_START( ninjakd2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CLOCK_12/2) /* verified */
@@ -951,12 +951,11 @@ static MACHINE_DRIVER_START( ninjakd2 )
MDRV_SOUND_ADD("pcm", SAMPLES, 0)
MDRV_SOUND_CONFIG(ninjakd2_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mnight )
+static MACHINE_CONFIG_DERIVED( mnight, ninjakd2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ninjakd2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mnight_main_cpu)
@@ -966,12 +965,11 @@ static MACHINE_DRIVER_START( mnight )
/* sound hardware */
MDRV_DEVICE_REMOVE("pcm")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( arkarea )
+static MACHINE_CONFIG_DERIVED( arkarea, ninjakd2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ninjakd2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mnight_main_cpu)
@@ -981,12 +979,11 @@ static MACHINE_DRIVER_START( arkarea )
/* sound hardware */
MDRV_DEVICE_REMOVE("pcm")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( robokid )
+static MACHINE_CONFIG_DERIVED( robokid, mnight )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mnight)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(robokid_main_cpu)
@@ -999,12 +996,11 @@ static MACHINE_DRIVER_START( robokid )
MDRV_VIDEO_START(robokid)
MDRV_VIDEO_UPDATE(robokid)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( omegaf )
+static MACHINE_CONFIG_DERIVED( omegaf, robokid )
/* basic machine hardware */
- MDRV_IMPORT_FROM(robokid)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(omegaf_main_cpu)
@@ -1014,7 +1010,7 @@ static MACHINE_DRIVER_START( omegaf )
/* video hardware */
MDRV_VIDEO_START(omegaf)
MDRV_VIDEO_UPDATE(omegaf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ninjaw.c b/src/mame/drivers/ninjaw.c
index cbe169c483b..0b64bffa595 100644
--- a/src/mame/drivers/ninjaw.c
+++ b/src/mame/drivers/ninjaw.c
@@ -797,10 +797,7 @@ static MACHINE_RESET( ninjaw )
sound_global_enable(machine, 1); /* mixer enabled */
}
-static MACHINE_DRIVER_START( ninjaw )
-
- /* driver data */
- MDRV_DRIVER_DATA(ninjaw_state)
+static MACHINE_CONFIG_START( ninjaw, ninjaw_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,16000000/2) /* 8 MHz ? */
@@ -881,13 +878,10 @@ static MACHINE_DRIVER_START( ninjaw )
// MDRV_SOUND_ADD("subwoofer", SUBWOOFER, 0)
MDRV_TC0140SYT_ADD("tc0140syt", ninjaw_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( darius2 )
- /* driver data */
- MDRV_DRIVER_DATA(ninjaw_state)
+static MACHINE_CONFIG_START( darius2, ninjaw_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,16000000/2) /* 8 MHz ? */
@@ -968,7 +962,7 @@ static MACHINE_DRIVER_START( darius2 )
// MDRV_SOUND_ADD("subwoofer", SUBWOOFER, 0)
MDRV_TC0140SYT_ADD("tc0140syt", ninjaw_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/nitedrvr.c b/src/mame/drivers/nitedrvr.c
index 7bce609f7c5..44afc7b4e59 100644
--- a/src/mame/drivers/nitedrvr.c
+++ b/src/mame/drivers/nitedrvr.c
@@ -134,10 +134,7 @@ GFXDECODE_END
/* Machine Driver */
-static MACHINE_DRIVER_START( nitedrvr )
-
- /* driver data */
- MDRV_DRIVER_DATA(nitedrvr_state)
+static MACHINE_CONFIG_START( nitedrvr, nitedrvr_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, XTAL_12_096MHz/12) // 1 MHz
@@ -171,7 +168,7 @@ static MACHINE_DRIVER_START( nitedrvr )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(nitedrvr)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/niyanpai.c b/src/mame/drivers/niyanpai.c
index 6ce73f401dc..ddab10020a6 100644
--- a/src/mame/drivers/niyanpai.c
+++ b/src/mame/drivers/niyanpai.c
@@ -771,7 +771,7 @@ static const z80_daisy_config daisy_chain_sound[] =
};
-static MACHINE_DRIVER_START( niyanpai )
+static MACHINE_CONFIG_START( niyanpai, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12288000/2) /* TMP68301, 6.144 MHz */
@@ -812,23 +812,21 @@ static MACHINE_DRIVER_START( niyanpai )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( musobana )
+static MACHINE_CONFIG_DERIVED( musobana, niyanpai )
/* basic machine hardware */
- MDRV_IMPORT_FROM(niyanpai)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(musobana_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mhhonban )
+static MACHINE_CONFIG_DERIVED( mhhonban, niyanpai )
/* basic machine hardware */
- MDRV_IMPORT_FROM(niyanpai)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mhhonban_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( niyanpai )
diff --git a/src/mame/drivers/nmg5.c b/src/mame/drivers/nmg5.c
index 381fcd88021..c018191f7ef 100644
--- a/src/mame/drivers/nmg5.c
+++ b/src/mame/drivers/nmg5.c
@@ -1032,10 +1032,7 @@ static MACHINE_RESET( nmg5 )
state->input_data = 0;
}
-static MACHINE_DRIVER_START( nmg5 )
-
- /* driver data */
- MDRV_DRIVER_DATA(nmg5_state)
+static MACHINE_CONFIG_START( nmg5, nmg5_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -1072,23 +1069,23 @@ static MACHINE_DRIVER_START( nmg5 )
MDRV_OKIM6295_ADD("oki", 1000000 , OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( garogun, nmg5 )
-static MACHINE_DRIVER_START( garogun )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nmg5)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(pclubys_map)
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_PROGRAM_MAP(pclubys_sound_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( pclubys, nmg5 )
-static MACHINE_DRIVER_START( pclubys )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nmg5)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(pclubys_map)
@@ -1097,25 +1094,25 @@ static MACHINE_DRIVER_START( pclubys )
MDRV_CPU_PROGRAM_MAP(pclubys_sound_map)
MDRV_GFXDECODE(pclubys)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( searchp2, nmg5 )
-static MACHINE_DRIVER_START( searchp2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nmg5)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE(55) // !
MDRV_GFXDECODE(pclubys)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( 7ordi, nmg5 )
-static MACHINE_DRIVER_START( 7ordi )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nmg5)
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_PROGRAM_MAP(pclubys_sound_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/nmk16.c b/src/mame/drivers/nmk16.c
index 02e8d492404..61d95c4bd1b 100644
--- a/src/mame/drivers/nmk16.c
+++ b/src/mame/drivers/nmk16.c
@@ -3528,7 +3528,7 @@ static const nmk112_interface nmk16_nmk112_intf =
"oki1", "oki2", 0
};
-static MACHINE_DRIVER_START( tharrier )
+static MACHINE_CONFIG_START( tharrier, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz */
@@ -3572,9 +3572,9 @@ static MACHINE_DRIVER_START( tharrier )
MDRV_OKIM6295_ADD("oki2", 16000000/4, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( manybloc )
+static MACHINE_CONFIG_START( manybloc, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10? MHz - check */
@@ -3616,9 +3616,9 @@ static MACHINE_DRIVER_START( manybloc )
MDRV_OKIM6295_ADD("oki2", 16000000/4, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mustang )
+static MACHINE_CONFIG_START( mustang, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ? */
@@ -3659,9 +3659,9 @@ static MACHINE_DRIVER_START( mustang )
MDRV_OKIM6295_ADD("oki2", 16000000/4, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mustangb )
+static MACHINE_CONFIG_START( mustangb, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ? */
@@ -3691,12 +3691,12 @@ static MACHINE_DRIVER_START( mustangb )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM3812_INTERFACE(14318180/4, 1320000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#define BIOSHIP_CRYSTAL1 10000000
#define BIOSHIP_CRYSTAL2 12000000
-static MACHINE_DRIVER_START( bioship )
+static MACHINE_CONFIG_START( bioship, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, BIOSHIP_CRYSTAL1 ) /* 10.0 MHz (verified) */
@@ -3736,9 +3736,9 @@ static MACHINE_DRIVER_START( bioship )
MDRV_OKIM6295_ADD("oki2", BIOSHIP_CRYSTAL2 / 3 , OKIM6295_PIN7_HIGH) /* 4.0 Mhz, Pin 7 High (verified) */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vandyke )
+static MACHINE_CONFIG_START( vandyke, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz) /* 68000p12 running at 10Mhz, verified on pcb */
@@ -3778,9 +3778,9 @@ static MACHINE_DRIVER_START( vandyke )
MDRV_OKIM6295_ADD("oki2", XTAL_12MHz/3, OKIM6295_PIN7_LOW) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vandykeb )
+static MACHINE_CONFIG_START( vandykeb, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ? */
@@ -3813,9 +3813,9 @@ static MACHINE_DRIVER_START( vandykeb )
MDRV_OKIM6295_ADD("oki1", 16000000/4, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( acrobatm )
+static MACHINE_CONFIG_START( acrobatm, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz (verified on pcb) */
@@ -3855,10 +3855,10 @@ static MACHINE_DRIVER_START( acrobatm )
MDRV_OKIM6295_ADD("oki2", 16000000/4, OKIM6295_PIN7_LOW) /* (verified on pcb) on the pcb pin7 is not connected to gnd or +5v! */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tdragonb ) /* bootleg using Raiden sound hardware */
+static MACHINE_CONFIG_START( tdragonb, driver_data_t ) /* bootleg using Raiden sound hardware */
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -3888,9 +3888,9 @@ static MACHINE_DRIVER_START( tdragonb ) /* bootleg using Raiden sound hardware *
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM3812_INTERFACE(14318180/4, 1320000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tdragon )
+static MACHINE_CONFIG_START( tdragon, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_8MHz) /* verified on pcb */
@@ -3932,9 +3932,9 @@ static MACHINE_DRIVER_START( tdragon )
MDRV_OKIM6295_ADD("oki2", XTAL_8MHz/2, OKIM6295_PIN7_LOW) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ssmissin )
+static MACHINE_CONFIG_START( ssmissin, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 Mhz */
@@ -3967,9 +3967,9 @@ static MACHINE_DRIVER_START( ssmissin )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_NMK112_ADD("nmk112", nmk16_nmk112_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( strahl )
+static MACHINE_CONFIG_START( strahl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ? */
@@ -4009,9 +4009,9 @@ static MACHINE_DRIVER_START( strahl )
MDRV_OKIM6295_ADD("oki2", 16000000/4, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hachamf )
+static MACHINE_CONFIG_START( hachamf, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ? */
@@ -4052,9 +4052,9 @@ static MACHINE_DRIVER_START( hachamf )
MDRV_OKIM6295_ADD("oki2", 16000000/4, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( macross )
+static MACHINE_CONFIG_START( macross, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ? */
@@ -4094,9 +4094,9 @@ static MACHINE_DRIVER_START( macross )
MDRV_OKIM6295_ADD("oki2", 16000000/4, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( blkheart )
+static MACHINE_CONFIG_START( blkheart, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_8MHz) /* verified on pcb */
@@ -4136,9 +4136,9 @@ static MACHINE_DRIVER_START( blkheart )
MDRV_OKIM6295_ADD("oki2", XTAL_8MHz/2, OKIM6295_PIN7_LOW) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gunnail )
+static MACHINE_CONFIG_START( gunnail, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz? */
@@ -4178,9 +4178,9 @@ static MACHINE_DRIVER_START( gunnail )
MDRV_OKIM6295_ADD("oki2", 16000000/4, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( macross2 )
+static MACHINE_CONFIG_START( macross2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ? */
@@ -4221,9 +4221,9 @@ static MACHINE_DRIVER_START( macross2 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MDRV_NMK112_ADD("nmk112", nmk16_nmk112_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tdragon2 )
+static MACHINE_CONFIG_START( tdragon2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz */
@@ -4264,9 +4264,9 @@ static MACHINE_DRIVER_START( tdragon2 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.08)
MDRV_NMK112_ADD("nmk112", nmk16_nmk112_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( raphero )
+static MACHINE_CONFIG_START( raphero, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000) /* 14 MHz measured */
@@ -4306,9 +4306,9 @@ static MACHINE_DRIVER_START( raphero )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MDRV_NMK112_ADD("nmk112", nmk16_nmk112_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bjtwin )
+static MACHINE_CONFIG_START( bjtwin, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* verified on pcb */
@@ -4341,7 +4341,7 @@ static MACHINE_DRIVER_START( bjtwin )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MDRV_NMK112_ADD("nmk112", nmk16_nmk112_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static UINT8 decode_byte(UINT8 src, const UINT8 *bitp)
@@ -4814,7 +4814,7 @@ static const ym2151_interface afega_ym2151_intf =
};
-static MACHINE_DRIVER_START( stagger1 )
+static MACHINE_CONFIG_START( stagger1, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,XTAL_12MHz) /* 68000p10 running at 12mhz, verified on pcb */
@@ -4850,55 +4850,52 @@ static MACHINE_DRIVER_START( stagger1 )
MDRV_OKIM6295_ADD("oki1", XTAL_4MHz/4, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.70)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( redhawki, stagger1 )
-static MACHINE_DRIVER_START( redhawki )
/* basic machine hardware */
- MDRV_IMPORT_FROM(stagger1)
/* video hardware */
MDRV_VIDEO_UPDATE(redhawki)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( redhawkb, stagger1 )
-static MACHINE_DRIVER_START( redhawkb )
/* basic machine hardware */
- MDRV_IMPORT_FROM(stagger1)
/* video hardware */
MDRV_GFXDECODE(redhawkb)
MDRV_VIDEO_UPDATE(redhawkb)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( grdnstrm )
+static MACHINE_CONFIG_DERIVED( grdnstrm, stagger1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(stagger1)
/* video hardware */
MDRV_GFXDECODE(grdnstrm)
MDRV_VIDEO_START(firehawk)
MDRV_VIDEO_UPDATE(firehawk)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( grdnstrmk )
+static MACHINE_CONFIG_DERIVED( grdnstrmk, stagger1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(stagger1)
/* video hardware */
MDRV_GFXDECODE(grdnstrm)
MDRV_VIDEO_START(grdnstrm)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( popspops )
+static MACHINE_CONFIG_DERIVED( popspops, grdnstrm )
/* basic machine hardware */
- MDRV_IMPORT_FROM(grdnstrm)
/* video hardware */
MDRV_VIDEO_UPDATE(bubl2000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( firehawk )
+static MACHINE_CONFIG_START( firehawk, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000)
@@ -4931,9 +4928,9 @@ static MACHINE_DRIVER_START( firehawk )
MDRV_OKIM6295_ADD("oki2", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( twinactn )
+static MACHINE_CONFIG_START( twinactn, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000)
@@ -4965,7 +4962,7 @@ static MACHINE_DRIVER_START( twinactn )
MDRV_OKIM6295_ADD("oki1", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/norautp.c b/src/mame/drivers/norautp.c
index c9ada0190b1..6e0f6c94578 100644
--- a/src/mame/drivers/norautp.c
+++ b/src/mame/drivers/norautp.c
@@ -1235,7 +1235,7 @@ static I8255A_INTERFACE (ppi8255_intf_1)
* Machine Drivers *
*************************/
-static MACHINE_DRIVER_START( noraut_base )
+static MACHINE_CONFIG_START( noraut_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, NORAUT_CPU_CLOCK)
@@ -1269,20 +1269,18 @@ static MACHINE_DRIVER_START( noraut_base )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(norautp)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( norautp )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( norautp, noraut_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( norautpl )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( norautpl, noraut_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1291,53 +1289,48 @@ static MACHINE_DRIVER_START( norautpl )
/* sound hardware */
MDRV_SOUND_MODIFY("discrete")
MDRV_SOUND_CONFIG_DISCRETE(kimble)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( norautxp )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( norautxp, noraut_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(norautxp_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nortest1 )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( nortest1, noraut_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(nortest1_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( norautx4 )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( norautx4, noraut_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(norautx4_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#ifdef UNUSED_CODE
-static MACHINE_DRIVER_START( norautx8 )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( norautx8, noraut_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(norautx8_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#endif
-static MACHINE_DRIVER_START( kimble )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( kimble, noraut_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -1347,14 +1340,13 @@ static MACHINE_DRIVER_START( kimble )
/* sound hardware */
MDRV_SOUND_MODIFY("discrete")
MDRV_SOUND_CONFIG_DISCRETE(kimble)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/********** 8080 based **********/
-static MACHINE_DRIVER_START( dphl )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( dphl, noraut_base )
/* basic machine hardware */
MDRV_CPU_REPLACE("maincpu", I8080, DPHL_CPU_CLOCK)
@@ -1364,11 +1356,10 @@ static MACHINE_DRIVER_START( dphl )
/* sound hardware */
MDRV_SOUND_MODIFY("discrete")
MDRV_SOUND_CONFIG_DISCRETE(dphl)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dphla )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( dphla, noraut_base )
/* basic machine hardware */
MDRV_CPU_REPLACE("maincpu", I8080, DPHL_CPU_CLOCK)
@@ -1378,11 +1369,10 @@ static MACHINE_DRIVER_START( dphla )
/* sound hardware */
MDRV_SOUND_MODIFY("discrete")
MDRV_SOUND_CONFIG_DISCRETE(dphl)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kimbldhl )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( kimbldhl, noraut_base )
/* basic machine hardware */
MDRV_CPU_REPLACE("maincpu", I8080, DPHL_CPU_CLOCK)
@@ -1392,11 +1382,10 @@ static MACHINE_DRIVER_START( kimbldhl )
/* sound hardware */
MDRV_SOUND_MODIFY("discrete")
MDRV_SOUND_CONFIG_DISCRETE(kimble)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dphltest )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( dphltest, noraut_base )
/* basic machine hardware */
MDRV_CPU_REPLACE("maincpu", I8080, DPHL_CPU_CLOCK)
@@ -1406,11 +1395,10 @@ static MACHINE_DRIVER_START( dphltest )
/* sound hardware */
MDRV_SOUND_MODIFY("discrete")
MDRV_SOUND_CONFIG_DISCRETE(dphl)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( drhl )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( drhl, noraut_base )
/* basic machine hardware */
MDRV_CPU_REPLACE("maincpu", I8080, DPHL_CPU_CLOCK)
@@ -1420,11 +1408,10 @@ static MACHINE_DRIVER_START( drhl )
/* sound hardware */
MDRV_SOUND_MODIFY("discrete")
MDRV_SOUND_CONFIG_DISCRETE(dphl)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ssjkrpkr )
- MDRV_IMPORT_FROM(noraut_base)
+static MACHINE_CONFIG_DERIVED( ssjkrpkr, noraut_base )
/* basic machine hardware */
MDRV_CPU_REPLACE("maincpu", I8080, DPHL_CPU_CLOCK)
@@ -1434,7 +1421,7 @@ static MACHINE_DRIVER_START( ssjkrpkr )
/* sound hardware */
MDRV_SOUND_MODIFY("discrete")
MDRV_SOUND_CONFIG_DISCRETE(dphl)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/nova2001.c b/src/mame/drivers/nova2001.c
index ae07c463af9..684d97f5d00 100644
--- a/src/mame/drivers/nova2001.c
+++ b/src/mame/drivers/nova2001.c
@@ -680,7 +680,7 @@ static const ay8910_interface pkunwar_ay8910_interface_2 =
*
*************************************/
-static MACHINE_DRIVER_START( nova2001 )
+static MACHINE_CONFIG_START( nova2001, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CLOCK/4) // 3 MHz verified on schematics
@@ -711,9 +711,9 @@ static MACHINE_DRIVER_START( nova2001 )
MDRV_SOUND_ADD("ay2", AY8910, MAIN_CLOCK/6)
MDRV_SOUND_CONFIG(nova2001_ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ninjakun )
+static MACHINE_CONFIG_START( ninjakun, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CLOCK/4) // 3 MHz
@@ -752,9 +752,9 @@ static MACHINE_DRIVER_START( ninjakun )
MDRV_SOUND_ADD("ay2", AY8910, MAIN_CLOCK/4) // 3 MHz
MDRV_SOUND_CONFIG(nova2001_ay8910_interface_1)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pkunwar )
+static MACHINE_CONFIG_START( pkunwar, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CLOCK/4) // 3 MHz
@@ -786,9 +786,9 @@ static MACHINE_DRIVER_START( pkunwar )
MDRV_SOUND_ADD("ay2", AY8910, MAIN_CLOCK/8)
MDRV_SOUND_CONFIG(pkunwar_ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( raiders5 )
+static MACHINE_CONFIG_START( raiders5, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CLOCK/4) // 3 MHz
@@ -825,7 +825,7 @@ static MACHINE_DRIVER_START( raiders5 )
MDRV_SOUND_ADD("ay2", AY8910, MAIN_CLOCK/8)
MDRV_SOUND_CONFIG(pkunwar_ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nss.c b/src/mame/drivers/nss.c
index 34e2b739dff..dae1a536928 100644
--- a/src/mame/drivers/nss.c
+++ b/src/mame/drivers/nss.c
@@ -609,10 +609,7 @@ static INPUT_PORTS_START( snes )
#endif
INPUT_PORTS_END
-static MACHINE_DRIVER_START( snes )
-
- /* driver data */
- MDRV_DRIVER_DATA(snes_state)
+static MACHINE_CONFIG_START( snes, snes_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", _5A22, 3580000*6) /* 2.68Mhz, also 3.58Mhz */
@@ -639,10 +636,9 @@ static MACHINE_DRIVER_START( snes )
MDRV_SOUND_ADD("spc700", SNES, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nss )
- MDRV_IMPORT_FROM( snes )
+static MACHINE_CONFIG_DERIVED( nss, snes )
MDRV_CPU_ADD("bios", Z80, 4000000)
MDRV_CPU_PROGRAM_MAP(bios_map)
@@ -651,7 +647,7 @@ static MACHINE_DRIVER_START( nss )
// MDRV_CPU_FLAGS(CPU_DISABLE)
MDRV_MACHINE_START( nss )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/nwk-tr.c b/src/mame/drivers/nwk-tr.c
index a48f407af09..da9b0aa9a44 100644
--- a/src/mame/drivers/nwk-tr.c
+++ b/src/mame/drivers/nwk-tr.c
@@ -652,7 +652,7 @@ static MACHINE_RESET( nwktr )
cputag_set_input_line(machine, "dsp", INPUT_LINE_RESET, ASSERT_LINE);
}
-static MACHINE_DRIVER_START( nwktr )
+static MACHINE_CONFIG_START( nwktr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000/2) /* PowerPC 403GA 32MHz */
@@ -702,14 +702,13 @@ static MACHINE_DRIVER_START( nwktr )
MDRV_M48T58_ADD( "m48t58" )
MDRV_ADC12138_ADD( "adc12138", nwktr_adc_interface )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( thrilld )
- MDRV_IMPORT_FROM(nwktr)
+static MACHINE_CONFIG_DERIVED( thrilld, nwktr )
MDRV_DEVICE_REMOVE("k001604")
MDRV_K001604_ADD("k001604", thrilld_k001604_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*****************************************************************************/
diff --git a/src/mame/drivers/nycaptor.c b/src/mame/drivers/nycaptor.c
index 800676e4c75..a641ec6f77f 100644
--- a/src/mame/drivers/nycaptor.c
+++ b/src/mame/drivers/nycaptor.c
@@ -841,10 +841,7 @@ static MACHINE_RESET( nycaptor )
memset(state->vol_ctrl, 0, ARRAY_LENGTH(state->vol_ctrl));
}
-static MACHINE_DRIVER_START( nycaptor )
-
- /* driver data */
- MDRV_DRIVER_DATA(nycaptor_state)
+static MACHINE_CONFIG_START( nycaptor, nycaptor_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000/2) /* ??? */
@@ -905,12 +902,9 @@ static MACHINE_DRIVER_START( nycaptor )
// pin 1 SOLO 8' not mapped
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( cyclshtg )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(nycaptor_state)
+static MACHINE_CONFIG_START( cyclshtg, nycaptor_state )
MDRV_CPU_ADD("maincpu", Z80,8000000/2)
MDRV_CPU_PROGRAM_MAP(cyclshtg_master_map)
@@ -969,13 +963,10 @@ static MACHINE_DRIVER_START( cyclshtg )
// pin 1 SOLO 8' not mapped
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bronx )
- /* driver data */
- MDRV_DRIVER_DATA(nycaptor_state)
+static MACHINE_CONFIG_START( bronx, nycaptor_state )
MDRV_CPU_ADD("maincpu", Z80,8000000/2)
MDRV_CPU_PROGRAM_MAP(bronx_master_map)
@@ -1030,7 +1021,7 @@ static MACHINE_DRIVER_START( bronx )
// pin 1 SOLO 8' not mapped
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nyny.c b/src/mame/drivers/nyny.c
index 79c7baf51e9..abfaa1119ad 100644
--- a/src/mame/drivers/nyny.c
+++ b/src/mame/drivers/nyny.c
@@ -713,10 +713,7 @@ static MACHINE_RESET( nyny )
*
*************************************/
-static MACHINE_DRIVER_START( nyny )
-
- /* driver data */
- MDRV_DRIVER_DATA(nyny_state)
+static MACHINE_CONFIG_START( nyny, nyny_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 1400000) /* 1.40 MHz? The clock signal is generated by analog chips */
@@ -765,7 +762,7 @@ static MACHINE_DRIVER_START( nyny )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/offtwall.c b/src/mame/drivers/offtwall.c
index e8517f6a515..e3861d9c3bd 100644
--- a/src/mame/drivers/offtwall.c
+++ b/src/mame/drivers/offtwall.c
@@ -403,8 +403,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( offtwall )
- MDRV_DRIVER_DATA(offtwall_state)
+static MACHINE_CONFIG_START( offtwall, offtwall_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -429,8 +428,8 @@ static MACHINE_DRIVER_START( offtwall )
MDRV_VIDEO_UPDATE(offtwall)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_iii_mono_noadpcm)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_iii_mono_noadpcm)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ohmygod.c b/src/mame/drivers/ohmygod.c
index 66744e097d3..8440e2124f4 100644
--- a/src/mame/drivers/ohmygod.c
+++ b/src/mame/drivers/ohmygod.c
@@ -317,10 +317,7 @@ static MACHINE_RESET( ohmygod )
state->scrolly = 0;
}
-static MACHINE_DRIVER_START( ohmygod )
-
- /* driver data */
- MDRV_DRIVER_DATA(ohmygod_state)
+static MACHINE_CONFIG_START( ohmygod, ohmygod_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -351,7 +348,7 @@ static MACHINE_DRIVER_START( ohmygod )
MDRV_OKIM6295_ADD("oki", 14000000/8, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/ojankohs.c b/src/mame/drivers/ojankohs.c
index 2f37de4ef6e..2e28d44dce9 100644
--- a/src/mame/drivers/ojankohs.c
+++ b/src/mame/drivers/ojankohs.c
@@ -856,10 +856,7 @@ static MACHINE_RESET( ojankohs )
state->screen_refresh = 0;
}
-static MACHINE_DRIVER_START( ojankohs )
-
- /* driver data */
- MDRV_DRIVER_DATA(ojankohs_state)
+static MACHINE_CONFIG_START( ojankohs, ojankohs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6.00 MHz ? */
@@ -895,12 +892,9 @@ static MACHINE_DRIVER_START( ojankohs )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( ojankoy )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(ojankohs_state)
+static MACHINE_CONFIG_START( ojankoy, ojankohs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6.00 MHz ? */
@@ -937,12 +931,9 @@ static MACHINE_DRIVER_START( ojankoy )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ccasino )
-
- /* driver data */
- MDRV_DRIVER_DATA(ojankohs_state)
+static MACHINE_CONFIG_START( ccasino, ojankohs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6.00 MHz ? */
@@ -978,12 +969,9 @@ static MACHINE_DRIVER_START( ccasino )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( ojankoc )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(ojankohs_state)
+static MACHINE_CONFIG_START( ojankoc, ojankohs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000/2) /* 4.00 MHz */
@@ -1018,7 +1006,7 @@ static MACHINE_DRIVER_START( ojankoc )
MDRV_SOUND_ADD("msm", MSM5205, 8000000/22)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ojankohs )
diff --git a/src/mame/drivers/olibochu.c b/src/mame/drivers/olibochu.c
index dbaef4549e7..eecf333bac8 100644
--- a/src/mame/drivers/olibochu.c
+++ b/src/mame/drivers/olibochu.c
@@ -438,10 +438,7 @@ static MACHINE_RESET( olibochu )
state->cmd = 0;
}
-static MACHINE_DRIVER_START( olibochu )
-
- /* driver data */
- MDRV_DRIVER_DATA(olibochu_state)
+static MACHINE_CONFIG_START( olibochu, olibochu_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz ?? */
@@ -477,7 +474,7 @@ static MACHINE_DRIVER_START( olibochu )
MDRV_SOUND_ADD("aysnd", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/omegrace.c b/src/mame/drivers/omegrace.c
index 6d47474df80..450f847cd56 100644
--- a/src/mame/drivers/omegrace.c
+++ b/src/mame/drivers/omegrace.c
@@ -466,7 +466,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( omegrace )
+static MACHINE_CONFIG_START( omegrace, driver_data_t )
/* basic machine hardware */
@@ -509,7 +509,7 @@ static MACHINE_DRIVER_START( omegrace )
MDRV_SOUND_ADD("ay2", AY8912, 12000000/12)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/oneshot.c b/src/mame/drivers/oneshot.c
index 59a5f010d4f..d5e07c646c0 100644
--- a/src/mame/drivers/oneshot.c
+++ b/src/mame/drivers/oneshot.c
@@ -370,10 +370,7 @@ static MACHINE_RESET( oneshot )
state->p2_wobble = 0;
}
-static MACHINE_DRIVER_START( oneshot )
-
- /* driver data */
- MDRV_DRIVER_DATA(oneshot_state)
+static MACHINE_CONFIG_START( oneshot, oneshot_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -408,16 +405,15 @@ static MACHINE_DRIVER_START( oneshot )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( maddonna )
+static MACHINE_CONFIG_DERIVED( maddonna, oneshot )
/* basic machine hardware */
- MDRV_IMPORT_FROM(oneshot)
/* video hardware */
MDRV_VIDEO_UPDATE(maddonna) // no crosshair
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( oneshot )
diff --git a/src/mame/drivers/onetwo.c b/src/mame/drivers/onetwo.c
index 08b2288046e..e88e13426ed 100644
--- a/src/mame/drivers/onetwo.c
+++ b/src/mame/drivers/onetwo.c
@@ -353,10 +353,7 @@ static MACHINE_START( onetwo )
state->audiocpu = machine->device("audiocpu");
}
-static MACHINE_DRIVER_START( onetwo )
-
- /* driver data */
- MDRV_DRIVER_DATA(onetwo_state)
+static MACHINE_CONFIG_START( onetwo, onetwo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,MASTER_CLOCK) /* 4 MHz */
@@ -393,7 +390,7 @@ static MACHINE_DRIVER_START( onetwo )
MDRV_OKIM6295_ADD("oki", 1056000*2, OKIM6295_PIN7_LOW) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/opwolf.c b/src/mame/drivers/opwolf.c
index ce6ee139c86..3175f8c9e93 100644
--- a/src/mame/drivers/opwolf.c
+++ b/src/mame/drivers/opwolf.c
@@ -735,10 +735,7 @@ static const tc0140syt_interface opwolf_tc0140syt_intf =
"maincpu", "audiocpu"
};
-static MACHINE_DRIVER_START( opwolf )
-
- /* driver data */
- MDRV_DRIVER_DATA(opwolf_state)
+static MACHINE_CONFIG_START( opwolf, opwolf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CPU_CLOCK ) /* 8 MHz */
@@ -788,13 +785,10 @@ static MACHINE_DRIVER_START( opwolf )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.60)
MDRV_TC0140SYT_ADD("tc0140syt", opwolf_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( opwolfb ) /* OSC clocks unknown for the bootleg, but changed to match original sets */
- /* driver data */
- MDRV_DRIVER_DATA(opwolf_state)
+static MACHINE_CONFIG_START( opwolfb, opwolf_state ) /* OSC clocks unknown for the bootleg, but changed to match original sets */
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CPU_CLOCK ) /* 8 MHz ??? */
@@ -847,7 +841,7 @@ static MACHINE_DRIVER_START( opwolfb ) /* OSC clocks unknown for the bootleg, bu
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.60)
MDRV_TC0140SYT_ADD("tc0140syt", opwolf_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/orbit.c b/src/mame/drivers/orbit.c
index 1a77a2e5a91..da62dc509a2 100644
--- a/src/mame/drivers/orbit.c
+++ b/src/mame/drivers/orbit.c
@@ -298,10 +298,7 @@ static MACHINE_RESET( orbit )
*
*************************************/
-static MACHINE_DRIVER_START( orbit )
-
- /* driver data */
- MDRV_DRIVER_DATA(orbit_state)
+static MACHINE_CONFIG_START( orbit, orbit_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, MASTER_CLOCK / 16)
@@ -331,7 +328,7 @@ static MACHINE_DRIVER_START( orbit )
MDRV_SOUND_CONFIG_DISCRETE(orbit)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/othello.c b/src/mame/drivers/othello.c
index d99465f56fc..d5b93c985b9 100644
--- a/src/mame/drivers/othello.c
+++ b/src/mame/drivers/othello.c
@@ -410,10 +410,7 @@ static MACHINE_RESET( othello )
state->n7751_busy = 0;
}
-static MACHINE_DRIVER_START( othello )
-
- /* driver data */
- MDRV_DRIVER_DATA(othello_state)
+static MACHINE_CONFIG_START( othello, othello_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,XTAL_8MHz/2)
@@ -459,7 +456,7 @@ static MACHINE_DRIVER_START( othello )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( othello )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/othldrby.c b/src/mame/drivers/othldrby.c
index 726bb1426ca..73ad9c4b0fd 100644
--- a/src/mame/drivers/othldrby.c
+++ b/src/mame/drivers/othldrby.c
@@ -237,10 +237,7 @@ static MACHINE_RESET( othldrby )
memset(state->vreg, 0, ARRAY_LENGTH(state->vreg));
}
-static MACHINE_DRIVER_START( othldrby )
-
- /* driver data */
- MDRV_DRIVER_DATA(othldrby_state)
+static MACHINE_CONFIG_START( othldrby, othldrby_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -270,7 +267,7 @@ static MACHINE_DRIVER_START( othldrby )
MDRV_OKIM6295_ADD("oki", 1584000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/othunder.c b/src/mame/drivers/othunder.c
index 967f8d3d260..6b309b788f9 100644
--- a/src/mame/drivers/othunder.c
+++ b/src/mame/drivers/othunder.c
@@ -718,10 +718,7 @@ static MACHINE_RESET( othunder )
state->banknum = 0;
}
-static MACHINE_DRIVER_START( othunder )
-
- /* driver data */
- MDRV_DRIVER_DATA(othunder_state)
+static MACHINE_CONFIG_START( othunder, othunder_state )
/* basic machine hardware */
// MDRV_CPU_ADD("maincpu", M68000, 24000000/2 ) /* 12 MHz */
@@ -782,7 +779,7 @@ static MACHINE_DRIVER_START( othunder )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", othunder_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/overdriv.c b/src/mame/drivers/overdriv.c
index 4f5e19b2d9f..2e08e8da1b0 100644
--- a/src/mame/drivers/overdriv.c
+++ b/src/mame/drivers/overdriv.c
@@ -329,10 +329,7 @@ static MACHINE_RESET( overdriv )
cputag_set_input_line(machine, "sub", INPUT_LINE_RESET, ASSERT_LINE);
}
-static MACHINE_DRIVER_START( overdriv )
-
- /* driver data */
- MDRV_DRIVER_DATA(overdriv_state)
+static MACHINE_CONFIG_START( overdriv, overdriv_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz */
@@ -393,7 +390,7 @@ static MACHINE_DRIVER_START( overdriv )
MDRV_SOUND_CONFIG(k053260_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.35)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/pachifev.c b/src/mame/drivers/pachifev.c
index 60bc4d2ae16..7d231ac1d47 100644
--- a/src/mame/drivers/pachifev.c
+++ b/src/mame/drivers/pachifev.c
@@ -361,9 +361,7 @@ static const struct tms9995reset_param pachifev_processor_config =
1,0,0
};
-static MACHINE_DRIVER_START( pachifev )
-
- MDRV_DRIVER_DATA(pachifev_state)
+static MACHINE_CONFIG_START( pachifev, pachifev_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS9995, XTAL_12MHz)
@@ -377,7 +375,7 @@ static MACHINE_DRIVER_START( pachifev )
/* video hardware */
- MDRV_IMPORT_FROM(tms9928a)
+ MDRV_FRAGMENT_ADD(tms9928a)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE((float)XTAL_10_738635MHz/2/342/262)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
@@ -393,7 +391,7 @@ static MACHINE_DRIVER_START( pachifev )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MDRV_SOUND_ADD("sn76_2", SN76489A, XTAL_10_738635MHz/3) /* guess */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( pachifev )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/pacland.c b/src/mame/drivers/pacland.c
index a73bab1eae6..d0ce3181dd7 100644
--- a/src/mame/drivers/pacland.c
+++ b/src/mame/drivers/pacland.c
@@ -411,7 +411,7 @@ static const namco_interface namco_config =
-static MACHINE_DRIVER_START( pacland )
+static MACHINE_CONFIG_START( pacland, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 49152000/32) /* 1.536 MHz */
@@ -446,7 +446,7 @@ static MACHINE_DRIVER_START( pacland )
MDRV_SOUND_ADD("namco", NAMCO_CUS30, 49152000/2/1024)
MDRV_SOUND_CONFIG(namco_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/pacman.c b/src/mame/drivers/pacman.c
index e254f1d6782..fa45da890d4 100644
--- a/src/mame/drivers/pacman.c
+++ b/src/mame/drivers/pacman.c
@@ -3170,7 +3170,7 @@ static const namco_interface namco_config =
*
*************************************/
-static MACHINE_DRIVER_START( pacman )
+static MACHINE_CONFIG_START( pacman, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6)
@@ -3197,65 +3197,59 @@ static MACHINE_DRIVER_START( pacman )
MDRV_SOUND_ADD("namco", NAMCO, MASTER_CLOCK/6/32)
MDRV_SOUND_CONFIG(namco_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( piranha )
+static MACHINE_CONFIG_DERIVED( piranha, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(piranha_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nmouse )
+static MACHINE_CONFIG_DERIVED( nmouse, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(nmouse_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mspacman )
+static MACHINE_CONFIG_DERIVED( mspacman, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mspacman_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( woodpek )
+static MACHINE_CONFIG_DERIVED( woodpek, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(woodpek_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( alibaba )
+static MACHINE_CONFIG_DERIVED( alibaba, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(alibaba_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dremshpr )
+static MACHINE_CONFIG_DERIVED( dremshpr, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dremshpr_map)
@@ -3265,13 +3259,12 @@ static MACHINE_DRIVER_START( dremshpr )
/* sound hardware */
MDRV_SOUND_REPLACE("namco", AY8910, 14318000/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( theglobp )
+static MACHINE_CONFIG_DERIVED( theglobp, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(epos_map)
@@ -3279,13 +3272,12 @@ static MACHINE_DRIVER_START( theglobp )
MDRV_MACHINE_START(theglobp)
MDRV_MACHINE_RESET(theglobp)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( acitya )
+static MACHINE_CONFIG_DERIVED( acitya, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(epos_map)
@@ -3293,13 +3285,12 @@ static MACHINE_DRIVER_START( acitya )
MDRV_MACHINE_START(acitya)
MDRV_MACHINE_RESET(acitya)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vanvan )
+static MACHINE_CONFIG_DERIVED( vanvan, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(vanvan_map)
@@ -3315,13 +3306,12 @@ static MACHINE_DRIVER_START( vanvan )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MDRV_SOUND_ADD("sn2", SN76496, 1789750)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bigbucks )
+static MACHINE_CONFIG_DERIVED( bigbucks, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(bigbucks_map)
@@ -3330,13 +3320,12 @@ static MACHINE_DRIVER_START( bigbucks )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( s2650games )
+static MACHINE_CONFIG_DERIVED( s2650games, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_DEVICE_REMOVE("maincpu")
MDRV_CPU_ADD("maincpu", S2650, MASTER_CLOCK/6/2) /* 2H */
@@ -3356,43 +3345,39 @@ static MACHINE_DRIVER_START( s2650games )
/* sound hardware */
MDRV_SOUND_REPLACE("namco", SN76496, MASTER_CLOCK/6) /* 1H */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( drivfrcp )
+static MACHINE_CONFIG_DERIVED( drivfrcp, s2650games )
/* basic machine hardware */
- MDRV_IMPORT_FROM(s2650games)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(drivfrcp_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( 8bpm )
+static MACHINE_CONFIG_DERIVED( 8bpm, s2650games )
/* basic machine hardware */
- MDRV_IMPORT_FROM(s2650games)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(_8bpm_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( porky )
+static MACHINE_CONFIG_DERIVED( porky, s2650games )
/* basic machine hardware */
- MDRV_IMPORT_FROM(s2650games)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(porky_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rocktrv2 )
+static MACHINE_CONFIG_DERIVED( rocktrv2, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(rocktrv2_map)
@@ -3400,13 +3385,12 @@ static MACHINE_DRIVER_START( rocktrv2 )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mschamp )
+static MACHINE_CONFIG_DERIVED( mschamp, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mschamp_map)
@@ -3414,16 +3398,15 @@ static MACHINE_DRIVER_START( mschamp )
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
MDRV_MACHINE_RESET(mschamp)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( crush4 )
+static MACHINE_CONFIG_DERIVED( crush4, mschamp )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mschamp)
MDRV_GFXDECODE(crush4)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const ay8910_interface crushs_ay8910_interface =
{
@@ -3435,10 +3418,9 @@ static const ay8910_interface crushs_ay8910_interface =
DEVCB_NULL
};
-static MACHINE_DRIVER_START( crushs )
+static MACHINE_CONFIG_DERIVED( crushs, pacman )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pacman)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(crushs_map)
@@ -3448,7 +3430,7 @@ static MACHINE_DRIVER_START( crushs )
MDRV_SOUND_REPLACE("namco", AY8912, 1789750)
MDRV_SOUND_CONFIG(crushs_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/pandoras.c b/src/mame/drivers/pandoras.c
index 44830302edb..b03fdba5fcb 100644
--- a/src/mame/drivers/pandoras.c
+++ b/src/mame/drivers/pandoras.c
@@ -349,10 +349,7 @@ static const ay8910_interface ay8910_config =
DEVCB_NULL
};
-static MACHINE_DRIVER_START( pandoras )
-
- /* driver data */
- MDRV_DRIVER_DATA(pandoras_state)
+static MACHINE_CONFIG_START( pandoras, pandoras_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/6) /* CPU A */
@@ -399,7 +396,7 @@ static MACHINE_DRIVER_START( pandoras )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/pangofun.c b/src/mame/drivers/pangofun.c
index e3073161375..99fd66f7383 100644
--- a/src/mame/drivers/pangofun.c
+++ b/src/mame/drivers/pangofun.c
@@ -110,7 +110,7 @@ static INPUT_PORTS_START( pangofun )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( pangofun )
+static MACHINE_CONFIG_START( pangofun, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I486, 14318180*2) /* I486 ?? Mhz */
MDRV_CPU_PROGRAM_MAP(pangofun_map)
@@ -127,7 +127,7 @@ static MACHINE_DRIVER_START( pangofun )
MDRV_VIDEO_START(pangofun)
MDRV_VIDEO_UPDATE(pangofun)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START(pangofun)
diff --git a/src/mame/drivers/panicr.c b/src/mame/drivers/panicr.c
index 38af35d1846..e4c9e486f22 100644
--- a/src/mame/drivers/panicr.c
+++ b/src/mame/drivers/panicr.c
@@ -361,7 +361,7 @@ static GFXDECODE_START( panicr )
GFXDECODE_ENTRY( "gfx3", 0, spritelayout, 0x200, 16 )
GFXDECODE_END
-static MACHINE_DRIVER_START( panicr )
+static MACHINE_CONFIG_START( panicr, driver_data_t )
MDRV_CPU_ADD("maincpu", V20,MASTER_CLOCK/2) /* Sony 8623h9 CXQ70116D-8 (V20 compatible) */
MDRV_CPU_PROGRAM_MAP(panicr_map)
MDRV_CPU_VBLANK_INT_HACK(panicr_interrupt,2)
@@ -392,7 +392,7 @@ static MACHINE_DRIVER_START( panicr )
MDRV_SOUND_ROUTE(0, "mono", 1.0)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( panicr )
ROM_REGION( 0x200000, "maincpu", 0 ) /* v20 main cpu */
diff --git a/src/mame/drivers/paradise.c b/src/mame/drivers/paradise.c
index 10d3a6fa952..77bc344c87e 100644
--- a/src/mame/drivers/paradise.c
+++ b/src/mame/drivers/paradise.c
@@ -562,10 +562,7 @@ static MACHINE_RESET( paradise )
state->priority = 0;
}
-static MACHINE_DRIVER_START( paradise )
-
- /* driver data */
- MDRV_DRIVER_DATA(paradise_state)
+static MACHINE_CONFIG_START( paradise, paradise_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* Z8400B - 6mhz Verified */
@@ -598,18 +595,18 @@ static MACHINE_DRIVER_START( paradise )
MDRV_OKIM6295_ADD("oki2", XTAL_12MHz/12, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( tgtball, paradise )
-static MACHINE_DRIVER_START( tgtball )
/* basic machine hardware */
- MDRV_IMPORT_FROM(paradise)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tgtball_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( torus, paradise )
-static MACHINE_DRIVER_START( torus )
/* basic machine hardware */
- MDRV_IMPORT_FROM(paradise)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(torus_map)
MDRV_CPU_IO_MAP(torus_io_map)
@@ -619,11 +616,11 @@ static MACHINE_DRIVER_START( torus )
MDRV_VIDEO_UPDATE(torus)
MDRV_DEVICE_REMOVE("oki2")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( madball, paradise )
-static MACHINE_DRIVER_START( madball )
/* basic machine hardware */
- MDRV_IMPORT_FROM(paradise)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(torus_map)
MDRV_CPU_IO_MAP(torus_io_map)
@@ -633,7 +630,7 @@ static MACHINE_DRIVER_START( madball )
MDRV_VIDEO_UPDATE(madball)
MDRV_DEVICE_REMOVE("oki2")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/paranoia.c b/src/mame/drivers/paranoia.c
index e05c3bfed7a..f7a806aa163 100644
--- a/src/mame/drivers/paranoia.c
+++ b/src/mame/drivers/paranoia.c
@@ -135,7 +135,7 @@ static const c6280_interface c6280_config =
"maincpu"
};
-static MACHINE_DRIVER_START( paranoia )
+static MACHINE_CONFIG_START( paranoia, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H6280, PCE_MAIN_CLOCK/3)
MDRV_CPU_PROGRAM_MAP(pce_mem)
@@ -171,7 +171,7 @@ static MACHINE_DRIVER_START( paranoia )
MDRV_SOUND_ROUTE(0, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START(paranoia)
ROM_REGION( 0x40000, "maincpu", 0 )
diff --git a/src/mame/drivers/parodius.c b/src/mame/drivers/parodius.c
index 7439687cc57..a627b67d0f0 100644
--- a/src/mame/drivers/parodius.c
+++ b/src/mame/drivers/parodius.c
@@ -297,10 +297,7 @@ static MACHINE_RESET( parodius )
state->videobank = 0;
}
-static MACHINE_DRIVER_START( parodius )
-
- /* driver data */
- MDRV_DRIVER_DATA(parodius_state)
+static MACHINE_CONFIG_START( parodius, parodius_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI, 3000000) /* 053248 */
@@ -341,7 +338,7 @@ static MACHINE_DRIVER_START( parodius )
MDRV_SOUND_ADD("k053260", K053260, 3579545)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.70)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/pasha2.c b/src/mame/drivers/pasha2.c
index 0505daf792c..73abbeb035c 100644
--- a/src/mame/drivers/pasha2.c
+++ b/src/mame/drivers/pasha2.c
@@ -413,10 +413,7 @@ static MACHINE_RESET( pasha2 )
state->vbuffer = 0;
}
-static MACHINE_DRIVER_START( pasha2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(pasha2_state)
+static MACHINE_CONFIG_START( pasha2, pasha2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", E116XT, 20000000*4) /* 4x internal multiplier */
@@ -451,7 +448,7 @@ static MACHINE_DRIVER_START( pasha2 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
//and ATMEL DREAM SAM9773
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( pasha2 )
ROM_REGION16_BE( 0x80000, "user1", 0 ) /* Hyperstone CPU Code */
diff --git a/src/mame/drivers/pass.c b/src/mame/drivers/pass.c
index 404845c9382..52097601311 100644
--- a/src/mame/drivers/pass.c
+++ b/src/mame/drivers/pass.c
@@ -231,9 +231,7 @@ static GFXDECODE_START( pass )
GFXDECODE_END
/* todo : is this correct? */
-static MACHINE_DRIVER_START( pass )
-
- MDRV_DRIVER_DATA( pass_state )
+static MACHINE_CONFIG_START( pass, pass_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14318180/2 )
@@ -267,7 +265,7 @@ static MACHINE_DRIVER_START( pass )
MDRV_OKIM6295_ADD("oki", 792000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( pass )
diff --git a/src/mame/drivers/pastelg.c b/src/mame/drivers/pastelg.c
index 5ec3cc31abd..c77adb62e78 100644
--- a/src/mame/drivers/pastelg.c
+++ b/src/mame/drivers/pastelg.c
@@ -401,7 +401,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( pastelg )
+static MACHINE_CONFIG_START( pastelg, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 19968000/8) /* 2.496 MHz ? */
@@ -436,7 +436,7 @@ static MACHINE_DRIVER_START( pastelg )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -461,7 +461,7 @@ Note
*/
-static MACHINE_DRIVER_START( threeds )
+static MACHINE_CONFIG_START( threeds, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 19968000/8) /* 2.496 MHz ? */
@@ -495,7 +495,7 @@ static MACHINE_DRIVER_START( threeds )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( pastelg )
diff --git a/src/mame/drivers/pbaction.c b/src/mame/drivers/pbaction.c
index 1a4f2fe93f3..d305cc1004f 100644
--- a/src/mame/drivers/pbaction.c
+++ b/src/mame/drivers/pbaction.c
@@ -269,10 +269,7 @@ static MACHINE_RESET( pbaction )
state->scroll = 0;
}
-static MACHINE_DRIVER_START( pbaction )
-
- /* driver data */
- MDRV_DRIVER_DATA(pbaction_state)
+static MACHINE_CONFIG_START( pbaction, pbaction_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz? */
@@ -313,7 +310,7 @@ static MACHINE_DRIVER_START( pbaction )
MDRV_SOUND_ADD("ay3", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/pcat_dyn.c b/src/mame/drivers/pcat_dyn.c
index f8345c7b784..b5f39512cd2 100644
--- a/src/mame/drivers/pcat_dyn.c
+++ b/src/mame/drivers/pcat_dyn.c
@@ -510,7 +510,7 @@ static GFXDECODE_START( pcat_dyn )
// there's a 8x16 charset just after the 8x8 one
GFXDECODE_END
-static MACHINE_DRIVER_START( pcat_dyn )
+static MACHINE_CONFIG_START( pcat_dyn, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I486, 40000000) /* Am486 DX-40 */
MDRV_CPU_PROGRAM_MAP(pcat_map)
@@ -528,7 +528,7 @@ static MACHINE_DRIVER_START( pcat_dyn )
MDRV_MACHINE_START(pcat_dyn)
MDRV_NVRAM_HANDLER( mc146818 )
-// MDRV_IMPORT_FROM( at_kbdc8042 )
+// MDRV_FRAGMENT_ADD( at_kbdc8042 )
MDRV_PIC8259_ADD( "pic8259_1", pic8259_1_config )
MDRV_PIC8259_ADD( "pic8259_2", pic8259_2_config )
MDRV_I8237_ADD( "dma8237_1", XTAL_14_31818MHz/3, dma8237_1_config )
@@ -541,7 +541,7 @@ static MACHINE_DRIVER_START( pcat_dyn )
MDRV_VIDEO_START(pcat_dyn)
MDRV_VIDEO_UPDATE(pcat_dyn)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************
*
diff --git a/src/mame/drivers/pcat_nit.c b/src/mame/drivers/pcat_nit.c
index a90a8a82992..551b8ef12d8 100644
--- a/src/mame/drivers/pcat_nit.c
+++ b/src/mame/drivers/pcat_nit.c
@@ -224,14 +224,14 @@ static MACHINE_START( streetg2 )
microtouch_init(machine, pcat_nit_microtouch_tx_callback, NULL);
}
-static MACHINE_DRIVER_START( pcat_nit )
+static MACHINE_CONFIG_START( pcat_nit, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I386, 14318180*2) /* I386 ?? Mhz */
MDRV_CPU_PROGRAM_MAP(pcat_map)
MDRV_CPU_IO_MAP(pcat_nit_io)
/* video hardware */
- MDRV_IMPORT_FROM( pcvideo_vga )
+ MDRV_FRAGMENT_ADD( pcvideo_vga )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE(60)
@@ -240,11 +240,11 @@ static MACHINE_DRIVER_START( pcat_nit )
MDRV_MACHINE_START(streetg2)
MDRV_NVRAM_HANDLER( mc146818 )
-// MDRV_IMPORT_FROM( at_kbdc8042 )
- MDRV_IMPORT_FROM( pcat_common )
+// MDRV_FRAGMENT_ADD( at_kbdc8042 )
+ MDRV_FRAGMENT_ADD( pcat_common )
MDRV_NS16450_ADD( "ns16450_0", pcat_nit_com0_interface )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************
*
diff --git a/src/mame/drivers/pcktgal.c b/src/mame/drivers/pcktgal.c
index c1afad2f4f5..dc748a4c18d 100644
--- a/src/mame/drivers/pcktgal.c
+++ b/src/mame/drivers/pcktgal.c
@@ -221,7 +221,7 @@ static const msm5205_interface msm5205_config =
/***************************************************************************/
-static MACHINE_DRIVER_START( pcktgal )
+static MACHINE_CONFIG_START( pcktgal, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 2000000)
@@ -260,13 +260,12 @@ static MACHINE_DRIVER_START( pcktgal )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bootleg )
- MDRV_IMPORT_FROM(pcktgal)
+static MACHINE_CONFIG_DERIVED( bootleg, pcktgal )
MDRV_GFXDECODE(bootleg)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/pcxt.c b/src/mame/drivers/pcxt.c
index f5911ee0af2..51a3273cdc0 100644
--- a/src/mame/drivers/pcxt.c
+++ b/src/mame/drivers/pcxt.c
@@ -917,7 +917,7 @@ static MACHINE_RESET( filetto )
filetto_devices.dma8237_2 = machine->device( "dma8237_2" );
}
-static MACHINE_DRIVER_START( filetto )
+static MACHINE_CONFIG_START( filetto, driver_data_t )
MDRV_CPU_ADD("maincpu", I8088, 8000000) //or regular PC-XT 14318180/3 clock?
MDRV_CPU_PROGRAM_MAP(filetto_map)
MDRV_CPU_IO_MAP(filetto_io)
@@ -960,9 +960,9 @@ static MACHINE_DRIVER_START( filetto )
// PC "buzzer" sound
MDRV_SOUND_ADD("beep", BEEP, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tetriskr )
+static MACHINE_CONFIG_START( tetriskr, driver_data_t )
MDRV_CPU_ADD("maincpu", I8088, 14318180/3)
MDRV_CPU_PROGRAM_MAP(filetto_map)
MDRV_CPU_IO_MAP(tetriskr_io)
@@ -1002,7 +1002,7 @@ static MACHINE_DRIVER_START( tetriskr )
// PC "buzzer" sound
MDRV_SOUND_ADD("beep", BEEP, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( filetto )
ROM_REGION( 0x100000, "maincpu", 0 )
diff --git a/src/mame/drivers/pengadvb.c b/src/mame/drivers/pengadvb.c
index fbe2e1564c6..7ddc8b015a4 100644
--- a/src/mame/drivers/pengadvb.c
+++ b/src/mame/drivers/pengadvb.c
@@ -259,7 +259,7 @@ static INTERRUPT_GEN( pengadvb_interrupt )
}
-static MACHINE_DRIVER_START( pengadvb )
+static MACHINE_CONFIG_START( pengadvb, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80, XTAL_10_738635MHz/3) /* 3.579545 Mhz */
MDRV_CPU_PROGRAM_MAP(program_mem)
@@ -272,7 +272,7 @@ static MACHINE_DRIVER_START( pengadvb )
MDRV_I8255A_ADD( "ppi8255", pengadvb_ppi8255_interface)
/* video hardware */
- MDRV_IMPORT_FROM(tms9928a)
+ MDRV_FRAGMENT_ADD(tms9928a)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE((float)XTAL_10_738635MHz/2/342/262)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -283,7 +283,7 @@ static MACHINE_DRIVER_START( pengadvb )
MDRV_SOUND_ADD("aysnd", AY8910, (float)XTAL_10_738635MHz/6)
MDRV_SOUND_CONFIG(pengadvb_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static void pengadvb_decrypt(running_machine *machine, const char* region)
{
diff --git a/src/mame/drivers/pengo.c b/src/mame/drivers/pengo.c
index 748a055adcf..fc77b39398a 100644
--- a/src/mame/drivers/pengo.c
+++ b/src/mame/drivers/pengo.c
@@ -344,7 +344,7 @@ static const namco_interface namco_config =
*
*************************************/
-static MACHINE_DRIVER_START( pengo )
+static MACHINE_CONFIG_START( pengo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6)
@@ -369,20 +369,19 @@ static MACHINE_DRIVER_START( pengo )
MDRV_SOUND_ADD("namco", NAMCO, MASTER_CLOCK/6/32)
MDRV_SOUND_CONFIG(namco_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jrpacmbl )
+static MACHINE_CONFIG_DERIVED( jrpacmbl, pengo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(pengo)
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(jrpacmbl_map)
MDRV_VIDEO_START(jrpacman)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/peplus.c b/src/mame/drivers/peplus.c
index 80ac728116c..e60e23c8c32 100644
--- a/src/mame/drivers/peplus.c
+++ b/src/mame/drivers/peplus.c
@@ -1021,7 +1021,7 @@ static MACHINE_RESET( peplus )
* Machine Driver *
*************************/
-static MACHINE_DRIVER_START( peplus )
+static MACHINE_CONFIG_START( peplus, driver_data_t )
// basic machine hardware
MDRV_CPU_ADD("maincpu", I80C32, CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(peplus_map)
@@ -1052,7 +1052,7 @@ static MACHINE_DRIVER_START( peplus )
MDRV_SOUND_ADD("aysnd", AY8912, SOUND_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*****************
diff --git a/src/mame/drivers/pgm.c b/src/mame/drivers/pgm.c
index 8dbe566ec7c..17282364f92 100644
--- a/src/mame/drivers/pgm.c
+++ b/src/mame/drivers/pgm.c
@@ -1366,10 +1366,7 @@ static MACHINE_RESET( pgm )
state->cal_cnt = 0;
}
-static MACHINE_DRIVER_START( pgm )
-
- /* driver data */
- MDRV_DRIVER_DATA(pgm_state)
+static MACHINE_CONFIG_START( pgm, pgm_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 20000000) /* 20 mhz! verified on real board */
@@ -1404,31 +1401,28 @@ static MACHINE_DRIVER_START( pgm )
MDRV_SOUND_ADD("ics", ICS2115, 0)
MDRV_SOUND_CONFIG(pgm_ics2115_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 5.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( drgw2 )
- MDRV_IMPORT_FROM(pgm)
+static MACHINE_CONFIG_DERIVED( drgw2, pgm )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT_HACK(drgw_interrupt,2) // needs an extra IRQ, puzzli2 doesn't want this irq!
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_RESET( killbld );
-static MACHINE_DRIVER_START( killbld )
- MDRV_IMPORT_FROM(pgm)
+static MACHINE_CONFIG_DERIVED( killbld, pgm )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(killbld_mem)
MDRV_MACHINE_RESET(killbld)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_RESET( dw3 );
-static MACHINE_DRIVER_START( dw3 )
- MDRV_IMPORT_FROM(pgm)
+static MACHINE_CONFIG_DERIVED( dw3, pgm )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(killbld_mem)
@@ -1436,22 +1430,20 @@ static MACHINE_DRIVER_START( dw3 )
MDRV_MACHINE_RESET(dw3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_RESET( olds );
-static MACHINE_DRIVER_START( olds )
- MDRV_IMPORT_FROM(pgm)
+static MACHINE_CONFIG_DERIVED( olds, pgm )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(olds_mem)
MDRV_MACHINE_RESET(olds)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kov )
- MDRV_IMPORT_FROM(pgm)
+static MACHINE_CONFIG_DERIVED( kov, pgm )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(kovsh_mem)
@@ -1459,10 +1451,9 @@ static MACHINE_DRIVER_START( kov )
/* protection CPU */
MDRV_CPU_ADD("prot", ARM7, 20000000) // 55857E/F/G
MDRV_CPU_PROGRAM_MAP(kovsh_arm7_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kov_disabled_arm )
- MDRV_IMPORT_FROM(pgm)
+static MACHINE_CONFIG_DERIVED( kov_disabled_arm, pgm )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(kovsh_mem)
@@ -1472,11 +1463,10 @@ static MACHINE_DRIVER_START( kov_disabled_arm )
MDRV_CPU_ADD("prot", ARM7, 20000000) // 55857E/F/G
MDRV_CPU_PROGRAM_MAP(kovsh_arm7_map)
MDRV_DEVICE_DISABLE()
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kov2 )
- MDRV_IMPORT_FROM(pgm)
+static MACHINE_CONFIG_DERIVED( kov2, pgm )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(kov2_mem)
@@ -1484,10 +1474,9 @@ static MACHINE_DRIVER_START( kov2 )
/* protection CPU */
MDRV_CPU_ADD("prot", ARM7, 20000000) // 55857F
MDRV_CPU_PROGRAM_MAP(arm7_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( svg )
- MDRV_IMPORT_FROM(pgm)
+static MACHINE_CONFIG_DERIVED( svg, pgm )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(svg_68k_mem)
@@ -1496,11 +1485,10 @@ static MACHINE_DRIVER_START( svg )
/* protection CPU */
MDRV_CPU_ADD("prot", ARM7, 20000000) // 55857G
MDRV_CPU_PROGRAM_MAP(svg_arm7_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#if 0
-static MACHINE_DRIVER_START( cavepgm )
- MDRV_IMPORT_FROM(pgm)
+static MACHINE_CONFIG_DERIVED( cavepgm, pgm )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(cavepgm_mem)
@@ -1508,7 +1496,7 @@ static MACHINE_DRIVER_START( cavepgm )
/* protection CPU */
// MDRV_CPU_ADD("prot", ARM7, 20000000) // ???
// MDRV_CPU_PROGRAM_MAP(arm7_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#endif
diff --git a/src/mame/drivers/phoenix.c b/src/mame/drivers/phoenix.c
index d212494b12a..86bb57762f6 100644
--- a/src/mame/drivers/phoenix.c
+++ b/src/mame/drivers/phoenix.c
@@ -449,7 +449,7 @@ static MACHINE_RESET( phoenix )
}
-static MACHINE_DRIVER_START( phoenix )
+static MACHINE_CONFIG_START( phoenix, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8085A, CPU_CLOCK) /* 2.75 MHz */
@@ -484,13 +484,12 @@ static MACHINE_DRIVER_START( phoenix )
MDRV_SOUND_ADD("discrete", DISCRETE, 120000)
MDRV_SOUND_CONFIG_DISCRETE(phoenix)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.6)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pleiads )
+static MACHINE_CONFIG_DERIVED( pleiads, phoenix )
/* basic machine hardware */
- MDRV_IMPORT_FROM(phoenix)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(pleiads_memory_map)
@@ -508,7 +507,7 @@ static MACHINE_DRIVER_START( pleiads )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MDRV_DEVICE_REMOVE("discrete")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Same as Phoenix, but uses an AY8910 and an extra visible line (column) */
@@ -521,7 +520,7 @@ static I8085_CONFIG( survival_i8085_config )
DEVCB_NULL /* SOD changed callback (8085A only) */
};
-static MACHINE_DRIVER_START( survival )
+static MACHINE_CONFIG_START( survival, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8085A, CPU_CLOCK) /* 5.50 MHz */
@@ -553,18 +552,17 @@ static MACHINE_DRIVER_START( survival )
MDRV_SOUND_ADD("aysnd", AY8910, 11000000/4)
MDRV_SOUND_CONFIG(survival_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Uses a Z80 */
-static MACHINE_DRIVER_START( condor )
+static MACHINE_CONFIG_DERIVED( condor, phoenix )
/* basic machine hardware */
- MDRV_IMPORT_FROM(phoenix)
/* FIXME: Verify clock. This is most likely 11MHz/2 */
MDRV_CPU_REPLACE("maincpu", Z80, 11000000/4) /* 2.75 MHz??? */
MDRV_CPU_PROGRAM_MAP(phoenix_memory_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/photon.c b/src/mame/drivers/photon.c
index c386b380ef3..2dfb65967b7 100644
--- a/src/mame/drivers/photon.c
+++ b/src/mame/drivers/photon.c
@@ -192,7 +192,7 @@ static VIDEO_UPDATE( photon )
return pk8000_video_update(screen, bitmap, cliprect, memory_region(screen->machine, "maincpu"));
}
-static MACHINE_DRIVER_START( photon )
+static MACHINE_CONFIG_START( photon, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",I8080, 1780000)
@@ -222,7 +222,7 @@ static MACHINE_DRIVER_START( photon )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("speaker", SPEAKER, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
Dump was made using custom adaptor, hence it is marked as bad dump.
diff --git a/src/mame/drivers/photon2.c b/src/mame/drivers/photon2.c
index caf5ad61af8..400864ba66e 100644
--- a/src/mame/drivers/photon2.c
+++ b/src/mame/drivers/photon2.c
@@ -296,7 +296,7 @@ static MACHINE_RESET( photon2 )
memory_set_bankptr(machine, "bank1", memory_region(machine, "maincpu"));
}
-static MACHINE_DRIVER_START( photon2 )
+static MACHINE_CONFIG_START( photon2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3500000) /* 3.5 MHz */
MDRV_CPU_PROGRAM_MAP(spectrum_mem)
@@ -325,7 +325,7 @@ static MACHINE_DRIVER_START( photon2 )
MDRV_SOUND_ADD("speaker", SPEAKER, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/photoply.c b/src/mame/drivers/photoply.c
index e4b1e2e57ce..d9a4f274f7b 100644
--- a/src/mame/drivers/photoply.c
+++ b/src/mame/drivers/photoply.c
@@ -495,7 +495,7 @@ static GFXDECODE_START( photoply )
GFXDECODE_END
-static MACHINE_DRIVER_START( photoply )
+static MACHINE_CONFIG_START( photoply, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I486, 75000000) /* I486DX4, 75 or 100 Mhz */
MDRV_CPU_PROGRAM_MAP(photoply_map)
@@ -514,7 +514,7 @@ static MACHINE_DRIVER_START( photoply )
MDRV_MACHINE_START(photoply)
MDRV_NVRAM_HANDLER( mc146818 )
-// MDRV_IMPORT_FROM( at_kbdc8042 )
+// MDRV_FRAGMENT_ADD( at_kbdc8042 )
MDRV_PIC8259_ADD( "pic8259_1", pic8259_1_config )
MDRV_PIC8259_ADD( "pic8259_2", pic8259_2_config )
MDRV_I8237_ADD( "dma8237_1", XTAL_14_31818MHz/3, dma8237_1_config )
@@ -527,7 +527,7 @@ static MACHINE_DRIVER_START( photoply )
MDRV_VIDEO_START(photoply)
MDRV_VIDEO_UPDATE(photoply)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START(photoply)
diff --git a/src/mame/drivers/pingpong.c b/src/mame/drivers/pingpong.c
index 3eaf0b9f965..31d142a73e4 100644
--- a/src/mame/drivers/pingpong.c
+++ b/src/mame/drivers/pingpong.c
@@ -457,7 +457,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( pingpong )
+static MACHINE_CONFIG_START( pingpong, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,18432000/6) /* 3.072 MHz (probably) */
@@ -484,17 +484,16 @@ static MACHINE_DRIVER_START( pingpong )
MDRV_SOUND_ADD("snsnd", SN76496, 18432000/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* too fast! */
-static MACHINE_DRIVER_START( merlinmm )
- MDRV_IMPORT_FROM( pingpong )
+static MACHINE_CONFIG_DERIVED( merlinmm, pingpong )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(merlinmm_map)
MDRV_CPU_VBLANK_INT_HACK(pingpong_interrupt,2)
MDRV_NVRAM_HANDLER(generic_0fill)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/pinkiri8.c b/src/mame/drivers/pinkiri8.c
index 6a72e912f3e..bda0f74af7f 100644
--- a/src/mame/drivers/pinkiri8.c
+++ b/src/mame/drivers/pinkiri8.c
@@ -1107,7 +1107,7 @@ static GFXDECODE_START( pinkiri8 )
GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 0x100 )
GFXDECODE_END
-static MACHINE_DRIVER_START( pinkiri8 )
+static MACHINE_CONFIG_START( pinkiri8, driver_data_t )
MDRV_CPU_ADD("maincpu",Z180,16000000)
MDRV_CPU_PROGRAM_MAP(pinkiri8_map)
MDRV_CPU_IO_MAP(pinkiri8_io)
@@ -1132,7 +1132,7 @@ static MACHINE_DRIVER_START( pinkiri8 )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/pipedrm.c b/src/mame/drivers/pipedrm.c
index 3359d8be050..6ffe76fe41e 100644
--- a/src/mame/drivers/pipedrm.c
+++ b/src/mame/drivers/pipedrm.c
@@ -633,10 +633,7 @@ static MACHINE_RESET( pipedrm )
state->crtc_data[i] = 0;
}
-static MACHINE_DRIVER_START( pipedrm )
-
- /* driver data */
- MDRV_DRIVER_DATA(fromance_state)
+static MACHINE_CONFIG_START( pipedrm, fromance_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2)
@@ -673,13 +670,10 @@ static MACHINE_DRIVER_START( pipedrm )
MDRV_SOUND_ROUTE(0, "mono", 0.50)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
MDRV_SOUND_ROUTE(2, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hatris )
- /* driver data */
- MDRV_DRIVER_DATA(fromance_state)
+static MACHINE_CONFIG_START( hatris, fromance_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2)
@@ -716,7 +710,7 @@ static MACHINE_DRIVER_START( hatris )
MDRV_SOUND_ROUTE(0, "mono", 0.50)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
MDRV_SOUND_ROUTE(2, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/pipeline.c b/src/mame/drivers/pipeline.c
index 15f35d0666e..300cd5042b8 100644
--- a/src/mame/drivers/pipeline.c
+++ b/src/mame/drivers/pipeline.c
@@ -358,7 +358,7 @@ static PALETTE_INIT(pipeline)
}
}
-static MACHINE_DRIVER_START( pipeline )
+static MACHINE_CONFIG_START( pipeline, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 7372800/2)
@@ -401,7 +401,7 @@ static MACHINE_DRIVER_START( pipeline )
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( pipeline )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/pirates.c b/src/mame/drivers/pirates.c
index 95f0e2daebb..f6a53a00bc0 100644
--- a/src/mame/drivers/pirates.c
+++ b/src/mame/drivers/pirates.c
@@ -270,7 +270,7 @@ GFXDECODE_END
/* Machine Driver + Related bits */
-static MACHINE_DRIVER_START( pirates )
+static MACHINE_CONFIG_START( pirates, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16mhz */
MDRV_CPU_PROGRAM_MAP(pirates_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -296,7 +296,7 @@ static MACHINE_DRIVER_START( pirates )
MDRV_OKIM6295_ADD("oki", 1333333, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/pitnrun.c b/src/mame/drivers/pitnrun.c
index 259d22d108c..b9b5fa34b93 100644
--- a/src/mame/drivers/pitnrun.c
+++ b/src/mame/drivers/pitnrun.c
@@ -228,7 +228,7 @@ static GFXDECODE_START( pitnrun )
GFXDECODE_ENTRY( "gfx1", 0, spritelayout, 0, 4 )
GFXDECODE_END
-static MACHINE_DRIVER_START( pitnrun )
+static MACHINE_CONFIG_START( pitnrun, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80,XTAL_18_432MHz/6) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(pitnrun_map)
MDRV_CPU_VBLANK_INT("screen", pitnrun_nmi_source)
@@ -269,7 +269,7 @@ static MACHINE_DRIVER_START( pitnrun )
MDRV_SOUND_ADD("ay2", AY8910, XTAL_18_432MHz/12) /* verified on pcb */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( pitnrun )
diff --git a/src/mame/drivers/pkscram.c b/src/mame/drivers/pkscram.c
index e613dd05590..e35b6585a17 100644
--- a/src/mame/drivers/pkscram.c
+++ b/src/mame/drivers/pkscram.c
@@ -272,7 +272,7 @@ static MACHINE_RESET( pkscramble)
scanline_timer->adjust(machine->primary_screen->time_until_pos(interrupt_scanline), interrupt_scanline);
}
-static MACHINE_DRIVER_START( pkscramble )
+static MACHINE_CONFIG_START( pkscramble, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000 )
MDRV_CPU_PROGRAM_MAP(pkscramble_map)
@@ -305,7 +305,7 @@ static MACHINE_DRIVER_START( pkscramble )
MDRV_SOUND_ADD("ymsnd", YM2203, 12000000/4)
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( pkscram )
diff --git a/src/mame/drivers/pktgaldx.c b/src/mame/drivers/pktgaldx.c
index 41b894c8097..9a7eb5a5ab5 100644
--- a/src/mame/drivers/pktgaldx.c
+++ b/src/mame/drivers/pktgaldx.c
@@ -318,10 +318,7 @@ static MACHINE_START( pktgaldx )
state->deco16ic = machine->device("deco_custom");
}
-static MACHINE_DRIVER_START( pktgaldx )
-
- /* driver data */
- MDRV_DRIVER_DATA(pktgaldx_state)
+static MACHINE_CONFIG_START( pktgaldx, pktgaldx_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -355,13 +352,10 @@ static MACHINE_DRIVER_START( pktgaldx )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.60)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.60)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pktgaldb )
- /* driver data */
- MDRV_DRIVER_DATA(pktgaldx_state)
+static MACHINE_CONFIG_START( pktgaldb, pktgaldx_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -393,7 +387,7 @@ static MACHINE_DRIVER_START( pktgaldb )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.60)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( pktgaldx )
diff --git a/src/mame/drivers/playch10.c b/src/mame/drivers/playch10.c
index e7d708c8e32..e07c1676c03 100644
--- a/src/mame/drivers/playch10.c
+++ b/src/mame/drivers/playch10.c
@@ -684,7 +684,7 @@ static const nes_interface nes_config =
};
-static MACHINE_DRIVER_START( playch10 )
+static MACHINE_CONFIG_START( playch10, driver_data_t )
// basic machine hardware
MDRV_CPU_ADD("maincpu", Z80, 8000000/2) // 4 MHz
MDRV_CPU_PROGRAM_MAP(bios_map)
@@ -730,21 +730,19 @@ static MACHINE_DRIVER_START( playch10 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MDRV_RP5H01_ADD("rp5h01")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( playchnv )
- MDRV_IMPORT_FROM(playch10)
+static MACHINE_CONFIG_DERIVED( playchnv, playch10 )
MDRV_NVRAM_HANDLER(playch10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( playch10_hboard )
- MDRV_IMPORT_FROM(playch10)
+static MACHINE_CONFIG_DERIVED( playch10_hboard, playch10 )
MDRV_VIDEO_START(playch10_hboard)
MDRV_MACHINE_START(playch10_hboard)
MDRV_DEVICE_REMOVE("ppu")
MDRV_PPU2C03B_ADD("ppu", playch10_ppu_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/playmark.c b/src/mame/drivers/playmark.c
index 98dffb3b46b..f8649317da7 100644
--- a/src/mame/drivers/playmark.c
+++ b/src/mame/drivers/playmark.c
@@ -945,10 +945,7 @@ static MACHINE_RESET( playmark )
state->old_oki_bank = 0;
}
-static MACHINE_DRIVER_START( bigtwin )
-
- /* driver data */
- MDRV_DRIVER_DATA(playmark_state)
+static MACHINE_CONFIG_START( bigtwin, playmark_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -981,13 +978,10 @@ static MACHINE_DRIVER_START( bigtwin )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wbeachvl )
- /* driver data */
- MDRV_DRIVER_DATA(playmark_state)
+static MACHINE_CONFIG_START( wbeachvl, playmark_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -1023,12 +1017,9 @@ static MACHINE_DRIVER_START( wbeachvl )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( excelsr )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(playmark_state)
+static MACHINE_CONFIG_START( excelsr, playmark_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -1061,12 +1052,9 @@ static MACHINE_DRIVER_START( excelsr )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hotmind )
-
- /* driver data */
- MDRV_DRIVER_DATA(playmark_state)
+static MACHINE_CONFIG_START( hotmind, playmark_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz/2) /* verified on pcb */
@@ -1102,12 +1090,9 @@ static MACHINE_DRIVER_START( hotmind )
MDRV_OKIM6295_ADD("oki", XTAL_1MHz, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( hrdtimes )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(playmark_state)
+static MACHINE_CONFIG_START( hrdtimes, playmark_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz/2) /* verified on pcb */
@@ -1140,7 +1125,7 @@ static MACHINE_DRIVER_START( hrdtimes )
MDRV_OKIM6295_ADD("oki", XTAL_1MHz, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/plygonet.c b/src/mame/drivers/plygonet.c
index eac08c6d5e5..e0027e18531 100644
--- a/src/mame/drivers/plygonet.c
+++ b/src/mame/drivers/plygonet.c
@@ -636,9 +636,7 @@ static const k053936_interface polygonet_k053936_intf =
0, 0, 0 /* wrap, xoff, yoff */
};
-static MACHINE_DRIVER_START( plygonet )
-
- MDRV_DRIVER_DATA( polygonet_state )
+static MACHINE_CONFIG_START( plygonet, polygonet_state )
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz (xtal is 32.0 MHz) */
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -688,7 +686,7 @@ static MACHINE_DRIVER_START( plygonet )
MDRV_SOUND_CONFIG(k054539_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.75)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**********************************************************************************/
diff --git a/src/mame/drivers/pntnpuzl.c b/src/mame/drivers/pntnpuzl.c
index 4f713eea39f..ca89ac552d6 100644
--- a/src/mame/drivers/pntnpuzl.c
+++ b/src/mame/drivers/pntnpuzl.c
@@ -436,7 +436,7 @@ INPUT_PORTS_END
-static MACHINE_DRIVER_START( pntnpuzl )
+static MACHINE_CONFIG_START( pntnpuzl, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 12000000)//??
MDRV_CPU_PROGRAM_MAP(pntnpuzl_map)
MDRV_CPU_VBLANK_INT("screen", pntnpuzl_irq) // irq1 = coin irq2 = service irq4 = coin
@@ -455,7 +455,7 @@ static MACHINE_DRIVER_START( pntnpuzl )
MDRV_VIDEO_START(pntnpuzl)
MDRV_VIDEO_UPDATE(pntnpuzl)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( pntnpuzl )
ROM_REGION( 0x80000, "maincpu", 0 ) /* 68000 Code */
diff --git a/src/mame/drivers/pokechmp.c b/src/mame/drivers/pokechmp.c
index 0ef029614f3..97e513ac22b 100644
--- a/src/mame/drivers/pokechmp.c
+++ b/src/mame/drivers/pokechmp.c
@@ -228,7 +228,7 @@ static GFXDECODE_START( pokechmp )
GFXDECODE_END
-static MACHINE_DRIVER_START( pokechmp )
+static MACHINE_CONFIG_START( pokechmp, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 4000000)
@@ -265,7 +265,7 @@ static MACHINE_DRIVER_START( pokechmp )
MDRV_OKIM6295_ADD("oki", 4000000/4, OKIM6295_PIN7_HIGH) // ?? unknown frequency
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) /* sound fx */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT( pokechmp )
{
diff --git a/src/mame/drivers/poker72.c b/src/mame/drivers/poker72.c
index 4b4a706b4fa..5e36e804759 100644
--- a/src/mame/drivers/poker72.c
+++ b/src/mame/drivers/poker72.c
@@ -329,7 +329,7 @@ static MACHINE_RESET( poker72 )
memory_set_bankptr(machine, "bank1", &ROM[0]);
}
-static MACHINE_DRIVER_START( poker72 )
+static MACHINE_CONFIG_START( poker72, driver_data_t )
/* basic machine hardware */
@@ -359,7 +359,7 @@ static MACHINE_DRIVER_START( poker72 )
MDRV_SOUND_ADD("ay", AY8910, 8000000/8) /* ? Mhz */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/polepos.c b/src/mame/drivers/polepos.c
index 0b4391068f7..fdbed8d036e 100644
--- a/src/mame/drivers/polepos.c
+++ b/src/mame/drivers/polepos.c
@@ -863,7 +863,7 @@ static const namco_interface namco_config =
* Machine driver
*********************************************************************/
-static MACHINE_DRIVER_START( polepos )
+static MACHINE_CONFIG_START( polepos, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/8) /* 3.072 MHz */
@@ -930,7 +930,7 @@ static MACHINE_DRIVER_START( polepos )
MDRV_SOUND_ADD("polepos", POLEPOS, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90 * 0.77)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90 * 0.77)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* doesn't exist on the bootleg, but required for now or the game only boots in test mode!
- they probably simulate some of the logic */
@@ -949,7 +949,7 @@ static const namco_51xx_interface namco_51xx_bl_intf =
};
-static MACHINE_DRIVER_START( topracern )
+static MACHINE_CONFIG_START( topracern, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/8) /* 3.072 MHz */
@@ -1004,7 +1004,7 @@ static MACHINE_DRIVER_START( topracern )
MDRV_SOUND_ADD("polepos", POLEPOS, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.90 * 0.77)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.90 * 0.77)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static ADDRESS_MAP_START( sound_z80_bootleg_map, ADDRESS_SPACE_PROGRAM, 8 )
@@ -1016,8 +1016,7 @@ static ADDRESS_MAP_START( sound_z80_bootleg_iomap, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( polepos2bi )
- MDRV_IMPORT_FROM(topracern)
+static MACHINE_CONFIG_DERIVED( polepos2bi, topracern )
MDRV_CPU_ADD("soundz80bl", Z80, MASTER_CLOCK/8) /*? MHz */
MDRV_CPU_PROGRAM_MAP(sound_z80_bootleg_map)
@@ -1026,7 +1025,7 @@ static MACHINE_DRIVER_START( polepos2bi )
MDRV_SOUND_ADD("tms", TMS5220, 600000) /* ? Mhz */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/policetr.c b/src/mame/drivers/policetr.c
index 1017cf77c7b..0c5d9e178e9 100644
--- a/src/mame/drivers/policetr.c
+++ b/src/mame/drivers/policetr.c
@@ -425,7 +425,7 @@ static const r3000_cpu_core r3000_config =
};
-static MACHINE_DRIVER_START( policetr )
+static MACHINE_CONFIG_START( policetr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R3000BE, MASTER_CLOCK/2)
@@ -455,16 +455,15 @@ static MACHINE_DRIVER_START( policetr )
MDRV_SOUND_ADD("bsmt", BSMT2000, MASTER_CLOCK/2)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sshooter )
- MDRV_IMPORT_FROM(policetr)
+static MACHINE_CONFIG_DERIVED( sshooter, policetr )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sshooter_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/polyplay.c b/src/mame/drivers/polyplay.c
index a0ce2240ff2..d151ea40135 100644
--- a/src/mame/drivers/polyplay.c
+++ b/src/mame/drivers/polyplay.c
@@ -276,7 +276,7 @@ GFXDECODE_END
/* the machine driver */
-static MACHINE_DRIVER_START( polyplay )
+static MACHINE_CONFIG_START( polyplay, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 9830400/4)
@@ -310,7 +310,7 @@ static MACHINE_DRIVER_START( polyplay )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(polyplay_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROM loading and mapping */
diff --git a/src/mame/drivers/poo.c b/src/mame/drivers/poo.c
index 0327f15d488..42cbefb24d5 100644
--- a/src/mame/drivers/poo.c
+++ b/src/mame/drivers/poo.c
@@ -310,7 +310,7 @@ static const ay8910_interface ay8910_config =
DEVCB_NULL
};
-static MACHINE_DRIVER_START( unclepoo )
+static MACHINE_CONFIG_START( unclepoo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,18000000/6) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(unclepoo_main_map)
@@ -342,7 +342,7 @@ static MACHINE_DRIVER_START( unclepoo )
MDRV_SOUND_ADD("ay", AY8910, 18000000/12) /* ? Mhz */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/poolshrk.c b/src/mame/drivers/poolshrk.c
index 189960fbd2a..976d1563917 100644
--- a/src/mame/drivers/poolshrk.c
+++ b/src/mame/drivers/poolshrk.c
@@ -212,7 +212,7 @@ static PALETTE_INIT( poolshrk )
}
-static MACHINE_DRIVER_START( poolshrk )
+static MACHINE_CONFIG_START( poolshrk, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, 11055000 / 8) /* ? */
@@ -238,7 +238,7 @@ static MACHINE_DRIVER_START( poolshrk )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(poolshrk)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( poolshrk )
diff --git a/src/mame/drivers/pooyan.c b/src/mame/drivers/pooyan.c
index 739aed2dd0e..bb80e1f357c 100644
--- a/src/mame/drivers/pooyan.c
+++ b/src/mame/drivers/pooyan.c
@@ -222,10 +222,7 @@ static MACHINE_RESET( pooyan )
}
-static MACHINE_DRIVER_START( pooyan )
-
- /* driver data */
- MDRV_DRIVER_DATA(timeplt_state)
+static MACHINE_CONFIG_START( pooyan, timeplt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/3/2)
@@ -250,8 +247,8 @@ static MACHINE_DRIVER_START( pooyan )
MDRV_VIDEO_UPDATE(pooyan)
/* sound hardware */
- MDRV_IMPORT_FROM(timeplt_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(timeplt_sound)
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/popeye.c b/src/mame/drivers/popeye.c
index 47c8b65e286..fd0e2ea167f 100644
--- a/src/mame/drivers/popeye.c
+++ b/src/mame/drivers/popeye.c
@@ -443,7 +443,7 @@ static const ay8910_interface ay8910_config =
-static MACHINE_DRIVER_START( skyskipr )
+static MACHINE_CONFIG_START( skyskipr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_8MHz/2) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(skyskipr_map)
@@ -471,26 +471,24 @@ static MACHINE_DRIVER_START( skyskipr )
MDRV_SOUND_ADD("aysnd", AY8910, XTAL_8MHz/4)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( popeye )
- MDRV_IMPORT_FROM(skyskipr)
+static MACHINE_CONFIG_DERIVED( popeye, skyskipr )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(popeye_map)
MDRV_VIDEO_START(popeye)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( popeyebl )
- MDRV_IMPORT_FROM(skyskipr)
+static MACHINE_CONFIG_DERIVED( popeyebl, skyskipr )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(popeyebl_map)
MDRV_PALETTE_INIT(popeyebl)
MDRV_VIDEO_START(popeye)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/popper.c b/src/mame/drivers/popper.c
index 9eee385ab25..6c6febf53d8 100644
--- a/src/mame/drivers/popper.c
+++ b/src/mame/drivers/popper.c
@@ -325,10 +325,7 @@ static MACHINE_RESET( popper )
state->gfx_bank = 0;
}
-static MACHINE_DRIVER_START( popper )
-
- /* driver data */
- MDRV_DRIVER_DATA(popper_state)
+static MACHINE_CONFIG_START( popper, popper_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,18432000/6)
@@ -367,7 +364,7 @@ static MACHINE_DRIVER_START( popper )
MDRV_SOUND_ADD("ay2", AY8910, 18432000/12)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/portrait.c b/src/mame/drivers/portrait.c
index 58df7778e15..c97ac4ca89a 100644
--- a/src/mame/drivers/portrait.c
+++ b/src/mame/drivers/portrait.c
@@ -250,7 +250,7 @@ static GFXDECODE_START( portrait )
GFXDECODE_ENTRY( "gfx1", 0x00000, tile_layout, 0, 0x800/8 )
GFXDECODE_END
-static MACHINE_DRIVER_START( portrait )
+static MACHINE_CONFIG_START( portrait, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz ? */
MDRV_CPU_PROGRAM_MAP(portrait_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
@@ -280,7 +280,7 @@ static MACHINE_DRIVER_START( portrait )
MDRV_SOUND_ADD("tms", TMS5200, 640000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( portrait )
diff --git a/src/mame/drivers/powerbal.c b/src/mame/drivers/powerbal.c
index 6103df7c78f..0722994c171 100644
--- a/src/mame/drivers/powerbal.c
+++ b/src/mame/drivers/powerbal.c
@@ -483,10 +483,7 @@ static MACHINE_RESET( powerbal )
state->tilebank = 0;
}
-static MACHINE_DRIVER_START( powerbal )
-
- /* driver data */
- MDRV_DRIVER_DATA(playmark_state)
+static MACHINE_CONFIG_START( powerbal, playmark_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -515,12 +512,9 @@ static MACHINE_DRIVER_START( powerbal )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( magicstk )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(playmark_state)
+static MACHINE_CONFIG_START( magicstk, playmark_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -552,7 +546,7 @@ static MACHINE_DRIVER_START( magicstk )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/powerins.c b/src/mame/drivers/powerins.c
index 320059e37b0..7dfda59e359 100644
--- a/src/mame/drivers/powerins.c
+++ b/src/mame/drivers/powerins.c
@@ -357,7 +357,7 @@ static const nmk112_interface powerins_nmk112_intf =
};
-static MACHINE_DRIVER_START( powerins )
+static MACHINE_CONFIG_START( powerins, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12MHz */
@@ -398,12 +398,11 @@ static MACHINE_DRIVER_START( powerins )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
MDRV_NMK112_ADD("nmk112", powerins_nmk112_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( powerina )
+static MACHINE_CONFIG_DERIVED( powerina, powerins )
/* basic machine hardware */
- MDRV_IMPORT_FROM(powerins)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(powerina_map)
@@ -418,12 +417,11 @@ static MACHINE_DRIVER_START( powerina )
MDRV_DEVICE_REMOVE("oki2")
MDRV_DEVICE_REMOVE("ym2203")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( powerinb )
+static MACHINE_CONFIG_DERIVED( powerinb, powerins )
/* basic machine hardware */
- MDRV_IMPORT_FROM(powerins)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE(60)
@@ -433,7 +431,7 @@ static MACHINE_DRIVER_START( powerinb )
MDRV_CPU_PERIODIC_INT(irq0_line_hold, 120) // YM2203 rate is at 150??
MDRV_DEVICE_REMOVE("ym2203") // Sound code talks to one, but it's not fitted on the board
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/ppmast93.c b/src/mame/drivers/ppmast93.c
index f0fdbfa78e0..51fcdbb1ae8 100644
--- a/src/mame/drivers/ppmast93.c
+++ b/src/mame/drivers/ppmast93.c
@@ -339,7 +339,7 @@ static VIDEO_UPDATE( ppmast93 )
return 0;
}
-static MACHINE_DRIVER_START( ppmast93 )
+static MACHINE_CONFIG_START( ppmast93, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,5000000) /* 5 MHz */
MDRV_CPU_PROGRAM_MAP(ppmast93_cpu1_map)
@@ -375,7 +375,7 @@ static MACHINE_DRIVER_START( ppmast93 )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ppmast93 )
ROM_REGION( 0x30000, "maincpu", 0 )
diff --git a/src/mame/drivers/prehisle.c b/src/mame/drivers/prehisle.c
index 309a6a04750..f73963ecb95 100644
--- a/src/mame/drivers/prehisle.c
+++ b/src/mame/drivers/prehisle.c
@@ -203,9 +203,7 @@ static const ym3812_interface ym3812_config =
/******************************************************************************/
-static MACHINE_DRIVER_START( prehisle )
-
- MDRV_DRIVER_DATA( prehisle_state )
+static MACHINE_CONFIG_START( prehisle, prehisle_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_18MHz/2) /* verified on pcb */
@@ -239,7 +237,7 @@ static MACHINE_DRIVER_START( prehisle )
MDRV_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/progolf.c b/src/mame/drivers/progolf.c
index 1cbb69930a5..d32c8fddb4e 100644
--- a/src/mame/drivers/progolf.c
+++ b/src/mame/drivers/progolf.c
@@ -425,7 +425,7 @@ static PALETTE_INIT( progolf )
}
}
-static MACHINE_DRIVER_START( progolf )
+static MACHINE_CONFIG_START( progolf, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 3000000/2) /* guess, 3 Mhz makes the game to behave worse? */
MDRV_CPU_PROGRAM_MAP(main_cpu)
@@ -460,7 +460,7 @@ static MACHINE_DRIVER_START( progolf )
MDRV_SOUND_ADD("ay2", AY8910, 12000000/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.23)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( progolf )
diff --git a/src/mame/drivers/psattack.c b/src/mame/drivers/psattack.c
index 7c1626563b7..a19605415cf 100644
--- a/src/mame/drivers/psattack.c
+++ b/src/mame/drivers/psattack.c
@@ -157,7 +157,7 @@ static const vr0_interface vr0_config =
};
-static MACHINE_DRIVER_START( psattack )
+static MACHINE_CONFIG_START( psattack, driver_data_t )
MDRV_CPU_ADD("maincpu", SE3208, 43000000)
MDRV_CPU_PROGRAM_MAP(psattack_mem)
MDRV_CPU_VBLANK_INT("screen", psattack_interrupt)
@@ -187,7 +187,7 @@ static MACHINE_DRIVER_START( psattack )
MDRV_SOUND_CONFIG(vr0_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( psattack )
diff --git a/src/mame/drivers/psikyo.c b/src/mame/drivers/psikyo.c
index db1ba14a067..1fd413adb47 100644
--- a/src/mame/drivers/psikyo.c
+++ b/src/mame/drivers/psikyo.c
@@ -1057,10 +1057,7 @@ static const ym2610_interface sngkace_ym2610_interface =
sound_irq
};
-static MACHINE_DRIVER_START( sngkace )
-
- /* driver data */
- MDRV_DRIVER_DATA(psikyo_state)
+static MACHINE_CONFIG_START( sngkace, psikyo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, XTAL_32MHz/2) /* verified on pcb */
@@ -1098,7 +1095,7 @@ static MACHINE_DRIVER_START( sngkace )
MDRV_SOUND_ROUTE(0, "rspeaker", 1.2)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1112,10 +1109,7 @@ static const ym2610_interface gunbird_ym2610_interface =
sound_irq /* irq */
};
-static MACHINE_DRIVER_START( gunbird )
-
- /* driver data */
- MDRV_DRIVER_DATA(psikyo_state)
+static MACHINE_CONFIG_START( gunbird, psikyo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000)
@@ -1153,12 +1147,9 @@ static MACHINE_DRIVER_START( gunbird )
MDRV_SOUND_ROUTE(0, "rspeaker", 1.2)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( s1945bl ) /* Bootleg hardware based on the unprotected Japanese Strikers 1945 set */
-
- /* driver data */
- MDRV_DRIVER_DATA(psikyo_state)
+static MACHINE_CONFIG_START( s1945bl, psikyo_state ) /* Bootleg hardware based on the unprotected Japanese Strikers 1945 set */
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000)
@@ -1189,7 +1180,7 @@ static MACHINE_DRIVER_START( s1945bl ) /* Bootleg hardware based on the unprotec
MDRV_OKIM6295_ADD("oki", XTAL_16MHz/16, OKIM6295_PIN7_LOW) // ?? clock
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_DEVICE_ADDRESS_MAP(0, s1945bl_oki_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1209,10 +1200,7 @@ static const ymf278b_interface ymf278b_config =
irqhandler
};
-static MACHINE_DRIVER_START( s1945 )
-
- /* driver data */
- MDRV_DRIVER_DATA(psikyo_state)
+static MACHINE_CONFIG_START( s1945, psikyo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000)
@@ -1250,7 +1238,7 @@ static MACHINE_DRIVER_START( s1945 )
MDRV_SOUND_CONFIG(ymf278b_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/psikyo4.c b/src/mame/drivers/psikyo4.c
index 0e19ee45c6b..85ae8d55dc3 100644
--- a/src/mame/drivers/psikyo4.c
+++ b/src/mame/drivers/psikyo4.c
@@ -723,10 +723,7 @@ static MACHINE_RESET( psikyo4 )
state->oldbrt2 = -1;
}
-static MACHINE_DRIVER_START( ps4big )
-
- /* driver data */
- MDRV_DRIVER_DATA(psikyo4_state)
+static MACHINE_CONFIG_START( ps4big, psikyo4_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", SH2, MASTER_CLOCK/2)
@@ -768,18 +765,18 @@ static MACHINE_DRIVER_START( ps4big )
MDRV_SOUND_CONFIG(ymf278b_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( ps4small, ps4big )
-static MACHINE_DRIVER_START( ps4small )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ps4big)
MDRV_SCREEN_MODIFY("lscreen")
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
MDRV_SCREEN_MODIFY("rscreen")
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/psikyosh.c b/src/mame/drivers/psikyosh.c
index 2c2e89c32a4..739b21f7f3f 100644
--- a/src/mame/drivers/psikyosh.c
+++ b/src/mame/drivers/psikyosh.c
@@ -811,10 +811,7 @@ static MACHINE_START( psikyosh )
}
-static MACHINE_DRIVER_START( psikyo3v1 )
-
- /* driver data */
- MDRV_DRIVER_DATA(psikyosh_state)
+static MACHINE_CONFIG_START( psikyo3v1, psikyosh_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", SH2, MASTER_CLOCK/2)
@@ -850,19 +847,19 @@ static MACHINE_DRIVER_START( psikyo3v1 )
MDRV_SOUND_CONFIG(ymf278b_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( psikyo5, psikyo3v1 )
-static MACHINE_DRIVER_START( psikyo5 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(psikyo3v1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ps5_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( psikyo5_240, psikyo3v1 )
-static MACHINE_DRIVER_START( psikyo5_240 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(psikyo3v1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ps5_map)
@@ -870,7 +867,7 @@ static MACHINE_DRIVER_START( psikyo5_240 )
/* Ideally this would be driven off the video register. However, it doesn't changeat runtime and MAME will pick a better screen resolution if it knows upfront */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 30*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* PS3 */
diff --git a/src/mame/drivers/psychic5.c b/src/mame/drivers/psychic5.c
index ea2594d7c9f..7567f04fc1c 100644
--- a/src/mame/drivers/psychic5.c
+++ b/src/mame/drivers/psychic5.c
@@ -677,7 +677,7 @@ static const ym2203_interface ym2203_config =
irqhandler
};
-static MACHINE_DRIVER_START( psychic5 )
+static MACHINE_CONFIG_START( psychic5, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2)
@@ -722,9 +722,9 @@ static MACHINE_DRIVER_START( psychic5 )
MDRV_SOUND_ROUTE(1, "mono", 0.15)
MDRV_SOUND_ROUTE(2, "mono", 0.15)
MDRV_SOUND_ROUTE(3, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bombsa )
+static MACHINE_CONFIG_START( bombsa, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2 ) /* 6 MHz */
@@ -768,7 +768,7 @@ static MACHINE_DRIVER_START( bombsa )
MDRV_SOUND_ROUTE(1, "mono", 0.30)
MDRV_SOUND_ROUTE(2, "mono", 0.30)
MDRV_SOUND_ROUTE(3, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/pturn.c b/src/mame/drivers/pturn.c
index 35b434a8ccc..3b67e86b23d 100644
--- a/src/mame/drivers/pturn.c
+++ b/src/mame/drivers/pturn.c
@@ -444,7 +444,7 @@ static MACHINE_RESET( pturn )
soundlatch_clear_w(space,0,0);
}
-static MACHINE_DRIVER_START( pturn )
+static MACHINE_CONFIG_START( pturn, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80, 12000000/3)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", pturn_main_intgen)
@@ -478,7 +478,7 @@ static MACHINE_DRIVER_START( pturn )
MDRV_SOUND_ADD("ay2", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( pturn )
diff --git a/src/mame/drivers/puckpkmn.c b/src/mame/drivers/puckpkmn.c
index 99b770e064b..84a28d56766 100644
--- a/src/mame/drivers/puckpkmn.c
+++ b/src/mame/drivers/puckpkmn.c
@@ -149,8 +149,7 @@ static ADDRESS_MAP_START( puckpkmn_map, ADDRESS_SPACE_PROGRAM, 16 )
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( puckpkmn )
- MDRV_IMPORT_FROM( megadriv )
+static MACHINE_CONFIG_DERIVED( puckpkmn, megadriv )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(puckpkmn_map)
@@ -160,7 +159,7 @@ static MACHINE_DRIVER_START( puckpkmn )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker",0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Genie's Hardware (contains no real sega parts) */
diff --git a/src/mame/drivers/punchout.c b/src/mame/drivers/punchout.c
index 5c94c2aa929..5b2e67e2425 100644
--- a/src/mame/drivers/punchout.c
+++ b/src/mame/drivers/punchout.c
@@ -946,7 +946,7 @@ static MACHINE_RESET( punchout )
}
-static MACHINE_DRIVER_START( punchout )
+static MACHINE_CONFIG_START( punchout, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000/2) /* 4 MHz */
@@ -992,13 +992,12 @@ static MACHINE_DRIVER_START( punchout )
MDRV_SOUND_ADD("vlm", VLM5030, 3580000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( armwrest )
+static MACHINE_CONFIG_DERIVED( armwrest, punchout )
/* basic machine hardware */
- MDRV_IMPORT_FROM(punchout)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(armwrest_map)
@@ -1008,7 +1007,7 @@ static MACHINE_DRIVER_START( armwrest )
MDRV_VIDEO_START(armwrest)
MDRV_VIDEO_UPDATE(armwrest)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/pushman.c b/src/mame/drivers/pushman.c
index 1f220289b49..31eeb9af532 100644
--- a/src/mame/drivers/pushman.c
+++ b/src/mame/drivers/pushman.c
@@ -444,10 +444,7 @@ static MACHINE_RESET( pushman )
memset(state->shared_ram, 0, ARRAY_LENGTH(state->shared_ram));
}
-static MACHINE_DRIVER_START( pushman )
-
- /* driver data */
- MDRV_DRIVER_DATA(pushman_state)
+static MACHINE_CONFIG_START( pushman, pushman_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -490,7 +487,7 @@ static MACHINE_DRIVER_START( pushman )
MDRV_SOUND_ADD("ym2", YM2203, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_RESET( bballs )
{
@@ -501,10 +498,7 @@ static MACHINE_RESET( bballs )
state->latch = 0x400;
}
-static MACHINE_DRIVER_START( bballs )
-
- /* driver data */
- MDRV_DRIVER_DATA(pushman_state)
+static MACHINE_CONFIG_START( bballs, pushman_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -543,7 +537,7 @@ static MACHINE_DRIVER_START( bballs )
MDRV_SOUND_ADD("ym2", YM2203, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/pzletime.c b/src/mame/drivers/pzletime.c
index a43c953d174..ca850a50b4b 100644
--- a/src/mame/drivers/pzletime.c
+++ b/src/mame/drivers/pzletime.c
@@ -308,10 +308,7 @@ static MACHINE_RESET( pzletime )
state->ticket = 0;
}
-static MACHINE_DRIVER_START( pzletime )
-
- /* driver data */
- MDRV_DRIVER_DATA(pzletime_state)
+static MACHINE_CONFIG_START( pzletime, pzletime_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,10000000)
@@ -340,7 +337,7 @@ static MACHINE_DRIVER_START( pzletime )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", 937500, OKIM6295_PIN7_HIGH) //freq & pin7 taken from stlforce
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/qdrmfgp.c b/src/mame/drivers/qdrmfgp.c
index 97adb552036..0368ae5119a 100644
--- a/src/mame/drivers/qdrmfgp.c
+++ b/src/mame/drivers/qdrmfgp.c
@@ -641,7 +641,7 @@ static MACHINE_RESET( qdrmfgp )
*
*************************************/
-static MACHINE_DRIVER_START( qdrmfgp )
+static MACHINE_CONFIG_START( qdrmfgp, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 32000000/2) /* 16.000 MHz */
@@ -677,9 +677,9 @@ static MACHINE_DRIVER_START( qdrmfgp )
MDRV_SOUND_CONFIG(k054539_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qdrmfgp2 )
+static MACHINE_CONFIG_START( qdrmfgp2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 32000000/2) /* 16.000 MHz */
@@ -714,7 +714,7 @@ static MACHINE_DRIVER_START( qdrmfgp2 )
MDRV_SOUND_ADD("konami", K054539, 18432000/384)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/qix.c b/src/mame/drivers/qix.c
index 1821c0b5260..8bf7bb6f015 100644
--- a/src/mame/drivers/qix.c
+++ b/src/mame/drivers/qix.c
@@ -548,9 +548,7 @@ static const m6809_config encryption_config =
TRUE, /* encrypt only the first byte in 10 xx and 11 xx opcodes */
};
-static MACHINE_DRIVER_START( qix_base )
-
- MDRV_DRIVER_DATA(qix_state)
+static MACHINE_CONFIG_START( qix_base, qix_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CLOCK_OSC/4/4) /* 1.25 MHz */
@@ -569,20 +567,18 @@ static MACHINE_DRIVER_START( qix_base )
MDRV_PIA6821_ADD("pia2", qix_pia_2_intf)
/* video hardware */
- MDRV_IMPORT_FROM(qix_video)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(qix_video)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qix )
- MDRV_IMPORT_FROM(qix_base)
- MDRV_IMPORT_FROM(qix_audio)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( qix, qix_base )
+ MDRV_FRAGMENT_ADD(qix_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mcu )
+static MACHINE_CONFIG_DERIVED( mcu, qix )
/* basic machine hardware */
- MDRV_IMPORT_FROM(qix)
MDRV_CPU_ADD("mcu", M68705, COIN_CLOCK_OSC) /* 1.00 MHz */
MDRV_CPU_PROGRAM_MAP(mcu_map)
@@ -591,26 +587,24 @@ static MACHINE_DRIVER_START( mcu )
MDRV_PIA6821_MODIFY("pia0", qixmcu_pia_0_intf)
MDRV_PIA6821_MODIFY("pia2", qixmcu_pia_2_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( zookeep )
+static MACHINE_CONFIG_DERIVED( zookeep, mcu )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcu)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(zoo_main_map)
/* video hardware */
- MDRV_IMPORT_FROM(zookeep_video)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(zookeep_video)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( slither )
+static MACHINE_CONFIG_DERIVED( slither, qix_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(qix_base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(SLITHER_CLOCK_OSC/4/4) /* 1.34 MHz */
@@ -619,11 +613,11 @@ static MACHINE_DRIVER_START( slither )
MDRV_PIA6821_MODIFY("pia2", slither_pia_2_intf)
/* video hardware */
- MDRV_IMPORT_FROM(slither_video)
+ MDRV_FRAGMENT_ADD(slither_video)
/* audio hardware */
- MDRV_IMPORT_FROM(slither_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(slither_audio)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/quakeat.c b/src/mame/drivers/quakeat.c
index a98bae55c9d..2d331342b79 100644
--- a/src/mame/drivers/quakeat.c
+++ b/src/mame/drivers/quakeat.c
@@ -147,7 +147,7 @@ static MACHINE_START(quakeat)
}
/*************************************************************/
-static MACHINE_DRIVER_START( quake )
+static MACHINE_CONFIG_START( quake, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PENTIUM, 233000000) /* Pentium II, 233MHz */
MDRV_CPU_PROGRAM_MAP(quake_map)
@@ -170,7 +170,7 @@ static MACHINE_DRIVER_START( quake )
MDRV_VIDEO_START(quake)
MDRV_VIDEO_UPDATE(quake)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START(quake)
diff --git a/src/mame/drivers/quantum.c b/src/mame/drivers/quantum.c
index 8660c2e3ae6..6d1574da3b0 100644
--- a/src/mame/drivers/quantum.c
+++ b/src/mame/drivers/quantum.c
@@ -225,7 +225,7 @@ static const pokey_interface pokey_interface_2 =
*
*************************************/
-static MACHINE_DRIVER_START( quantum )
+static MACHINE_CONFIG_START( quantum, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK / 2)
@@ -253,7 +253,7 @@ static MACHINE_DRIVER_START( quantum )
MDRV_SOUND_ADD("pokey2", POKEY, 600000)
MDRV_SOUND_CONFIG(pokey_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/quasar.c b/src/mame/drivers/quasar.c
index a907c8a3a6d..61b499437f0 100644
--- a/src/mame/drivers/quasar.c
+++ b/src/mame/drivers/quasar.c
@@ -359,10 +359,7 @@ static MACHINE_RESET( quasar )
state->io_page = 8;
}
-static MACHINE_DRIVER_START( quasar )
-
- /* driver data */
- MDRV_DRIVER_DATA(cvs_state)
+static MACHINE_CONFIG_START( quasar, cvs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, 14318000/4) /* 14 mhz crystal divide by 4 on board */
@@ -403,7 +400,7 @@ static MACHINE_DRIVER_START( quasar )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( quasar )
ROM_REGION( 0x8000, "maincpu", 0 )
diff --git a/src/mame/drivers/queen.c b/src/mame/drivers/queen.c
index b13af2cf749..c1717116286 100644
--- a/src/mame/drivers/queen.c
+++ b/src/mame/drivers/queen.c
@@ -71,7 +71,7 @@ static INPUT_PORTS_START( queen )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( queen )
+static MACHINE_CONFIG_START( queen, driver_data_t )
MDRV_CPU_ADD("maincpu", PENTIUM, 533000000) // Celeron or Pentium 3, 533 Mhz
MDRV_CPU_PROGRAM_MAP(queen_map)
MDRV_CPU_IO_MAP(queen_io)
@@ -87,7 +87,7 @@ static MACHINE_DRIVER_START( queen )
MDRV_VIDEO_START(queen)
MDRV_VIDEO_UPDATE(queen)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/quizdna.c b/src/mame/drivers/quizdna.c
index 8dfad94e826..01ea14e4707 100644
--- a/src/mame/drivers/quizdna.c
+++ b/src/mame/drivers/quizdna.c
@@ -452,7 +452,7 @@ static const ym2203_interface ym2203_config =
};
-static MACHINE_DRIVER_START( quizdna )
+static MACHINE_CONFIG_START( quizdna, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MCLK/2) /* 8.000 MHz */
@@ -486,28 +486,26 @@ static MACHINE_DRIVER_START( quizdna )
MDRV_OKIM6295_ADD("oki", (MCLK/1024)*132, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gakupara )
+static MACHINE_CONFIG_DERIVED( gakupara, quizdna )
/* basic machine hardware */
- MDRV_IMPORT_FROM(quizdna)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(gakupara_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gekiretu )
+static MACHINE_CONFIG_DERIVED( gekiretu, quizdna )
/* basic machine hardware */
- MDRV_IMPORT_FROM(quizdna)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gekiretu_map)
MDRV_CPU_IO_MAP(gekiretu_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/****************************************************************************/
diff --git a/src/mame/drivers/quizo.c b/src/mame/drivers/quizo.c
index af44fa385e3..ad7c23b4dae 100644
--- a/src/mame/drivers/quizo.c
+++ b/src/mame/drivers/quizo.c
@@ -183,7 +183,7 @@ static INPUT_PORTS_START( quizo )
PORT_DIPSETTING( 0x80, DEF_STR( On ) )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( quizo )
+static MACHINE_CONFIG_START( quizo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,XTAL1/2)
MDRV_CPU_PROGRAM_MAP(memmap)
@@ -208,7 +208,7 @@ static MACHINE_DRIVER_START( quizo )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, XTAL2/16 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( quizo )
diff --git a/src/mame/drivers/quizpani.c b/src/mame/drivers/quizpani.c
index d984c2d3df3..e155a288833 100644
--- a/src/mame/drivers/quizpani.c
+++ b/src/mame/drivers/quizpani.c
@@ -240,7 +240,7 @@ static const nmk112_interface quizpani_nmk112_intf =
};
-static MACHINE_DRIVER_START( quizpani )
+static MACHINE_CONFIG_START( quizpani, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 10000000)
MDRV_CPU_PROGRAM_MAP(quizpani_map)
MDRV_CPU_VBLANK_INT("screen", irq4_line_hold)
@@ -265,7 +265,7 @@ static MACHINE_DRIVER_START( quizpani )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_NMK112_ADD("nmk112", quizpani_nmk112_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( quizpani )
ROM_REGION( 0x340000, "maincpu", 0 ) /* 68000 Code */
diff --git a/src/mame/drivers/quizpun2.c b/src/mame/drivers/quizpun2.c
index aeaf11ebf46..6ad3115adf8 100644
--- a/src/mame/drivers/quizpun2.c
+++ b/src/mame/drivers/quizpun2.c
@@ -415,7 +415,7 @@ GFXDECODE_END
Machine Drivers
***************************************************************************/
-static MACHINE_DRIVER_START( quizpun2 )
+static MACHINE_CONFIG_START( quizpun2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_8MHz / 2) // 4 MHz?
MDRV_CPU_PROGRAM_MAP(quizpun2_map)
@@ -449,7 +449,7 @@ static MACHINE_DRIVER_START( quizpun2 )
MDRV_SOUND_ADD("ymsnd", YM2203, XTAL_8MHz / 4 ) // 2 MHz?
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/r2dtank.c b/src/mame/drivers/r2dtank.c
index 651b2810834..5b898c6634b 100644
--- a/src/mame/drivers/r2dtank.c
+++ b/src/mame/drivers/r2dtank.c
@@ -515,7 +515,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( r2dtank )
+static MACHINE_CONFIG_START( r2dtank, driver_data_t )
MDRV_CPU_ADD("maincpu", M6809,3000000) /* ?? too fast ? */
MDRV_CPU_PROGRAM_MAP(r2dtank_main_map)
@@ -552,7 +552,7 @@ static MACHINE_DRIVER_START( r2dtank )
MDRV_SOUND_CONFIG(ay8910_2_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/rabbit.c b/src/mame/drivers/rabbit.c
index bf84cd1ae25..c3bcb70d5ad 100644
--- a/src/mame/drivers/rabbit.c
+++ b/src/mame/drivers/rabbit.c
@@ -935,7 +935,7 @@ static INTERRUPT_GEN( rabbit_interrupts )
cpu_set_input_line(device, intlevel, HOLD_LINE);
}
-static MACHINE_DRIVER_START( rabbit )
+static MACHINE_CONFIG_START( rabbit, driver_data_t )
MDRV_CPU_ADD("maincpu",M68EC020,24000000) /* 24 MHz */
MDRV_CPU_PROGRAM_MAP(rabbit_map)
MDRV_CPU_VBLANK_INT_HACK(rabbit_interrupts,262)
@@ -957,7 +957,7 @@ static MACHINE_DRIVER_START( rabbit )
MDRV_VIDEO_START(rabbit)
MDRV_VIDEO_UPDATE(rabbit)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/raiden.c b/src/mame/drivers/raiden.c
index 4ef3284b8dc..2d2318e5680 100644
--- a/src/mame/drivers/raiden.c
+++ b/src/mame/drivers/raiden.c
@@ -258,7 +258,7 @@ static VIDEO_EOF( raiden )
buffer_spriteram16_w(space,0,0,0xffff); /* Could be a memory location instead */
}
-static MACHINE_DRIVER_START( raiden )
+static MACHINE_CONFIG_START( raiden, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,XTAL_20MHz/2) /* NEC V30 CPU, 20MHz verified on pcb */
@@ -294,19 +294,16 @@ static MACHINE_DRIVER_START( raiden )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM3812_RAIDEN_INTERFACE(XTAL_14_31818MHz/4,XTAL_12MHz/12) // frequency and pin 7 verified (pin set in audio\seibu.h)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( raidena )
-
- MDRV_IMPORT_FROM( raiden )
+static MACHINE_CONFIG_DERIVED( raidena, raiden )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(alt_main_map)
MDRV_VIDEO_START(raidena)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( raidenu )
- MDRV_IMPORT_FROM( raiden )
+static MACHINE_CONFIG_DERIVED( raidenu, raiden )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(raidenu_main_map)
@@ -315,7 +312,7 @@ static MACHINE_DRIVER_START( raidenu )
MDRV_CPU_PROGRAM_MAP(raidenu_sub_map)
MDRV_VIDEO_START(raidena)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/raiden2.c b/src/mame/drivers/raiden2.c
index 2ae4be4a5dc..c53ac6835b4 100644
--- a/src/mame/drivers/raiden2.c
+++ b/src/mame/drivers/raiden2.c
@@ -1184,7 +1184,7 @@ GFXDECODE_END
/* MACHINE DRIVERS */
-static MACHINE_DRIVER_START( raiden2 )
+static MACHINE_CONFIG_START( raiden2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,XTAL_32MHz/2) /* verified on pcb */
@@ -1223,19 +1223,17 @@ static MACHINE_DRIVER_START( raiden2 )
/* Sound hardware infos: Z80 and YM2151 are clocked at XTAL_28_63636MHz/8 */
/* The 2 Oki M6295 are clocked at XTAL_28_63636MHz/28 and pin 7 is high for both */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nzerotea )
-
- MDRV_IMPORT_FROM(raiden2)
+static MACHINE_CONFIG_DERIVED( nzerotea, raiden2 )
/* basic machine hardware */
MDRV_DEVICE_MODIFY("maincpu") // also change it to a v33!
MDRV_CPU_PROGRAM_MAP(nzerotea_mem)
MDRV_CPU_VBLANK_INT("screen", raiden2_interrupt)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROM LOADING */
@@ -2275,7 +2273,7 @@ static MACHINE_RESET( rdx_v33 )
common_reset();
}
-static MACHINE_DRIVER_START( rdx_v33 )
+static MACHINE_CONFIG_START( rdx_v33, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V33, 32000000/2 ) // ?
@@ -2305,7 +2303,7 @@ static MACHINE_DRIVER_START( rdx_v33 )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/rainbow.c b/src/mame/drivers/rainbow.c
index abdda4ef953..e73aa4dc397 100644
--- a/src/mame/drivers/rainbow.c
+++ b/src/mame/drivers/rainbow.c
@@ -674,10 +674,7 @@ static MACHINE_START( rainbow )
state->pc090oj = machine->device("pc090oj");
}
-static MACHINE_DRIVER_START( rainbow )
-
- /* driver data */
- MDRV_DRIVER_DATA(rainbow_state)
+static MACHINE_CONFIG_START( rainbow, rainbow_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz/2) /* verified on pcb */
@@ -716,14 +713,11 @@ static MACHINE_DRIVER_START( rainbow )
MDRV_SOUND_ROUTE(1, "mono", 0.50)
MDRV_TC0140SYT_ADD("tc0140syt", rainbow_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Jumping: The PCB has 2 Xtals, 24MHz and 18,432MHz */
-static MACHINE_DRIVER_START( jumping )
-
- /* driver data */
- MDRV_DRIVER_DATA(rainbow_state)
+static MACHINE_CONFIG_START( jumping, rainbow_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz/3) /* not verified but matches original */
@@ -761,7 +755,7 @@ static MACHINE_DRIVER_START( jumping )
MDRV_SOUND_ADD("ym2", YM2203, XTAL_18_432MHz/6) /* not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/rallyx.c b/src/mame/drivers/rallyx.c
index fc4a6fe9b82..1f9579521a1 100644
--- a/src/mame/drivers/rallyx.c
+++ b/src/mame/drivers/rallyx.c
@@ -891,10 +891,7 @@ static MACHINE_RESET( rallyx )
state->stars_enable = 0;
}
-static MACHINE_DRIVER_START( rallyx )
-
- /* driver data */
- MDRV_DRIVER_DATA(timeplt_state)
+static MACHINE_CONFIG_START( rallyx, timeplt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6) /* 3.072 MHz */
@@ -932,13 +929,10 @@ static MACHINE_DRIVER_START( rallyx )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(rallyx_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jungler )
- /* driver data */
- MDRV_DRIVER_DATA(timeplt_state)
+static MACHINE_CONFIG_START( jungler, timeplt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6) /* 3.072 MHz */
@@ -966,45 +960,42 @@ static MACHINE_DRIVER_START( jungler )
MDRV_VIDEO_UPDATE(jungler)
/* sound hardware */
- MDRV_IMPORT_FROM(locomotn_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(locomotn_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tactcian )
+static MACHINE_CONFIG_DERIVED( tactcian, jungler )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jungler)
/* video hardware */
MDRV_VIDEO_START(locomotn)
MDRV_VIDEO_UPDATE(locomotn)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( locomotn )
+static MACHINE_CONFIG_DERIVED( locomotn, jungler )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jungler)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MDRV_VIDEO_START(locomotn)
MDRV_VIDEO_UPDATE(locomotn)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( commsega )
+static MACHINE_CONFIG_DERIVED( commsega, jungler )
/* basic machine hardware */
- MDRV_IMPORT_FROM(jungler)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MDRV_VIDEO_START(commsega)
MDRV_VIDEO_UPDATE(locomotn)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/rampart.c b/src/mame/drivers/rampart.c
index c9f639a28db..b65025e0bfb 100644
--- a/src/mame/drivers/rampart.c
+++ b/src/mame/drivers/rampart.c
@@ -341,8 +341,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( rampart )
- MDRV_DRIVER_DATA(rampart_state)
+static MACHINE_CONFIG_START( rampart, rampart_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK/2)
@@ -376,7 +375,7 @@ static MACHINE_DRIVER_START( rampart )
MDRV_SOUND_ADD("ymsnd", YM2413, MASTER_CLOCK/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/rastan.c b/src/mame/drivers/rastan.c
index 81b6d7901e8..098a4c42db8 100644
--- a/src/mame/drivers/rastan.c
+++ b/src/mame/drivers/rastan.c
@@ -409,10 +409,7 @@ static const tc0140syt_interface rastan_tc0140syt_intf =
"maincpu", "audiocpu"
};
-static MACHINE_DRIVER_START( rastan )
-
- /* driver data */
- MDRV_DRIVER_DATA(rastan_state)
+static MACHINE_CONFIG_START( rastan, rastan_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz/2) /* verified on pcb */
@@ -456,7 +453,7 @@ static MACHINE_DRIVER_START( rastan )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
MDRV_TC0140SYT_ADD("tc0140syt", rastan_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/rbmk.c b/src/mame/drivers/rbmk.c
index 0e333032d43..4d729d8878d 100644
--- a/src/mame/drivers/rbmk.c
+++ b/src/mame/drivers/rbmk.c
@@ -512,7 +512,7 @@ static INTERRUPT_GEN( mcu_irq )
cputag_set_input_line(device->machine, "mcu", INPUT_LINE_NMI, PULSE_LINE);
}
-static MACHINE_DRIVER_START( rbmk )
+static MACHINE_CONFIG_START( rbmk, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 22000000 /2)
MDRV_CPU_PROGRAM_MAP(rbmk_mem)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -550,7 +550,7 @@ static MACHINE_DRIVER_START( rbmk )
// MDRV_SOUND_CONFIG(ym2151_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.60)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( rbmk )
ROM_REGION( 0x80000, "maincpu", 0 ) /* 68000 Code */
diff --git a/src/mame/drivers/rcorsair.c b/src/mame/drivers/rcorsair.c
index 455c3e596b2..c28796ccb47 100644
--- a/src/mame/drivers/rcorsair.c
+++ b/src/mame/drivers/rcorsair.c
@@ -106,7 +106,7 @@ static VIDEO_UPDATE( rcorsair )
return 0;
}
-static MACHINE_DRIVER_START( rcorsair )
+static MACHINE_CONFIG_START( rcorsair, driver_data_t )
/* Main CPU is probably inside Custom Block with
program code, unknown type */
@@ -127,7 +127,7 @@ static MACHINE_DRIVER_START( rcorsair )
MDRV_VIDEO_START(rcorsair)
MDRV_VIDEO_UPDATE(rcorsair)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( rcorsair )
ROM_REGION( 0x2000, "maincpu", 0 )
diff --git a/src/mame/drivers/re900.c b/src/mame/drivers/re900.c
index cf9d7de4946..d89db4b0f39 100644
--- a/src/mame/drivers/re900.c
+++ b/src/mame/drivers/re900.c
@@ -387,7 +387,7 @@ static const ay8910_interface ay8910_bs94 =
* Machine Driver *
***************************/
-static MACHINE_DRIVER_START( re900 )
+static MACHINE_CONFIG_START( re900, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8051, MAIN_CLOCK)
@@ -396,7 +396,7 @@ static MACHINE_DRIVER_START( re900 )
MDRV_CPU_VBLANK_INT("screen", re900_video_interrupt)
/* video hardware */
- MDRV_IMPORT_FROM(tms9928a)
+ MDRV_FRAGMENT_ADD(tms9928a)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE(60)
@@ -407,17 +407,15 @@ static MACHINE_DRIVER_START( re900 )
MDRV_SOUND_ADD("ay_re900", AY8910, TMS_CLOCK) /* From TMS9128NL - Pin 37 (GROMCLK) */
MDRV_SOUND_CONFIG(ay8910_re900)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bs94 )
-
- MDRV_IMPORT_FROM(re900)
+static MACHINE_CONFIG_DERIVED( bs94, re900 )
/* sound hardware */
MDRV_SOUND_MODIFY("ay_re900")
MDRV_SOUND_CONFIG(ay8910_bs94)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/realbrk.c b/src/mame/drivers/realbrk.c
index 2cdf5c9b9b4..dacb5e0ad03 100644
--- a/src/mame/drivers/realbrk.c
+++ b/src/mame/drivers/realbrk.c
@@ -673,7 +673,7 @@ static INTERRUPT_GEN( realbrk_interrupt )
}
}
-static MACHINE_DRIVER_START( realbrk )
+static MACHINE_CONFIG_START( realbrk, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000, XTAL_32MHz / 2) /* !! TMP68301 !! */
@@ -707,28 +707,25 @@ static MACHINE_DRIVER_START( realbrk )
MDRV_SOUND_ADD("ymsnd", YM2413, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pkgnsh )
- MDRV_IMPORT_FROM( realbrk )
+static MACHINE_CONFIG_DERIVED( pkgnsh, realbrk )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(pkgnsh_mem)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pkgnshdx )
- MDRV_IMPORT_FROM( realbrk )
+static MACHINE_CONFIG_DERIVED( pkgnshdx, realbrk )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(pkgnshdx_mem)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dai2kaku )
- MDRV_IMPORT_FROM( realbrk )
+static MACHINE_CONFIG_DERIVED( dai2kaku, realbrk )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dai2kaku_mem)
MDRV_GFXDECODE(dai2kaku)
MDRV_VIDEO_UPDATE(dai2kaku)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/redalert.c b/src/mame/drivers/redalert.c
index f0c3744574a..68647ee053c 100644
--- a/src/mame/drivers/redalert.c
+++ b/src/mame/drivers/redalert.c
@@ -385,7 +385,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( redalert )
+static MACHINE_CONFIG_START( redalert, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MAIN_CPU_CLOCK)
@@ -393,13 +393,13 @@ static MACHINE_DRIVER_START( redalert )
MDRV_CPU_VBLANK_INT("screen", redalert_vblank_interrupt)
/* video hardware */
- MDRV_IMPORT_FROM(redalert_video)
+ MDRV_FRAGMENT_ADD(redalert_video)
/* audio hardware */
- MDRV_IMPORT_FROM(redalert_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(redalert_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ww3 )
+static MACHINE_CONFIG_START( ww3, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MAIN_CPU_CLOCK)
@@ -407,13 +407,13 @@ static MACHINE_DRIVER_START( ww3 )
MDRV_CPU_VBLANK_INT("screen", redalert_vblank_interrupt)
/* video hardware */
- MDRV_IMPORT_FROM(ww3_video)
+ MDRV_FRAGMENT_ADD(ww3_video)
/* audio hardware */
- MDRV_IMPORT_FROM(ww3_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(ww3_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( panther )
+static MACHINE_CONFIG_START( panther, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MAIN_CPU_CLOCK)
@@ -421,13 +421,13 @@ static MACHINE_DRIVER_START( panther )
MDRV_CPU_VBLANK_INT("screen", redalert_vblank_interrupt)
/* video hardware */
- MDRV_IMPORT_FROM(panther_video)
+ MDRV_FRAGMENT_ADD(panther_video)
/* audio hardware */
- MDRV_IMPORT_FROM(ww3_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(ww3_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( demoneye )
+static MACHINE_CONFIG_START( demoneye, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MAIN_CPU_CLOCK)
@@ -435,11 +435,11 @@ static MACHINE_DRIVER_START( demoneye )
MDRV_CPU_VBLANK_INT("screen", redalert_vblank_interrupt)
/* video hardware */
- MDRV_IMPORT_FROM(demoneye_video)
+ MDRV_FRAGMENT_ADD(demoneye_video)
/* audio hardware */
- MDRV_IMPORT_FROM(demoneye_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(demoneye_audio)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/redclash.c b/src/mame/drivers/redclash.c
index 1e6404ae35d..89f9063afdb 100644
--- a/src/mame/drivers/redclash.c
+++ b/src/mame/drivers/redclash.c
@@ -354,10 +354,7 @@ static MACHINE_RESET( redclash )
state->stars_count = 0;
}
-static MACHINE_DRIVER_START( zerohour )
-
- /* driver data */
- MDRV_DRIVER_DATA(ladybug_state)
+static MACHINE_CONFIG_START( zerohour, ladybug_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz */
@@ -383,13 +380,10 @@ static MACHINE_DRIVER_START( zerohour )
MDRV_VIDEO_EOF(redclash)
/* sound hardware */
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( redclash )
- /* driver data */
- MDRV_DRIVER_DATA(ladybug_state)
+static MACHINE_CONFIG_START( redclash, ladybug_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz */
@@ -415,7 +409,7 @@ static MACHINE_DRIVER_START( redclash )
MDRV_VIDEO_EOF(redclash)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/relief.c b/src/mame/drivers/relief.c
index e5fc11370e2..b931041b741 100644
--- a/src/mame/drivers/relief.c
+++ b/src/mame/drivers/relief.c
@@ -293,8 +293,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( relief )
- MDRV_DRIVER_DATA(relief_state)
+static MACHINE_CONFIG_START( relief, relief_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -326,7 +325,7 @@ static MACHINE_DRIVER_START( relief )
MDRV_SOUND_ADD("ymsnd", YM2413, ATARI_CLOCK_14MHz/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/renegade.c b/src/mame/drivers/renegade.c
index d823a33c015..4d273ac7e6d 100644
--- a/src/mame/drivers/renegade.c
+++ b/src/mame/drivers/renegade.c
@@ -927,7 +927,7 @@ static MACHINE_RESET( renegade )
}
-static MACHINE_DRIVER_START( renegade )
+static MACHINE_CONFIG_START( renegade, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12000000/8) /* 1.5 MHz (measured) */
@@ -966,13 +966,12 @@ static MACHINE_DRIVER_START( renegade )
MDRV_SOUND_ADD("adpcm", RENEGADE_ADPCM, 8000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kuniokunb )
- MDRV_IMPORT_FROM(renegade)
+static MACHINE_CONFIG_DERIVED( kuniokunb, renegade )
MDRV_DEVICE_REMOVE("mcu")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( renegade )
diff --git a/src/mame/drivers/retofinv.c b/src/mame/drivers/retofinv.c
index 3059c1a3dbc..91b268dee83 100644
--- a/src/mame/drivers/retofinv.c
+++ b/src/mame/drivers/retofinv.c
@@ -336,7 +336,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( retofinv )
+static MACHINE_CONFIG_START( retofinv, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz? */
@@ -379,16 +379,14 @@ static MACHINE_DRIVER_START( retofinv )
MDRV_SOUND_ADD("sn2", SN76496, 18432000/6)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* bootleg has no mcu */
-static MACHINE_DRIVER_START( retofinb )
-
- MDRV_IMPORT_FROM(retofinv)
+static MACHINE_CONFIG_DERIVED( retofinb, retofinv )
MDRV_DEVICE_REMOVE("68705")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/rgum.c b/src/mame/drivers/rgum.c
index e68a13f899a..6eeac3d3142 100644
--- a/src/mame/drivers/rgum.c
+++ b/src/mame/drivers/rgum.c
@@ -249,7 +249,7 @@ static const ay8910_interface ay8910_config =
DEVCB_NULL
};
-static MACHINE_DRIVER_START( rgum )
+static MACHINE_CONFIG_START( rgum, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M65C02,24000000/16) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(rgum_map)
@@ -278,7 +278,7 @@ static MACHINE_DRIVER_START( rgum )
MDRV_SOUND_ADD("aysnd", AY8910, 24000000/16) /* guessed to use the same xtal as the crtc */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/rmhaihai.c b/src/mame/drivers/rmhaihai.c
index 0c8442c77df..f4fc5b39215 100644
--- a/src/mame/drivers/rmhaihai.c
+++ b/src/mame/drivers/rmhaihai.c
@@ -437,7 +437,7 @@ static const msm5205_interface msm5205_config =
-static MACHINE_DRIVER_START( rmhaihai )
+static MACHINE_CONFIG_START( rmhaihai, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,20000000/4) /* 5 MHz ??? */
@@ -470,22 +470,20 @@ static MACHINE_DRIVER_START( rmhaihai )
MDRV_SOUND_ADD("msm", MSM5205, 500000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rmhaisei )
+static MACHINE_CONFIG_DERIVED( rmhaisei, rmhaihai )
/* basic machine hardware */
- MDRV_IMPORT_FROM(rmhaihai)
/* video hardware */
MDRV_GFXDECODE(themj)
MDRV_PALETTE_LENGTH(0x200)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( themj )
+static MACHINE_CONFIG_DERIVED( themj, rmhaihai )
/* basic machine hardware */
- MDRV_IMPORT_FROM(rmhaihai)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(themj_map)
@@ -496,7 +494,7 @@ static MACHINE_DRIVER_START( themj )
/* video hardware */
MDRV_GFXDECODE(themj)
MDRV_PALETTE_LENGTH(0x200)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/rockrage.c b/src/mame/drivers/rockrage.c
index 82362b50811..28dfa9124ca 100644
--- a/src/mame/drivers/rockrage.c
+++ b/src/mame/drivers/rockrage.c
@@ -295,10 +295,7 @@ static MACHINE_RESET( rockrage )
state->layer_colorbase[1] = 0x10;
}
-static MACHINE_DRIVER_START( rockrage )
-
- /* driver data */
- MDRV_DRIVER_DATA(rockrage_state)
+static MACHINE_CONFIG_START( rockrage, rockrage_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", HD6309, 3000000*4) /* 24MHz/8 */
@@ -337,7 +334,7 @@ static MACHINE_DRIVER_START( rockrage )
MDRV_SOUND_ADD("vlm", VLM5030, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/rocnrope.c b/src/mame/drivers/rocnrope.c
index 81d83330ea8..e4d87f3c163 100644
--- a/src/mame/drivers/rocnrope.c
+++ b/src/mame/drivers/rocnrope.c
@@ -182,10 +182,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( rocnrope )
-
- /* driver data */
- MDRV_DRIVER_DATA(timeplt_state)
+static MACHINE_CONFIG_START( rocnrope, timeplt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK / 3 / 4) /* Verified in schematics */
@@ -208,8 +205,8 @@ static MACHINE_DRIVER_START( rocnrope )
MDRV_VIDEO_UPDATE(rocnrope)
/* sound hardware */
- MDRV_IMPORT_FROM(timeplt_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(timeplt_sound)
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/rohga.c b/src/mame/drivers/rohga.c
index 6ecfac27c93..6b86b1305c0 100644
--- a/src/mame/drivers/rohga.c
+++ b/src/mame/drivers/rohga.c
@@ -772,10 +772,7 @@ static const deco16ic_interface nitrobal_deco16ic_intf =
rohga_bank_callback
};
-static MACHINE_DRIVER_START( rohga )
-
- /* driver data */
- MDRV_DRIVER_DATA(rohga_state)
+static MACHINE_CONFIG_START( rohga, rohga_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -818,12 +815,9 @@ static MACHINE_DRIVER_START( rohga )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( wizdfire )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(rohga_state)
+static MACHINE_CONFIG_START( wizdfire, rohga_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -865,12 +859,9 @@ static MACHINE_DRIVER_START( wizdfire )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nitrobal )
-
- /* driver data */
- MDRV_DRIVER_DATA(rohga_state)
+static MACHINE_CONFIG_START( nitrobal, rohga_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -912,12 +903,9 @@ static MACHINE_DRIVER_START( nitrobal )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( schmeisr )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(rohga_state)
+static MACHINE_CONFIG_START( schmeisr, rohga_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -960,7 +948,7 @@ static MACHINE_DRIVER_START( schmeisr )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**********************************************************************************/
diff --git a/src/mame/drivers/rollerg.c b/src/mame/drivers/rollerg.c
index c656f82ed6a..eeaa74a4509 100644
--- a/src/mame/drivers/rollerg.c
+++ b/src/mame/drivers/rollerg.c
@@ -261,10 +261,7 @@ static MACHINE_RESET( rollerg )
state->readzoomroms = 0;
}
-static MACHINE_DRIVER_START( rollerg )
-
- /* driver data */
- MDRV_DRIVER_DATA(rollerg_state)
+static MACHINE_CONFIG_START( rollerg, rollerg_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI, 3000000) /* ? */
@@ -303,7 +300,7 @@ static MACHINE_DRIVER_START( rollerg )
MDRV_SOUND_ADD("k053260", K053260, 3579545)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/rollrace.c b/src/mame/drivers/rollrace.c
index 6fde9b79e53..944de9b0204 100644
--- a/src/mame/drivers/rollrace.c
+++ b/src/mame/drivers/rollrace.c
@@ -209,7 +209,7 @@ static GFXDECODE_START( rollrace )
GFXDECODE_ENTRY( "gfx5", 0x0000, spritelayout, 0, 32 )
GFXDECODE_END
-static MACHINE_DRIVER_START( rollrace )
+static MACHINE_CONFIG_START( rollrace, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,XTAL_24MHz/8) /* verified on pcb */
@@ -245,16 +245,15 @@ static MACHINE_DRIVER_START( rollrace )
MDRV_SOUND_ADD("ay3", AY8910,XTAL_24MHz/16) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rollace2 )
+static MACHINE_CONFIG_DERIVED( rollace2, rollrace )
/* basic machine hardware */
- MDRV_IMPORT_FROM(rollrace)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0,255-24,16, 255-16)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/rotaryf.c b/src/mame/drivers/rotaryf.c
index 023cdfdf454..68a795fc3b5 100644
--- a/src/mame/drivers/rotaryf.c
+++ b/src/mame/drivers/rotaryf.c
@@ -148,7 +148,7 @@ static INPUT_PORTS_START( rotaryf )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( rotaryf )
+static MACHINE_CONFIG_START( rotaryf, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",I8085A,4000000) /* 8080? */ /* 2 MHz? */
@@ -165,7 +165,7 @@ static MACHINE_DRIVER_START( rotaryf )
MDRV_SCREEN_VISIBLE_AREA(1*8, 30*8-1, 0*8, 32*8-1)
MDRV_SCREEN_REFRESH_RATE(60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( rotaryf )
diff --git a/src/mame/drivers/roul.c b/src/mame/drivers/roul.c
index e6c589fad71..5da92888146 100644
--- a/src/mame/drivers/roul.c
+++ b/src/mame/drivers/roul.c
@@ -240,7 +240,7 @@ static INPUT_PORTS_START( roul )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( roul )
+static MACHINE_CONFIG_START( roul, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000)
MDRV_CPU_PROGRAM_MAP(roul_map)
@@ -271,7 +271,7 @@ static MACHINE_DRIVER_START( roul )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, 1000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START(roul)
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/route16.c b/src/mame/drivers/route16.c
index 962211847d1..98d00caa0a9 100644
--- a/src/mame/drivers/route16.c
+++ b/src/mame/drivers/route16.c
@@ -607,7 +607,7 @@ static const sn76477_interface sn76477_intf =
};
-static MACHINE_DRIVER_START( route16 )
+static MACHINE_CONFIG_START( route16, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("cpu1", Z80, 2500000) /* 10MHz / 4 = 2.5MHz */
@@ -632,22 +632,20 @@ static MACHINE_DRIVER_START( route16 )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("ay8910", AY8910, 10000000/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( routex )
+static MACHINE_CONFIG_DERIVED( routex, route16 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(route16)
MDRV_CPU_MODIFY("cpu1")
MDRV_CPU_PROGRAM_MAP(routex_cpu1_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( stratvox )
+static MACHINE_CONFIG_DERIVED( stratvox, route16 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(route16)
MDRV_CPU_MODIFY("cpu1")
MDRV_CPU_PROGRAM_MAP(stratvox_cpu1_map)
@@ -668,37 +666,33 @@ static MACHINE_DRIVER_START( stratvox )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( speakres )
+static MACHINE_CONFIG_DERIVED( speakres, stratvox )
/* basic machine hardware */
- MDRV_IMPORT_FROM(stratvox)
MDRV_CPU_MODIFY("cpu1")
MDRV_CPU_PROGRAM_MAP(speakres_cpu1_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spacecho )
+static MACHINE_CONFIG_DERIVED( spacecho, speakres )
/* basic machine hardware */
- MDRV_IMPORT_FROM(speakres)
MDRV_CPU_MODIFY("cpu2")
MDRV_CPU_VBLANK_INT_HACK(irq0_line_hold,48)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ttmahjng )
-
- MDRV_IMPORT_FROM(route16)
+static MACHINE_CONFIG_DERIVED( ttmahjng, route16 )
MDRV_CPU_MODIFY("cpu1")
MDRV_CPU_PROGRAM_MAP(ttmahjng_cpu1_map)
MDRV_CPU_IO_MAP(0)
/* video hardware */
MDRV_VIDEO_UPDATE(ttmahjng)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/royalmah.c b/src/mame/drivers/royalmah.c
index dd06d2be833..e47f5d03111 100644
--- a/src/mame/drivers/royalmah.c
+++ b/src/mame/drivers/royalmah.c
@@ -3093,7 +3093,7 @@ static const ay8910_interface ay8910_config =
DEVCB_HANDLER(royalmah_player_2_port_r)
};
-static MACHINE_DRIVER_START( royalmah )
+static MACHINE_CONFIG_START( royalmah, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
@@ -3121,12 +3121,10 @@ static MACHINE_DRIVER_START( royalmah )
MDRV_SOUND_ADD("aysnd", AY8910, 18432000/12)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( janoh )
-
- MDRV_IMPORT_FROM(royalmah)
+static MACHINE_CONFIG_DERIVED( janoh, royalmah )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(8000000/2) /* 4 MHz ? */
MDRV_CPU_PROGRAM_MAP(janho_map)
@@ -3135,10 +3133,9 @@ static MACHINE_DRIVER_START( janoh )
MDRV_CPU_PROGRAM_MAP(janoh_sub_map)
MDRV_CPU_IO_MAP(janoh_sub_iomap)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jansou )
- MDRV_IMPORT_FROM(royalmah)
+static MACHINE_CONFIG_DERIVED( jansou, royalmah )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(jansou_map)
@@ -3150,41 +3147,36 @@ static MACHINE_DRIVER_START( jansou )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dondenmj )
- MDRV_IMPORT_FROM(royalmah)
+static MACHINE_CONFIG_DERIVED( dondenmj, royalmah )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(8000000/2) /* 4 MHz ? */
MDRV_CPU_IO_MAP(dondenmj_iomap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( makaijan )
- MDRV_IMPORT_FROM(royalmah)
+static MACHINE_CONFIG_DERIVED( makaijan, royalmah )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(8000000/2) /* 4 MHz ? */
MDRV_CPU_IO_MAP(makaijan_iomap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( daisyari )
- MDRV_IMPORT_FROM(royalmah)
+static MACHINE_CONFIG_DERIVED( daisyari, royalmah )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(8000000/2) /* 4 MHz ? */
MDRV_CPU_IO_MAP(daisyari_iomap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjclub )
- MDRV_IMPORT_FROM(royalmah)
+static MACHINE_CONFIG_DERIVED( mjclub, royalmah )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(8000000/2) /* 4 MHz ? */
MDRV_CPU_IO_MAP(mjclub_iomap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ippatsu )
- MDRV_IMPORT_FROM(dondenmj)
+static MACHINE_CONFIG_DERIVED( ippatsu, dondenmj )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(ippatsu_iomap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INTERRUPT_GEN( suzume_irq )
{
@@ -3192,47 +3184,41 @@ static INTERRUPT_GEN( suzume_irq )
cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
}
-static MACHINE_DRIVER_START( suzume )
- MDRV_IMPORT_FROM(dondenmj)
+static MACHINE_CONFIG_DERIVED( suzume, dondenmj )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(suzume_iomap)
MDRV_CPU_VBLANK_INT("screen", suzume_irq)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tontonb )
- MDRV_IMPORT_FROM(dondenmj)
+static MACHINE_CONFIG_DERIVED( tontonb, dondenmj )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(tontonb_iomap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjdiplob )
- MDRV_IMPORT_FROM(dondenmj)
+static MACHINE_CONFIG_DERIVED( mjdiplob, dondenmj )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(mjdiplob_iomap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( majs101b )
- MDRV_IMPORT_FROM(dondenmj)
+static MACHINE_CONFIG_DERIVED( majs101b, dondenmj )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(majs101b_iomap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjapinky )
- MDRV_IMPORT_FROM(dondenmj)
+static MACHINE_CONFIG_DERIVED( mjapinky, dondenmj )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjapinky_map)
MDRV_CPU_IO_MAP(mjapinky_iomap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjderngr )
- MDRV_IMPORT_FROM(dondenmj)
+static MACHINE_CONFIG_DERIVED( mjderngr, dondenmj )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(mjderngr_iomap)
/* video hardware */
MDRV_PALETTE_LENGTH(16*32)
MDRV_PALETTE_INIT(mjderngr)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* It runs in IM 2, thus needs a vector on the data bus */
static INTERRUPT_GEN( janptr96_interrupt )
@@ -3245,8 +3231,7 @@ static INTERRUPT_GEN( janptr96_interrupt )
}
}
-static MACHINE_DRIVER_START( janptr96 )
- MDRV_IMPORT_FROM(mjderngr)
+static MACHINE_CONFIG_DERIVED( janptr96, mjderngr )
MDRV_CPU_REPLACE("maincpu",Z80,24000000/4) /* 6 MHz? */
MDRV_CPU_PROGRAM_MAP(janptr96_map)
MDRV_CPU_IO_MAP(janptr96_iomap)
@@ -3257,11 +3242,10 @@ static MACHINE_DRIVER_START( janptr96 )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjifb )
- MDRV_IMPORT_FROM(mjderngr)
+static MACHINE_CONFIG_DERIVED( mjifb, mjderngr )
MDRV_CPU_REPLACE("maincpu",TMP90841, 8000000) /* ? */
MDRV_CPU_PROGRAM_MAP(mjifb_map)
MDRV_CPU_IO_MAP(mjifb_iomap)
@@ -3269,11 +3253,10 @@ static MACHINE_DRIVER_START( mjifb )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 8, 255-8)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjdejavu )
- MDRV_IMPORT_FROM(mjderngr)
+static MACHINE_CONFIG_DERIVED( mjdejavu, mjderngr )
MDRV_CPU_REPLACE("maincpu",TMP90841, 8000000) /* ? */
MDRV_CPU_PROGRAM_MAP(mjdejavu_map)
MDRV_CPU_IO_MAP(mjifb_iomap)
@@ -3281,7 +3264,7 @@ static MACHINE_DRIVER_START( mjdejavu )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 8, 255-8)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INTERRUPT_GEN( mjtensin_interrupt )
@@ -3293,8 +3276,7 @@ static INTERRUPT_GEN( mjtensin_interrupt )
}
}
-static MACHINE_DRIVER_START( mjtensin )
- MDRV_IMPORT_FROM(mjderngr)
+static MACHINE_CONFIG_DERIVED( mjtensin, mjderngr )
MDRV_CPU_REPLACE("maincpu",TMP90841, 12000000) /* ? */
MDRV_CPU_PROGRAM_MAP(mjtensin_map)
MDRV_CPU_IO_MAP(mjtensin_iomap)
@@ -3305,10 +3287,9 @@ static MACHINE_DRIVER_START( mjtensin )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cafetime )
- MDRV_IMPORT_FROM(mjderngr)
+static MACHINE_CONFIG_DERIVED( cafetime, mjderngr )
MDRV_CPU_REPLACE("maincpu",TMP90841, 12000000) /* ? */
MDRV_CPU_PROGRAM_MAP(cafetime_map)
MDRV_CPU_IO_MAP(cafetime_iomap)
@@ -3319,10 +3300,9 @@ static MACHINE_DRIVER_START( cafetime )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjvegasa )
- MDRV_IMPORT_FROM(mjderngr)
+static MACHINE_CONFIG_DERIVED( mjvegasa, mjderngr )
MDRV_CPU_REPLACE("maincpu",TMP90841, XTAL_8MHz) /* ? */
MDRV_CPU_PROGRAM_MAP(mjvegasa_map)
MDRV_CPU_IO_MAP(mjvegasa_iomap)
@@ -3333,7 +3313,7 @@ static MACHINE_DRIVER_START( mjvegasa )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/rpunch.c b/src/mame/drivers/rpunch.c
index 0c900b130c4..f2ea4492e1e 100644
--- a/src/mame/drivers/rpunch.c
+++ b/src/mame/drivers/rpunch.c
@@ -479,7 +479,7 @@ static const ym2151_interface ym2151_config =
*
*************************************/
-static MACHINE_DRIVER_START( rpunch )
+static MACHINE_CONFIG_START( rpunch, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK/2)
@@ -513,7 +513,7 @@ static MACHINE_DRIVER_START( rpunch )
MDRV_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/runaway.c b/src/mame/drivers/runaway.c
index f7d175cb26c..b1d412f848b 100644
--- a/src/mame/drivers/runaway.c
+++ b/src/mame/drivers/runaway.c
@@ -356,7 +356,7 @@ static const pokey_interface pokey_interface_2 =
};
-static MACHINE_DRIVER_START( runaway )
+static MACHINE_CONFIG_START( runaway, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12096000 / 8) /* ? */
@@ -390,13 +390,12 @@ static MACHINE_DRIVER_START( runaway )
MDRV_SOUND_ADD("pokey2", POKEY, 12096000 / 8)
MDRV_SOUND_CONFIG(pokey_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qwak )
+static MACHINE_CONFIG_DERIVED( qwak, runaway )
/* basic machine hardware */
- MDRV_IMPORT_FROM(runaway)
/* video hardware */
MDRV_GFXDECODE(qwak)
@@ -404,7 +403,7 @@ static MACHINE_DRIVER_START( qwak )
MDRV_VIDEO_START(qwak)
MDRV_VIDEO_UPDATE(qwak)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( runaway )
diff --git a/src/mame/drivers/rungun.c b/src/mame/drivers/rungun.c
index de201fe2299..a4f89afb4df 100644
--- a/src/mame/drivers/rungun.c
+++ b/src/mame/drivers/rungun.c
@@ -393,10 +393,7 @@ static MACHINE_RESET( rng )
state->sound_status = 0;
}
-static MACHINE_DRIVER_START( rng )
-
- /* driver data */
- MDRV_DRIVER_DATA(rungun_state)
+static MACHINE_CONFIG_START( rng, rungun_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -447,7 +444,7 @@ static MACHINE_DRIVER_START( rng )
MDRV_SOUND_CONFIG(k054539_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( rungun )
diff --git a/src/mame/drivers/safarir.c b/src/mame/drivers/safarir.c
index 40d85813cc9..dca35aa4ac1 100644
--- a/src/mame/drivers/safarir.c
+++ b/src/mame/drivers/safarir.c
@@ -296,12 +296,12 @@ static const samples_interface safarir_samples_interface =
};
-static MACHINE_DRIVER_START( safarir_audio )
+static MACHINE_CONFIG_FRAGMENT( safarir_audio )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(safarir_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -397,9 +397,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( safarir )
-
- MDRV_DRIVER_DATA( safarir_state )
+static MACHINE_CONFIG_START( safarir, safarir_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8085A, 18000000/8) /* 2.25 MHz ? */
@@ -421,8 +419,8 @@ static MACHINE_DRIVER_START( safarir )
MDRV_SCREEN_REFRESH_RATE(60)
/* audio hardware */
- MDRV_IMPORT_FROM(safarir_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(safarir_audio)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/sandscrp.c b/src/mame/drivers/sandscrp.c
index 8a6b335dac2..bd8f3ece68a 100644
--- a/src/mame/drivers/sandscrp.c
+++ b/src/mame/drivers/sandscrp.c
@@ -438,7 +438,7 @@ static const kaneko_pandora_interface sandscrp_pandora_config =
0, 0 /* x_offs, y_offs */
};
-static MACHINE_DRIVER_START( sandscrp )
+static MACHINE_CONFIG_START( sandscrp, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000) /* TMP68HC000N-12 */
@@ -481,7 +481,7 @@ static MACHINE_DRIVER_START( sandscrp )
MDRV_SOUND_CONFIG(ym2203_intf_sandscrp)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/sangho.c b/src/mame/drivers/sangho.c
index a9c185c4d5f..c2e799ea124 100644
--- a/src/mame/drivers/sangho.c
+++ b/src/mame/drivers/sangho.c
@@ -352,7 +352,7 @@ static VIDEO_START( sangho )
v9938_init (machine, 0, *machine->primary_screen, machine->generic.tmpbitmap, MODEL_V9938, 0x20000, msx_vdp_interrupt);
}
-static MACHINE_DRIVER_START(pzlestar)
+static MACHINE_CONFIG_START( pzlestar, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80,8000000) // ?
MDRV_CPU_PROGRAM_MAP(sangho_map)
@@ -382,10 +382,10 @@ static MACHINE_DRIVER_START(pzlestar)
MDRV_SOUND_ADD("ymsnd", YM2413, 3580000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START(sexyboom )
+static MACHINE_CONFIG_START( sexyboom, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80,8000000) // ?
MDRV_CPU_PROGRAM_MAP(sangho_map)
@@ -414,7 +414,7 @@ static MACHINE_DRIVER_START(sexyboom )
MDRV_SOUND_ADD("ymsnd", YM2413, 3580000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( pzlestar )
ROM_REGION( 0x20000*16, "user1", 0 ) // 15 sockets, 13 used
diff --git a/src/mame/drivers/sauro.c b/src/mame/drivers/sauro.c
index eaf1a625d61..d34a3a524a0 100644
--- a/src/mame/drivers/sauro.c
+++ b/src/mame/drivers/sauro.c
@@ -388,7 +388,7 @@ static INTERRUPT_GEN( sauro_interrupt )
cpu_set_input_line(device, 0, HOLD_LINE);
}
-static MACHINE_DRIVER_START( tecfri )
+static MACHINE_CONFIG_START( tecfri, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_20MHz/4) /* verified on pcb */
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
@@ -412,10 +412,9 @@ static MACHINE_DRIVER_START( tecfri )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_20MHz/8) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( trckydoc )
- MDRV_IMPORT_FROM(tecfri)
+static MACHINE_CONFIG_DERIVED( trckydoc, tecfri )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(trckydoc_map)
@@ -425,10 +424,9 @@ static MACHINE_DRIVER_START( trckydoc )
MDRV_VIDEO_START(trckydoc)
MDRV_VIDEO_UPDATE(trckydoc)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sauro )
- MDRV_IMPORT_FROM(tecfri)
+static MACHINE_CONFIG_DERIVED( sauro, tecfri )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sauro_map)
@@ -446,7 +444,7 @@ static MACHINE_DRIVER_START( sauro )
MDRV_SOUND_ADD("speech", SP0256, 3120000)
MDRV_SOUND_CONFIG(sauro_sp256)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/savquest.c b/src/mame/drivers/savquest.c
index f3079f028f4..ec72e861c3e 100644
--- a/src/mame/drivers/savquest.c
+++ b/src/mame/drivers/savquest.c
@@ -54,7 +54,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( savquest )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( savquest )
+static MACHINE_CONFIG_START( savquest, driver_data_t )
MDRV_CPU_ADD("maincpu", PENTIUM, 450000000) // actually Pentium II 450
MDRV_CPU_PROGRAM_MAP(savquest_map)
MDRV_CPU_IO_MAP(savquest_io)
@@ -70,7 +70,7 @@ static MACHINE_DRIVER_START( savquest )
MDRV_VIDEO_START(savquest)
MDRV_VIDEO_UPDATE(savquest)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( savquest )
ROM_REGION32_LE(0x40000, "user1", 0)
diff --git a/src/mame/drivers/sbasketb.c b/src/mame/drivers/sbasketb.c
index 9b9fd19f77c..9bd1053fe4f 100644
--- a/src/mame/drivers/sbasketb.c
+++ b/src/mame/drivers/sbasketb.c
@@ -194,10 +194,7 @@ static MACHINE_RESET( sbasketb )
state->last_irq = 0;
}
-static MACHINE_DRIVER_START( sbasketb )
-
- /* driver data */
- MDRV_DRIVER_DATA(trackfld_state)
+static MACHINE_CONFIG_START( sbasketb, trackfld_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 1400000) /* 1.400 MHz ??? */
@@ -236,7 +233,7 @@ static MACHINE_DRIVER_START( sbasketb )
MDRV_SOUND_ADD("vlm", VLM5030, XTAL_3_579545MHz) /* Schematics say 3.58MHz, but board uses 3.579545MHz xtal */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/sbowling.c b/src/mame/drivers/sbowling.c
index b22b3f419c6..5c40d2cc132 100644
--- a/src/mame/drivers/sbowling.c
+++ b/src/mame/drivers/sbowling.c
@@ -370,9 +370,7 @@ static PALETTE_INIT( sbowling )
}
}
-static MACHINE_DRIVER_START( sbowling )
-
- MDRV_DRIVER_DATA( sbowling_state )
+static MACHINE_CONFIG_START( sbowling, sbowling_state )
MDRV_CPU_ADD("maincpu", I8080, XTAL_19_968MHz/10) /* ? */
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -397,7 +395,7 @@ static MACHINE_DRIVER_START( sbowling )
MDRV_SOUND_ADD("aysnd", AY8910, XTAL_19_968MHz/16) /* ? */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( sbowling )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/sbrkout.c b/src/mame/drivers/sbrkout.c
index ab09d5bf78a..eaceeca4f1e 100644
--- a/src/mame/drivers/sbrkout.c
+++ b/src/mame/drivers/sbrkout.c
@@ -475,7 +475,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( sbrkout )
+static MACHINE_CONFIG_START( sbrkout, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,MAIN_CLOCK/16) /* 375 KHz? Should be 750KHz? */
@@ -501,7 +501,7 @@ static MACHINE_DRIVER_START( sbrkout )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/sbugger.c b/src/mame/drivers/sbugger.c
index 771090737f7..710fc312dd7 100644
--- a/src/mame/drivers/sbugger.c
+++ b/src/mame/drivers/sbugger.c
@@ -212,9 +212,7 @@ INPUT_PORTS_END
/* machine driver */
-static MACHINE_DRIVER_START( sbugger )
-
- MDRV_DRIVER_DATA( sbugger_state )
+static MACHINE_CONFIG_START( sbugger, sbugger_state )
MDRV_CPU_ADD("maincpu", I8085A, 6000000) /* 3.00 MHz??? */
MDRV_CPU_PROGRAM_MAP(sbugger_map)
@@ -246,7 +244,7 @@ static MACHINE_DRIVER_START( sbugger )
MDRV_SOUND_ADD("sn76489.2", SN76489, 3000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* rom loading */
diff --git a/src/mame/drivers/scobra.c b/src/mame/drivers/scobra.c
index 3dbc2e24c24..dfdad493cd3 100644
--- a/src/mame/drivers/scobra.c
+++ b/src/mame/drivers/scobra.c
@@ -850,7 +850,7 @@ static const ay8910_interface scobra_ay8910_interface_2 =
};
-static MACHINE_DRIVER_START( type1 )
+static MACHINE_CONFIG_START( type1, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
@@ -895,16 +895,15 @@ static MACHINE_DRIVER_START( type1 )
MDRV_SOUND_ADD("ay2", AY8910, 14318000/8)
MDRV_SOUND_CONFIG(scobra_ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.16)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Rescue, Minefield and Strategy X have extra colors, and custom video initialise */
/* routines to set up the graduated color backgound they use */
-static MACHINE_DRIVER_START( rescue )
+static MACHINE_CONFIG_DERIVED( rescue, type1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(type1)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
@@ -913,13 +912,12 @@ static MACHINE_DRIVER_START( rescue )
MDRV_PALETTE_INIT(rescue)
MDRV_VIDEO_START(rescue)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( minefld )
+static MACHINE_CONFIG_DERIVED( minefld, type1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(type1)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
@@ -928,34 +926,31 @@ static MACHINE_DRIVER_START( minefld )
MDRV_PALETTE_INIT(minefld)
MDRV_VIDEO_START(minefld)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mimonkey )
+static MACHINE_CONFIG_DERIVED( mimonkey, type1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(type1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mimonkey_map)
/* video hardware */
MDRV_VIDEO_START(mimonkey)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( type2 )
+static MACHINE_CONFIG_DERIVED( type2, type1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(type1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(type2_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( stratgyx )
+static MACHINE_CONFIG_DERIVED( stratgyx, type2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(type2)
/* device config overrides */
MDRV_PPI8255_RECONFIG( "ppi8255_1", stratgyx_ppi_1_intf )
@@ -965,23 +960,22 @@ static MACHINE_DRIVER_START( stratgyx )
MDRV_PALETTE_INIT(stratgyx)
MDRV_VIDEO_START(stratgyx)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( darkplnt )
+static MACHINE_CONFIG_DERIVED( darkplnt, type2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(type2)
/* video hardware */
MDRV_PALETTE_LENGTH(32+64+2) /* 32 for characters, 64 (buffer) for stars, 2 for bullets */
MDRV_PALETTE_INIT(darkplnt)
MDRV_VIDEO_START(darkplnt)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hustler )
+static MACHINE_CONFIG_START( hustler, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
@@ -1024,39 +1018,36 @@ static MACHINE_DRIVER_START( hustler )
MDRV_SOUND_ADD("aysnd", AY8910, 14318000/8)
MDRV_SOUND_CONFIG(hustler_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hustlerb )
+static MACHINE_CONFIG_DERIVED( hustlerb, hustler )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hustler)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hustlerb_map)
MDRV_CPU_MODIFY("audiocpu")
MDRV_CPU_PROGRAM_MAP(hustlerb_sound_map)
MDRV_CPU_IO_MAP(hustlerb_sound_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* same as type1 but with a strange memory map, maybe a kind of protection */
-static MACHINE_DRIVER_START( anteatg )
+static MACHINE_CONFIG_DERIVED( anteatg, type1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(type1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(anteatg_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* same as type1 but with a strange memory map, maybe a kind of protection */
-static MACHINE_DRIVER_START( anteatgb )
+static MACHINE_CONFIG_DERIVED( anteatgb, type1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(type1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(anteatgb_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/scotrsht.c b/src/mame/drivers/scotrsht.c
index 995fc30a063..6acea79aaa3 100644
--- a/src/mame/drivers/scotrsht.c
+++ b/src/mame/drivers/scotrsht.c
@@ -191,7 +191,7 @@ static GFXDECODE_START( scotrsht )
GFXDECODE_ENTRY( "gfx2", 0, spritelayout, 16*16*8, 16*8 ) /* sprites */
GFXDECODE_END
-static MACHINE_DRIVER_START( scotrsht )
+static MACHINE_CONFIG_START( scotrsht, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 18432000/6) /* 3.072 MHz */
@@ -222,7 +222,7 @@ static MACHINE_DRIVER_START( scotrsht )
MDRV_SOUND_ADD("ymsnd", YM2203, 18432000/6)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/scramble.c b/src/mame/drivers/scramble.c
index ba41526f9f5..e3c923f221a 100644
--- a/src/mame/drivers/scramble.c
+++ b/src/mame/drivers/scramble.c
@@ -1233,7 +1233,7 @@ static ADDRESS_MAP_START( scramble_sound_io_map, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("8910.2", ay8910_r, ay8910_data_w)
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( scramble )
+static MACHINE_CONFIG_START( scramble, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
@@ -1278,24 +1278,22 @@ static MACHINE_DRIVER_START( scramble )
MDRV_SOUND_ADD("8910.2", AY8910, 14318000/8)
MDRV_SOUND_CONFIG(scramble_ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.16)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mars )
+static MACHINE_CONFIG_DERIVED( mars, scramble )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scramble)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mars_map)
/* video hardware */
MDRV_PALETTE_LENGTH(32+64+2+0) /* 32 for characters, 64 for stars, 2 for bullets, 0/1 for background */
MDRV_PALETTE_INIT(galaxold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( devilfsh )
+static MACHINE_CONFIG_DERIVED( devilfsh, scramble )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scramble)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mars_map)
@@ -1303,12 +1301,11 @@ static MACHINE_DRIVER_START( devilfsh )
MDRV_GFXDECODE(devilfsh)
MDRV_PALETTE_LENGTH(32+64+2+0) /* 32 for characters, 64 for stars, 2 for bullets, 0/1 for background */
MDRV_PALETTE_INIT(galaxold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( newsin7 )
+static MACHINE_CONFIG_DERIVED( newsin7, scramble )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scramble)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(newsin7_map)
@@ -1317,12 +1314,11 @@ static MACHINE_DRIVER_START( newsin7 )
MDRV_PALETTE_LENGTH(32+64+2+0) /* 32 for characters, 64 for stars, 2 for bullets, 0/1 for background */
MDRV_PALETTE_INIT(galaxold)
MDRV_VIDEO_START(newsin7)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mrkougar )
+static MACHINE_CONFIG_DERIVED( mrkougar, scramble )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scramble)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mrkougar_map)
@@ -1332,12 +1328,11 @@ static MACHINE_DRIVER_START( mrkougar )
MDRV_GFXDECODE(mrkougar)
MDRV_PALETTE_LENGTH(32+64+2+0) /* 32 for characters, 64 for stars, 2 for bullets, 0/1 for background */
MDRV_PALETTE_INIT(galaxold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mrkougb )
+static MACHINE_CONFIG_DERIVED( mrkougb, scramble )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scramble)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mrkougar_map)
@@ -1346,12 +1341,11 @@ static MACHINE_DRIVER_START( mrkougb )
/* video hardware */
MDRV_PALETTE_LENGTH(32+64+2+0) /* 32 for characters, 64 for stars, 2 for bullets, 0/1 for background */
MDRV_PALETTE_INIT(galaxold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ckongs )
+static MACHINE_CONFIG_DERIVED( ckongs, scramble )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scramble)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ckongs_map)
@@ -1359,12 +1353,11 @@ static MACHINE_DRIVER_START( ckongs )
MDRV_PALETTE_LENGTH(32+64+2+0) /* 32 for characters, 64 for stars, 2 for bullets, 0/1 for background */
MDRV_PALETTE_INIT(galaxold)
MDRV_VIDEO_START(ckongs)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hotshock )
+static MACHINE_CONFIG_DERIVED( hotshock, scramble )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scramble)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hotshock_map)
@@ -1387,35 +1380,32 @@ static MACHINE_DRIVER_START( hotshock )
MDRV_SOUND_MODIFY("8910.2")
MDRV_SOUND_CONFIG(hotshock_ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cavelon )
+static MACHINE_CONFIG_DERIVED( cavelon, scramble )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scramble)
/* video hardware */
MDRV_PALETTE_LENGTH(32+64+2+0) /* 32 for characters, 64 for stars, 2 for bullets, 0/1 for background */
MDRV_PALETTE_INIT(galaxold)
MDRV_VIDEO_START(ckongs)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mimonscr )
+static MACHINE_CONFIG_DERIVED( mimonscr, scramble )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scramble)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mimonscr_map)
/* video hardware */
MDRV_VIDEO_START(mimonkey)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Triple Punch and Mariner are different - only one CPU, one 8910 */
-static MACHINE_DRIVER_START( triplep )
+static MACHINE_CONFIG_DERIVED( triplep, scramble )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scramble)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(triplep_io_map)
@@ -1432,25 +1422,23 @@ static MACHINE_DRIVER_START( triplep )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_DEVICE_REMOVE("8910.2")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mariner )
+static MACHINE_CONFIG_DERIVED( mariner, triplep )
/* basic machine hardware */
- MDRV_IMPORT_FROM(triplep)
/* video hardware */
MDRV_PALETTE_LENGTH(32+64+2+16) /* 32 for characters, 64 for stars, 2 for bullets, 16 for background */
MDRV_PALETTE_INIT(mariner)
MDRV_VIDEO_START(mariner)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Hunchback replaces the Z80 with a S2650 CPU */
-static MACHINE_DRIVER_START( hunchbks )
+static MACHINE_CONFIG_DERIVED( hunchbks, scramble )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scramble)
MDRV_CPU_REPLACE("maincpu", S2650, 18432000/6)
MDRV_CPU_PROGRAM_MAP(hunchbks_map)
MDRV_CPU_IO_MAP(hunchbks_readport)
@@ -1463,19 +1451,18 @@ static MACHINE_DRIVER_START( hunchbks )
MDRV_PALETTE_LENGTH(32+64+2+0) /* 32 for characters, 64 for stars, 2 for bullets */
MDRV_PALETTE_INIT(galaxold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hncholms )
+static MACHINE_CONFIG_DERIVED( hncholms, hunchbks )
/* basic machine hardware */
- MDRV_IMPORT_FROM(hunchbks)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(18432000/6/2/2)
MDRV_VIDEO_START(scorpion)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ad2083 )
+static MACHINE_CONFIG_START( ad2083, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
MDRV_CPU_PROGRAM_MAP(ad2083_map)
@@ -1505,18 +1492,17 @@ static MACHINE_DRIVER_START( ad2083 )
/* sound hardware */
- MDRV_IMPORT_FROM(ad2083_audio)
+ MDRV_FRAGMENT_ADD(ad2083_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( turpins )
+static MACHINE_CONFIG_DERIVED( turpins, scramble )
/* basic machine hardware */
- MDRV_IMPORT_FROM(scramble)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(turpins_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/scregg.c b/src/mame/drivers/scregg.c
index 816800c2793..4782f7f05cd 100644
--- a/src/mame/drivers/scregg.c
+++ b/src/mame/drivers/scregg.c
@@ -226,10 +226,7 @@ static MACHINE_RESET( scregg )
state->btime_tilemap[3] = 0;
}
-static MACHINE_DRIVER_START( dommy )
-
- /* driver data */
- MDRV_DRIVER_DATA(btime_state)
+static MACHINE_CONFIG_START( dommy, btime_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1500000)
@@ -262,13 +259,10 @@ static MACHINE_DRIVER_START( dommy )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.23)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( scregg )
- /* driver data */
- MDRV_DRIVER_DATA(btime_state)
+static MACHINE_CONFIG_START( scregg, btime_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1500000)
@@ -301,7 +295,7 @@ static MACHINE_DRIVER_START( scregg )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.23)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( dommy )
diff --git a/src/mame/drivers/sderby.c b/src/mame/drivers/sderby.c
index 05f1fd7fa5d..6a640c52cab 100644
--- a/src/mame/drivers/sderby.c
+++ b/src/mame/drivers/sderby.c
@@ -453,9 +453,7 @@ GFXDECODE_END
* Machine Drivers *
****************************/
-static MACHINE_DRIVER_START( sderby )
-
- MDRV_DRIVER_DATA( sderby_state )
+static MACHINE_CONFIG_START( sderby, sderby_state )
MDRV_CPU_ADD("maincpu", M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(sderby_map)
@@ -478,11 +476,9 @@ static MACHINE_DRIVER_START( sderby )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( spacewin )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA( sderby_state )
+static MACHINE_CONFIG_START( spacewin, sderby_state )
MDRV_CPU_ADD("maincpu", M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(spacewin_map)
@@ -505,11 +501,9 @@ static MACHINE_DRIVER_START( spacewin )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( pmroulet )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA( sderby_state )
+static MACHINE_CONFIG_START( pmroulet, sderby_state )
MDRV_CPU_ADD("maincpu", M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(roulette_map)
@@ -532,7 +526,7 @@ static MACHINE_DRIVER_START( pmroulet )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) /* clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/****************************
diff --git a/src/mame/drivers/seattle.c b/src/mame/drivers/seattle.c
index b1aa6bcaf4b..713d7bfd069 100644
--- a/src/mame/drivers/seattle.c
+++ b/src/mame/drivers/seattle.c
@@ -2457,7 +2457,7 @@ static const mips3_config r5000_config =
SYSTEM_CLOCK /* system clock rate */
};
-static MACHINE_DRIVER_START( seattle_common )
+static MACHINE_CONFIG_START( seattle_common, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R5000LE, SYSTEM_CLOCK*3)
@@ -2487,54 +2487,48 @@ static MACHINE_DRIVER_START( seattle_common )
MDRV_VIDEO_UPDATE(seattle)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( phoenixsa )
- MDRV_IMPORT_FROM(seattle_common)
- MDRV_IMPORT_FROM(dcs2_audio_2115)
+static MACHINE_CONFIG_DERIVED( phoenixsa, seattle_common )
+ MDRV_FRAGMENT_ADD(dcs2_audio_2115)
MDRV_CPU_REPLACE("maincpu", R4700LE, SYSTEM_CLOCK*2)
MDRV_CPU_CONFIG(r5000_config)
MDRV_CPU_PROGRAM_MAP(seattle_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( seattle150 )
- MDRV_IMPORT_FROM(seattle_common)
- MDRV_IMPORT_FROM(dcs2_audio_2115)
+static MACHINE_CONFIG_DERIVED( seattle150, seattle_common )
+ MDRV_FRAGMENT_ADD(dcs2_audio_2115)
MDRV_CPU_REPLACE("maincpu", R5000LE, SYSTEM_CLOCK*3)
MDRV_CPU_CONFIG(r5000_config)
MDRV_CPU_PROGRAM_MAP(seattle_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( seattle150_widget )
- MDRV_IMPORT_FROM(seattle150)
+static MACHINE_CONFIG_DERIVED( seattle150_widget, seattle150 )
MDRV_SMC91C94_ADD("ethernet", ethernet_interrupt)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( seattle200 )
- MDRV_IMPORT_FROM(seattle_common)
- MDRV_IMPORT_FROM(dcs2_audio_2115)
+static MACHINE_CONFIG_DERIVED( seattle200, seattle_common )
+ MDRV_FRAGMENT_ADD(dcs2_audio_2115)
MDRV_CPU_REPLACE("maincpu", R5000LE, SYSTEM_CLOCK*4)
MDRV_CPU_CONFIG(r5000_config)
MDRV_CPU_PROGRAM_MAP(seattle_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( seattle200_widget )
- MDRV_IMPORT_FROM(seattle200)
+static MACHINE_CONFIG_DERIVED( seattle200_widget, seattle200 )
MDRV_SMC91C94_ADD("ethernet", ethernet_interrupt)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( flagstaff )
- MDRV_IMPORT_FROM(seattle_common)
- MDRV_IMPORT_FROM(cage_seattle)
+static MACHINE_CONFIG_DERIVED( flagstaff, seattle_common )
+ MDRV_FRAGMENT_ADD(cage_seattle)
MDRV_CPU_REPLACE("maincpu", R5000LE, SYSTEM_CLOCK*4)
MDRV_CPU_CONFIG(r5000_config)
@@ -2544,7 +2538,7 @@ static MACHINE_DRIVER_START( flagstaff )
MDRV_3DFX_VOODOO_MODIFY("voodoo")
MDRV_3DFX_VOODOO_TMU_MEMORY(1, 4)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segac2.c b/src/mame/drivers/segac2.c
index ceae0be3800..b15e80f0e2a 100644
--- a/src/mame/drivers/segac2.c
+++ b/src/mame/drivers/segac2.c
@@ -1360,7 +1360,7 @@ static VIDEO_UPDATE(segac2_new)
}
-static MACHINE_DRIVER_START( segac )
+static MACHINE_CONFIG_START( segac, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XL2_CLOCK/6)
@@ -1370,7 +1370,7 @@ static MACHINE_DRIVER_START( segac )
MDRV_MACHINE_RESET(segac2)
MDRV_NVRAM_HANDLER(generic_randfill)
- MDRV_IMPORT_FROM(megadriv_timers)
+ MDRV_FRAGMENT_ADD(megadriv_timers)
/* video hardware */
//MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
@@ -1398,18 +1398,17 @@ static MACHINE_DRIVER_START( segac )
MDRV_SOUND_ADD("snsnd", SN76496, XL2_CLOCK/15)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( segac2 )
+static MACHINE_CONFIG_DERIVED( segac2, segac )
/* basic machine hardware */
- MDRV_IMPORT_FROM( segac )
/* sound hardware */
MDRV_SOUND_ADD("upd", UPD7759, XL1_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segae.c b/src/mame/drivers/segae.c
index 8d3ed191b4a..28cacc15868 100644
--- a/src/mame/drivers/segae.c
+++ b/src/mame/drivers/segae.c
@@ -865,7 +865,7 @@ static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( systeme )
+static MACHINE_CONFIG_START( systeme, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80, 10738600/2) /* correct? */
MDRV_CPU_PROGRAM_MAP(systeme_map)
MDRV_CPU_IO_MAP(io_map)
@@ -897,7 +897,7 @@ static MACHINE_DRIVER_START( systeme )
MDRV_SOUND_ADD("sn2", SN76496, 3579540)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*- Hang On Jr. Specific -*/
diff --git a/src/mame/drivers/segag80r.c b/src/mame/drivers/segag80r.c
index 70a5bd6c11d..a6fc1b4cbe7 100644
--- a/src/mame/drivers/segag80r.c
+++ b/src/mame/drivers/segag80r.c
@@ -831,7 +831,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( g80r_base )
+static MACHINE_CONFIG_START( g80r_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, VIDEO_CLOCK/4)
@@ -854,37 +854,34 @@ static MACHINE_DRIVER_START( g80r_base )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( astrob )
+static MACHINE_CONFIG_DERIVED( astrob, g80r_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(g80r_base)
/* sound boards */
- MDRV_IMPORT_FROM(astrob_sound_board)
- MDRV_IMPORT_FROM(sega_speech_board)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(astrob_sound_board)
+ MDRV_FRAGMENT_ADD(sega_speech_board)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( 005 )
+static MACHINE_CONFIG_DERIVED( 005, g80r_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(g80r_base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(main_ppi8255_portmap)
/* sound boards */
- MDRV_IMPORT_FROM(005_sound_board)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(005_sound_board)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spaceod )
+static MACHINE_CONFIG_DERIVED( spaceod, g80r_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(g80r_base)
/* background board changes */
MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
@@ -894,14 +891,13 @@ static MACHINE_DRIVER_START( spaceod )
MDRV_PALETTE_LENGTH(64+64)
/* sound boards */
- MDRV_IMPORT_FROM(spaceod_sound_board)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(spaceod_sound_board)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( monsterb )
+static MACHINE_CONFIG_DERIVED( monsterb, g80r_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(g80r_base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(main_ppi8255_portmap)
@@ -911,14 +907,13 @@ static MACHINE_DRIVER_START( monsterb )
MDRV_PALETTE_LENGTH(64+64)
/* sound boards */
- MDRV_IMPORT_FROM(monsterb_sound_board)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(monsterb_sound_board)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pignewt )
+static MACHINE_CONFIG_DERIVED( pignewt, g80r_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(g80r_base)
/* background board changes */
MDRV_GFXDECODE(monsterb)
@@ -926,14 +921,13 @@ static MACHINE_DRIVER_START( pignewt )
/* sound boards */
MDRV_MACHINE_RESET(pignewt)
- MDRV_IMPORT_FROM(sega_universal_sound_board)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sega_universal_sound_board)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sindbadm )
+static MACHINE_CONFIG_DERIVED( sindbadm, g80r_base )
/* basic machine hardware */
- MDRV_IMPORT_FROM(g80r_base)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(sindbadm_portmap)
MDRV_CPU_VBLANK_INT("screen", sindbadm_vblank_start)
@@ -956,7 +950,7 @@ static MACHINE_DRIVER_START( sindbadm )
MDRV_SOUND_ADD("sn2", SN76496, SINDBADM_SOUND_CLOCK/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segag80v.c b/src/mame/drivers/segag80v.c
index 2112cb0d5a9..e81a547c52a 100644
--- a/src/mame/drivers/segag80v.c
+++ b/src/mame/drivers/segag80v.c
@@ -909,7 +909,7 @@ static const samples_interface zektor_samples_interface =
*
*************************************/
-static MACHINE_DRIVER_START( g80v_base )
+static MACHINE_CONFIG_START( g80v_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK/2)
@@ -931,21 +931,19 @@ static MACHINE_DRIVER_START( g80v_base )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( elim2 )
- MDRV_IMPORT_FROM(g80v_base)
+static MACHINE_CONFIG_DERIVED( elim2, g80v_base )
/* custom sound board */
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(elim2_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spacfury )
- MDRV_IMPORT_FROM(g80v_base)
+static MACHINE_CONFIG_DERIVED( spacfury, g80v_base )
/* custom sound board */
MDRV_SOUND_ADD("samples", SAMPLES, 0)
@@ -953,12 +951,11 @@ static MACHINE_DRIVER_START( spacfury )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
/* speech board */
- MDRV_IMPORT_FROM(sega_speech_board)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sega_speech_board)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( zektor )
- MDRV_IMPORT_FROM(g80v_base)
+static MACHINE_CONFIG_DERIVED( zektor, g80v_base )
/* custom sound board */
MDRV_SOUND_ADD("samples", SAMPLES, 0)
@@ -969,27 +966,25 @@ static MACHINE_DRIVER_START( zektor )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
/* speech board */
- MDRV_IMPORT_FROM(sega_speech_board)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sega_speech_board)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tacscan )
- MDRV_IMPORT_FROM(g80v_base)
+static MACHINE_CONFIG_DERIVED( tacscan, g80v_base )
/* universal sound board */
- MDRV_IMPORT_FROM(sega_universal_sound_board)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sega_universal_sound_board)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( startrek )
- MDRV_IMPORT_FROM(g80v_base)
+static MACHINE_CONFIG_DERIVED( startrek, g80v_base )
/* speech board */
- MDRV_IMPORT_FROM(sega_speech_board)
+ MDRV_FRAGMENT_ADD(sega_speech_board)
/* universal sound board */
- MDRV_IMPORT_FROM(sega_universal_sound_board)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sega_universal_sound_board)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segahang.c b/src/mame/drivers/segahang.c
index 8eab15b67b9..2710644c3d0 100644
--- a/src/mame/drivers/segahang.c
+++ b/src/mame/drivers/segahang.c
@@ -913,10 +913,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( hangon_base )
-
- /* driver data */
- MDRV_DRIVER_DATA(segas1x_state)
+static MACHINE_CONFIG_START( hangon_base, segas1x_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK_25MHz/4)
@@ -942,11 +939,10 @@ static MACHINE_DRIVER_START( hangon_base )
MDRV_VIDEO_START(hangon)
MDRV_VIDEO_UPDATE(hangon)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sharrier_base )
- MDRV_IMPORT_FROM(hangon_base)
+static MACHINE_CONFIG_DERIVED( sharrier_base, hangon_base )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -959,10 +955,10 @@ static MACHINE_DRIVER_START( sharrier_base )
/* video hardware */
MDRV_VIDEO_START(sharrier)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sound_board_2203 )
+static MACHINE_CONFIG_FRAGMENT( sound_board_2203 )
/* basic machine hardware */
MDRV_CPU_ADD("soundcpu", Z80, MASTER_CLOCK_8MHz/2)
@@ -987,10 +983,10 @@ static MACHINE_DRIVER_START( sound_board_2203 )
MDRV_SOUND_CONFIG(segapcm_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sound_board_2203x2 )
+static MACHINE_CONFIG_FRAGMENT( sound_board_2203x2 )
/* basic machine hardware */
MDRV_CPU_ADD("soundcpu", Z80, MASTER_CLOCK_8MHz/2)
@@ -1025,10 +1021,10 @@ static MACHINE_DRIVER_START( sound_board_2203x2 )
MDRV_SOUND_CONFIG(segapcm_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sound_board_2151 )
+static MACHINE_CONFIG_FRAGMENT( sound_board_2151 )
/* basic machine hardware */
MDRV_CPU_ADD("soundcpu", Z80, MASTER_CLOCK_8MHz/2)
@@ -1047,7 +1043,7 @@ static MACHINE_DRIVER_START( sound_board_2151 )
MDRV_SOUND_CONFIG(segapcm_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1057,17 +1053,15 @@ MACHINE_DRIVER_END
*
*************************************/
-static MACHINE_DRIVER_START( hangon )
- MDRV_IMPORT_FROM(hangon_base)
- MDRV_IMPORT_FROM(sound_board_2203)
+static MACHINE_CONFIG_DERIVED( hangon, hangon_base )
+ MDRV_FRAGMENT_ADD(sound_board_2203)
MDRV_SEGA16SP_ADD_HANGON("segaspr1")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( shangupb )
- MDRV_IMPORT_FROM(hangon_base)
- MDRV_IMPORT_FROM(sound_board_2151)
+static MACHINE_CONFIG_DERIVED( shangupb, hangon_base )
+ MDRV_FRAGMENT_ADD(sound_board_2151)
/* not sure about these speeds, but at 6MHz, the road is not updated fast enough */
MDRV_CPU_MODIFY("maincpu")
@@ -1076,43 +1070,39 @@ static MACHINE_DRIVER_START( shangupb )
MDRV_CPU_CLOCK(10000000)
MDRV_SEGA16SP_ADD_HANGON("segaspr1")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sharrier )
- MDRV_IMPORT_FROM(sharrier_base)
- MDRV_IMPORT_FROM(sound_board_2203)
+static MACHINE_CONFIG_DERIVED( sharrier, sharrier_base )
+ MDRV_FRAGMENT_ADD(sound_board_2203)
MDRV_CPU_ADD("mcu", I8751, 8000000)
MDRV_CPU_IO_MAP(mcu_io_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_pulse)
MDRV_SEGA16SP_ADD_SHARRIER("segaspr1")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( enduror )
- MDRV_IMPORT_FROM(sharrier_base)
- MDRV_IMPORT_FROM(sound_board_2151)
+static MACHINE_CONFIG_DERIVED( enduror, sharrier_base )
+ MDRV_FRAGMENT_ADD(sound_board_2151)
MDRV_SEGA16SP_ADD_SHARRIER("segaspr1")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( enduror1 )
- MDRV_IMPORT_FROM(sharrier_base)
- MDRV_IMPORT_FROM(sound_board_2203)
+static MACHINE_CONFIG_DERIVED( enduror1, sharrier_base )
+ MDRV_FRAGMENT_ADD(sound_board_2203)
MDRV_SEGA16SP_ADD_SHARRIER("segaspr1")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( endurob2 )
- MDRV_IMPORT_FROM(sharrier_base)
- MDRV_IMPORT_FROM(sound_board_2203x2)
+static MACHINE_CONFIG_DERIVED( endurob2, sharrier_base )
+ MDRV_FRAGMENT_ADD(sound_board_2203x2)
MDRV_SEGA16SP_ADD_SHARRIER("segaspr1")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segald.c b/src/mame/drivers/segald.c
index 2c728c1438f..b78743f44de 100644
--- a/src/mame/drivers/segald.c
+++ b/src/mame/drivers/segald.c
@@ -334,7 +334,7 @@ static MACHINE_START( astron )
/* DRIVER */
-static MACHINE_DRIVER_START( astron )
+static MACHINE_CONFIG_START( astron, driver_data_t )
/* main cpu */
MDRV_CPU_ADD("maincpu", Z80, SCHEMATIC_CLOCK/4)
@@ -359,7 +359,7 @@ static MACHINE_DRIVER_START( astron )
MDRV_SOUND_ADD("ldsound", LASERDISC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( astron )
diff --git a/src/mame/drivers/segamsys.c b/src/mame/drivers/segamsys.c
index a01f3938e59..f4d69222cc8 100644
--- a/src/mame/drivers/segamsys.c
+++ b/src/mame/drivers/segamsys.c
@@ -1711,7 +1711,7 @@ static NVRAM_HANDLER( sms )
}
}
-MACHINE_DRIVER_START( sms )
+MACHINE_CONFIG_START( sms, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80, 3579540)
//MDRV_CPU_PROGRAM_MAP(sms_map)
MDRV_CPU_IO_MAP(sms_io_map)
@@ -1740,6 +1740,6 @@ MACHINE_DRIVER_START( sms )
MDRV_SOUND_ADD("snsnd", SN76496, 3579540)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segaorun.c b/src/mame/drivers/segaorun.c
index e359e34dc7f..999c98f5cf0 100644
--- a/src/mame/drivers/segaorun.c
+++ b/src/mame/drivers/segaorun.c
@@ -1113,10 +1113,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( outrun_base )
-
- /* driver data */
- MDRV_DRIVER_DATA(segas1x_state)
+static MACHINE_CONFIG_START( outrun_base, segas1x_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK/4)
@@ -1157,23 +1154,20 @@ static MACHINE_DRIVER_START( outrun_base )
MDRV_SOUND_CONFIG(segapcm_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( outrundx )
- MDRV_IMPORT_FROM(outrun_base)
+static MACHINE_CONFIG_DERIVED( outrundx, outrun_base )
MDRV_SEGA16SP_ADD_OUTRUN("segaspr1")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( outrun )
- MDRV_IMPORT_FROM(outrun_base)
+static MACHINE_CONFIG_DERIVED( outrun, outrun_base )
MDRV_NVRAM_HANDLER(outrun)
MDRV_SEGA16SP_ADD_OUTRUN("segaspr1")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( shangon )
- MDRV_IMPORT_FROM(outrun_base)
+static MACHINE_CONFIG_DERIVED( shangon, outrun_base )
MDRV_NVRAM_HANDLER(outrun)
MDRV_SCREEN_MODIFY("screen")
@@ -1183,7 +1177,7 @@ static MACHINE_DRIVER_START( shangon )
MDRV_VIDEO_UPDATE(shangon)
MDRV_SEGA16SP_ADD_16B("segaspr1")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segas16a.c b/src/mame/drivers/segas16a.c
index bd316c19d84..5ebad5a45e0 100644
--- a/src/mame/drivers/segas16a.c
+++ b/src/mame/drivers/segas16a.c
@@ -1956,10 +1956,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( system16a )
-
- /* driver data */
- MDRV_DRIVER_DATA(segas1x_state)
+static MACHINE_CONFIG_START( system16a, segas1x_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -2005,28 +2002,26 @@ static MACHINE_DRIVER_START( system16a )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system16a_no7751 )
- MDRV_IMPORT_FROM(system16a)
+static MACHINE_CONFIG_DERIVED( system16a_no7751, system16a )
MDRV_DEVICE_REMOVE("n7751")
MDRV_DEVICE_REMOVE("dac")
MDRV_SOUND_REPLACE("ymsnd", YM2151, 4000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system16a_8751 )
- MDRV_IMPORT_FROM(system16a)
+static MACHINE_CONFIG_DERIVED( system16a_8751, system16a )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", i8751_main_cpu_vblank)
MDRV_CPU_ADD("mcu", I8751, 8000000)
MDRV_CPU_IO_MAP(mcu_io_map)
MDRV_CPU_VBLANK_INT("screen", mcu_irq_assert)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segas16b.c b/src/mame/drivers/segas16b.c
index 0646733c2c4..7bc834b7f8d 100644
--- a/src/mame/drivers/segas16b.c
+++ b/src/mame/drivers/segas16b.c
@@ -3272,10 +3272,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( system16b )
-
- /* driver data */
- MDRV_DRIVER_DATA(segas1x_state)
+static MACHINE_CONFIG_START( system16b, segas1x_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK_10MHz)
@@ -3311,18 +3308,17 @@ static MACHINE_DRIVER_START( system16b )
MDRV_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_CONFIG(upd7759_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.48)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system16b_8751 )
- MDRV_IMPORT_FROM(system16b)
+static MACHINE_CONFIG_DERIVED( system16b_8751, system16b )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", i8751_main_cpu_vblank)
MDRV_CPU_ADD("mcu", I8751, MASTER_CLOCK_8MHz)
MDRV_CPU_IO_MAP(mcu_io_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_pulse)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* same as the above, but with custom Sega ICs */
@@ -3331,21 +3327,19 @@ static const ic_315_5250_interface sys16b_5250_intf =
NULL, NULL
};
-static MACHINE_DRIVER_START( system16b_5248 )
- MDRV_IMPORT_FROM(system16b)
+static MACHINE_CONFIG_DERIVED( system16b_5248, system16b )
MDRV_315_5248_ADD("315_5248")
MDRV_315_5250_ADD("315_5250_1", sys16b_5250_intf)
MDRV_315_5250_ADD("315_5250_2", sys16b_5250_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system16b_8751_5248 )
- MDRV_IMPORT_FROM(system16b_8751)
+static MACHINE_CONFIG_DERIVED( system16b_8751_5248, system16b_8751 )
MDRV_315_5248_ADD("315_5248")
MDRV_315_5250_ADD("315_5250_1", sys16b_5250_intf)
MDRV_315_5250_ADD("315_5250_2", sys16b_5250_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -3355,8 +3349,7 @@ MACHINE_DRIVER_END
*
*************************************/
-static MACHINE_DRIVER_START( atomicp ) /* 10MHz CPU Clock verified */
- MDRV_IMPORT_FROM(system16b)
+static MACHINE_CONFIG_DERIVED( atomicp, system16b ) /* 10MHz CPU Clock verified */
/* basic machine hardware */
MDRV_DEVICE_REMOVE("soundcpu")
@@ -3369,13 +3362,12 @@ static MACHINE_DRIVER_START( atomicp ) /* 10MHz CPU Clock verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_DEVICE_REMOVE("upd")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( timescan )
- MDRV_IMPORT_FROM(system16b)
+static MACHINE_CONFIG_DERIVED( timescan, system16b )
MDRV_VIDEO_START(timscanr)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segas18.c b/src/mame/drivers/segas18.c
index e8c310e5203..385a890b37e 100644
--- a/src/mame/drivers/segas18.c
+++ b/src/mame/drivers/segas18.c
@@ -1288,10 +1288,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( system18 )
-
- /* driver data */
- MDRV_DRIVER_DATA(segas1x_state)
+static MACHINE_CONFIG_START( system18, segas1x_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -1331,18 +1328,17 @@ static MACHINE_DRIVER_START( system18 )
MDRV_SOUND_ADD("rfsnd", RF5C68, 10000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system18_8751 )
- MDRV_IMPORT_FROM(system18)
+static MACHINE_CONFIG_DERIVED( system18_8751, system18 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT_HACK(NULL,0)
MDRV_CPU_ADD("mcu", I8751, 8000000)
MDRV_CPU_IO_MAP(mcu_io_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segas24.c b/src/mame/drivers/segas24.c
index 4284b704dfe..224662bca50 100644
--- a/src/mame/drivers/segas24.c
+++ b/src/mame/drivers/segas24.c
@@ -1772,7 +1772,7 @@ static const ym2151_interface ym2151_config =
*
*************************************/
-static MACHINE_DRIVER_START( system24 )
+static MACHINE_CONFIG_START( system24, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK/2)
MDRV_CPU_PROGRAM_MAP(system24_cpu1_map)
@@ -1810,12 +1810,11 @@ static MACHINE_DRIVER_START( system24 )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system24_floppy )
- MDRV_IMPORT_FROM(system24)
+static MACHINE_CONFIG_DERIVED( system24_floppy, system24 )
MDRV_NVRAM_HANDLER(system24)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/segas32.c b/src/mame/drivers/segas32.c
index 9b29c97126f..98f1c6468d5 100644
--- a/src/mame/drivers/segas32.c
+++ b/src/mame/drivers/segas32.c
@@ -2183,7 +2183,7 @@ static READ16_HANDLER( dual_pcb_masterslave )
*
*************************************/
-static MACHINE_DRIVER_START( system32 )
+static MACHINE_CONFIG_START( system32, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V60, MASTER_CLOCK/2)
@@ -2229,19 +2229,18 @@ static MACHINE_DRIVER_START( system32 )
MDRV_SOUND_ADD("rfsnd", RF5C68, RFC_CLOCK/4)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.55)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.55)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system32_v25 )
- MDRV_IMPORT_FROM(system32)
+static MACHINE_CONFIG_DERIVED( system32_v25, system32 )
/* add a V25 for protection */
MDRV_CPU_ADD("mcu", V25, 10000000)
MDRV_CPU_PROGRAM_MAP(ga2_v25_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( multi32 )
+static MACHINE_CONFIG_START( multi32, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V70, MULTI32_CLOCK/2)
@@ -2290,7 +2289,7 @@ static MACHINE_DRIVER_START( multi32 )
MDRV_SOUND_ADD("sega", MULTIPCM, MASTER_CLOCK/4)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(0, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segaxbd.c b/src/mame/drivers/segaxbd.c
index 66efa43fd19..c4429d9b251 100644
--- a/src/mame/drivers/segaxbd.c
+++ b/src/mame/drivers/segaxbd.c
@@ -1363,10 +1363,7 @@ static const ic_315_5250_interface segaxb_5250_2_intf =
NULL, NULL
};
-static MACHINE_DRIVER_START( xboard )
-
- /* driver data */
- MDRV_DRIVER_DATA(segas1x_state)
+static MACHINE_CONFIG_START( xboard, segas1x_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK/4)
@@ -1415,16 +1412,15 @@ static MACHINE_DRIVER_START( xboard )
MDRV_SOUND_CONFIG(segapcm_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( smgp )
- MDRV_IMPORT_FROM(xboard)
+static MACHINE_CONFIG_DERIVED( smgp, xboard )
MDRV_CPU_ADD("comm", Z80, 4000000)
MDRV_CPU_PROGRAM_MAP(smgp_comm_map)
MDRV_CPU_IO_MAP(smgp_comm_portmap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segaybd.c b/src/mame/drivers/segaybd.c
index fbfe46ccc3d..fd3bc43106d 100644
--- a/src/mame/drivers/segaybd.c
+++ b/src/mame/drivers/segaybd.c
@@ -1003,10 +1003,7 @@ static const sega_pcm_interface segapcm_interface =
*
*************************************/
-static MACHINE_DRIVER_START( yboard )
-
- /* driver data */
- MDRV_DRIVER_DATA(segas1x_state)
+static MACHINE_CONFIG_START( yboard, segas1x_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK/4)
@@ -1063,7 +1060,7 @@ static MACHINE_DRIVER_START( yboard )
MDRV_SOUND_CONFIG(segapcm_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/seibuspi.c b/src/mame/drivers/seibuspi.c
index 846dca9a2c2..a3ffa68df43 100644
--- a/src/mame/drivers/seibuspi.c
+++ b/src/mame/drivers/seibuspi.c
@@ -1858,7 +1858,7 @@ static MACHINE_RESET( spi )
}
}
-static MACHINE_DRIVER_START( spi )
+static MACHINE_CONFIG_START( spi, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I386, 50000000/2) /* Intel 386DX, 25MHz */
@@ -1898,7 +1898,7 @@ static MACHINE_DRIVER_START( spi )
MDRV_SOUND_CONFIG(ymf271_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_START( sxx2f )
{
@@ -1922,20 +1922,16 @@ static MACHINE_RESET( sxx2f )
sb_coin_latch = 0;
}
-static MACHINE_DRIVER_START( sxx2f ) /* Intel i386DX @ 25MHz, YMF271 @ 16.9344MHz, Z80 @ 7.159MHz(?) */
-
- MDRV_IMPORT_FROM(spi)
+static MACHINE_CONFIG_DERIVED( sxx2f, spi ) /* Intel i386DX @ 25MHz, YMF271 @ 16.9344MHz, Z80 @ 7.159MHz(?) */
MDRV_MACHINE_START(sxx2f)
MDRV_MACHINE_RESET(sxx2f)
MDRV_NVRAM_HANDLER(0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( sxx2g ) /* single board version using measured clocks */
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(spi)
+static MACHINE_CONFIG_DERIVED( sxx2g, spi ) /* single board version using measured clocks */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(28636360) /* AMD AM386DX/DX-40, 28.63636MHz */
@@ -1954,7 +1950,7 @@ static MACHINE_DRIVER_START( sxx2g ) /* single board version using measured cloc
MDRV_NVRAM_HANDLER(0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static READ32_HANDLER ( senkyu_speedup_r )
{
@@ -2202,7 +2198,7 @@ static MACHINE_RESET( seibu386 )
cpu_set_irq_callback(machine->device("maincpu"), spi_irq_callback);
}
-static MACHINE_DRIVER_START( seibu386 )
+static MACHINE_CONFIG_START( seibu386, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I386, 40000000) /* AMD 386DX, 40MHz */
@@ -2234,7 +2230,7 @@ static MACHINE_DRIVER_START( seibu386 )
MDRV_OKIM6295_ADD("oki2", 1431815, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* SYS386-F V2.0 */
static DRIVER_INIT( sys386f2 )
@@ -2256,7 +2252,7 @@ static DRIVER_INIT( sys386f2 )
}
}
-static MACHINE_DRIVER_START( sys386f2 )
+static MACHINE_CONFIG_START( sys386f2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I386, 25000000) /* 25mhz */
@@ -2288,7 +2284,7 @@ static MACHINE_DRIVER_START( sys386f2 )
MDRV_SOUND_ADD("ymz", YMZ280B, 16934400)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************************/
diff --git a/src/mame/drivers/seicross.c b/src/mame/drivers/seicross.c
index 94f80e27504..96e0e425ba1 100644
--- a/src/mame/drivers/seicross.c
+++ b/src/mame/drivers/seicross.c
@@ -399,7 +399,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( nvram )
+static MACHINE_CONFIG_START( nvram, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3072000) /* 3.072 MHz? */
@@ -439,18 +439,17 @@ static MACHINE_DRIVER_START( nvram )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( no_nvram )
+static MACHINE_CONFIG_DERIVED( no_nvram, nvram )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nvram)
MDRV_CPU_MODIFY("mcu")
MDRV_CPU_PROGRAM_MAP(mcu_no_nvram_map)
MDRV_NVRAM_HANDLER(0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/sengokmj.c b/src/mame/drivers/sengokmj.c
index 9d9bc604243..8e0f4df4a6b 100644
--- a/src/mame/drivers/sengokmj.c
+++ b/src/mame/drivers/sengokmj.c
@@ -278,7 +278,7 @@ static INTERRUPT_GEN( sengokmj_interrupt )
cpu_set_input_line_and_vector(device,0,HOLD_LINE,0xc8/4);
}
-static MACHINE_DRIVER_START( sengokmj )
+static MACHINE_CONFIG_START( sengokmj, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, 16000000/2) /* V30-8 */
@@ -307,7 +307,7 @@ static MACHINE_DRIVER_START( sengokmj )
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM3812_INTERFACE(14318180/4,1320000)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( sengokmj )
diff --git a/src/mame/drivers/senjyo.c b/src/mame/drivers/senjyo.c
index 6a76db879ca..1a34f61fea5 100644
--- a/src/mame/drivers/senjyo.c
+++ b/src/mame/drivers/senjyo.c
@@ -537,7 +537,7 @@ static const samples_interface senjyo_samples_interface =
};
-static MACHINE_DRIVER_START( senjyo )
+static MACHINE_CONFIG_START( senjyo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz? */
@@ -583,19 +583,18 @@ static MACHINE_DRIVER_START( senjyo )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(senjyo_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( starforb )
+static MACHINE_CONFIG_DERIVED( starforb, senjyo )
/* basic machine hardware */
- MDRV_IMPORT_FROM(senjyo)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(starforb_map)
MDRV_CPU_MODIFY("sub")
MDRV_CPU_PROGRAM_MAP(starforb_sound_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/seta.c b/src/mame/drivers/seta.c
index ecd85fa8b8a..ec7bef3ac4a 100644
--- a/src/mame/drivers/seta.c
+++ b/src/mame/drivers/seta.c
@@ -6850,9 +6850,7 @@ static INTERRUPT_GEN( tndrcade_sub_interrupt )
cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
}
-static MACHINE_DRIVER_START( tndrcade )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( tndrcade, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000/2) /* 8 MHz */
@@ -6888,7 +6886,7 @@ static MACHINE_DRIVER_START( tndrcade )
MDRV_SOUND_ADD("ym2", YM3812, 16000000/4) /* 4 MHz */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -6901,9 +6899,7 @@ MACHINE_DRIVER_END
/* twineagl lev 3 = lev 2 + lev 1 ! */
-static MACHINE_DRIVER_START( twineagl )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( twineagl, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000/2) /* 8 MHz */
@@ -6935,7 +6931,7 @@ static MACHINE_DRIVER_START( twineagl )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -6944,9 +6940,7 @@ MACHINE_DRIVER_END
/* downtown lev 3 = lev 2 + lev 1 ! */
-static MACHINE_DRIVER_START( downtown )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( downtown, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz/2) /* verified on pcb */
@@ -6976,7 +6970,7 @@ static MACHINE_DRIVER_START( downtown )
MDRV_SOUND_ADD("x1snd", X1_010, 16000000) /* 16 MHz */
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -7003,9 +6997,7 @@ static INTERRUPT_GEN( calibr50_interrupt )
}
-static MACHINE_DRIVER_START( usclssic )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( usclssic, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000/2) /* 8 MHz */
@@ -7040,7 +7032,7 @@ static MACHINE_DRIVER_START( usclssic )
MDRV_SOUND_CONFIG(seta_sound_intf2)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -7052,9 +7044,7 @@ MACHINE_DRIVER_END
Test mode shows a 16ms and 4ms counters. I wonder if every game has
5 ints per frame */
-static MACHINE_DRIVER_START( calibr50 )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( calibr50, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz/2) /* verified on pcb */
@@ -7087,7 +7077,7 @@ static MACHINE_DRIVER_START( calibr50 )
MDRV_SOUND_ADD("x1snd", X1_010, 16000000) /* 16 MHz */
MDRV_SOUND_CONFIG(seta_sound_intf2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -7096,9 +7086,7 @@ MACHINE_DRIVER_END
/* metafox lev 3 = lev 2 + lev 1 ! */
-static MACHINE_DRIVER_START( metafox )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( metafox, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000/2) /* 8 MHz */
@@ -7130,16 +7118,14 @@ static MACHINE_DRIVER_START( metafox )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Athena no Hatena?
***************************************************************************/
-static MACHINE_DRIVER_START( atehate )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( atehate, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7167,7 +7153,7 @@ static MACHINE_DRIVER_START( atehate )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -7180,9 +7166,7 @@ MACHINE_DRIVER_END
samples are bankswitched
*/
-static MACHINE_DRIVER_START( blandia )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( blandia, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7212,11 +7196,9 @@ static MACHINE_DRIVER_START( blandia )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( blandiap )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( blandiap, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7246,16 +7228,14 @@ static MACHINE_DRIVER_START( blandiap )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Block Carnival
***************************************************************************/
-static MACHINE_DRIVER_START( blockcar )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( blockcar, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000/2) /* 8 MHz */
@@ -7283,16 +7263,14 @@ static MACHINE_DRIVER_START( blockcar )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Daioh
***************************************************************************/
-static MACHINE_DRIVER_START( daioh )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( daioh, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7320,7 +7298,7 @@ static MACHINE_DRIVER_START( daioh )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Dragon Unit, Quiz Kokology, Strike Gunner
@@ -7332,9 +7310,7 @@ MACHINE_DRIVER_END
lev 2 drives the game
*/
-static MACHINE_DRIVER_START( drgnunit )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( drgnunit, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000/2) /* 8 MHz */
@@ -7363,14 +7339,12 @@ static MACHINE_DRIVER_START( drgnunit )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Same as qzkklogy, but with a 16MHz CPU and different
layout for the layer's tiles */
-static MACHINE_DRIVER_START( qzkklgy2 )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( qzkklgy2, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7399,7 +7373,7 @@ static MACHINE_DRIVER_START( qzkklgy2 )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Seta Roulette
@@ -7416,9 +7390,7 @@ static INTERRUPT_GEN( setaroul_interrupt )
}
-static MACHINE_DRIVER_START( setaroul )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( setaroul, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000/2) /* 8 MHz */
@@ -7448,16 +7420,14 @@ static MACHINE_DRIVER_START( setaroul )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Eight Force
***************************************************************************/
-static MACHINE_DRIVER_START( eightfrc )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( eightfrc, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7485,7 +7455,7 @@ static MACHINE_DRIVER_START( eightfrc )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -7497,9 +7467,7 @@ MACHINE_DRIVER_END
lev 1 == lev 3 (writes to $500000, bit 4 -> 1 then 0)
lev 2 drives the game
*/
-static MACHINE_DRIVER_START( extdwnhl )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( extdwnhl, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7528,7 +7496,7 @@ static MACHINE_DRIVER_START( extdwnhl )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -7551,9 +7519,7 @@ static MACHINE_START( wrofaero ) { uPD71054_timer_init(machine); }
lev 2: VBlank
lev 4: Sound (generated by a timer mapped at $d00000-6 ?)
*/
-static MACHINE_DRIVER_START( gundhara )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( gundhara, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7591,7 +7557,7 @@ static MACHINE_DRIVER_START( gundhara )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -7602,9 +7568,7 @@ MACHINE_DRIVER_END
lev 1 == lev 3 (writes to $500000, bit 4 -> 1 then 0)
lev 2 drives the game
*/
-static MACHINE_DRIVER_START( jjsquawk )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( jjsquawk, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7633,11 +7597,9 @@ static MACHINE_DRIVER_START( jjsquawk )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jjsquawb )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( jjsquawb, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7666,16 +7628,14 @@ static MACHINE_DRIVER_START( jjsquawb )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
(Kamen) Masked Riders Club Battle Race
***************************************************************************/
/* kamenrid: lev 2 by vblank, lev 4 by timer */
-static MACHINE_DRIVER_START( kamenrid )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( kamenrid, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7707,7 +7667,7 @@ static MACHINE_DRIVER_START( kamenrid )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Orbs
@@ -7715,9 +7675,7 @@ MACHINE_DRIVER_END
/* The CPU clock has been verified/measured, PCB only has one OSC and it's 14.318180 MHz */
-static MACHINE_DRIVER_START( orbs )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( orbs, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14318180/2) /* 7.143 MHz */
@@ -7745,16 +7703,14 @@ static MACHINE_DRIVER_START( orbs )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Kero Kero Keroppi no Issyoni Asobou
***************************************************************************/
-static MACHINE_DRIVER_START( keroppi )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( keroppi, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14318180/2) /* 7.143 MHz */
@@ -7784,16 +7740,14 @@ static MACHINE_DRIVER_START( keroppi )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Krazy Bowl
***************************************************************************/
-static MACHINE_DRIVER_START( krzybowl )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( krzybowl, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7821,7 +7775,7 @@ static MACHINE_DRIVER_START( krzybowl )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -7829,9 +7783,7 @@ MACHINE_DRIVER_END
***************************************************************************/
/* madshark: lev 2 by vblank, lev 4 by timer */
-static MACHINE_DRIVER_START( madshark )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( madshark, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7865,7 +7817,7 @@ static MACHINE_DRIVER_START( madshark )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Mobile Suit Gundam
@@ -7873,9 +7825,7 @@ MACHINE_DRIVER_END
/* msgundam lev 2 == lev 6 ! */
-static MACHINE_DRIVER_START( msgundam )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( msgundam, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7912,7 +7862,7 @@ static MACHINE_DRIVER_START( msgundam )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -7920,9 +7870,7 @@ MACHINE_DRIVER_END
Oishii Puzzle
***************************************************************************/
-static MACHINE_DRIVER_START( oisipuzl )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( oisipuzl, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7950,7 +7898,7 @@ static MACHINE_DRIVER_START( oisipuzl )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Triple Fun
@@ -7958,9 +7906,7 @@ MACHINE_DRIVER_END
/* same as oisipuzl but with different interrupts and sound */
-static MACHINE_DRIVER_START( triplfun )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( triplfun, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -7987,15 +7933,13 @@ static MACHINE_DRIVER_START( triplfun )
MDRV_OKIM6295_ADD("oki", 792000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Pro Mahjong Kiwame
***************************************************************************/
-static MACHINE_DRIVER_START( kiwame )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( kiwame, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -8024,7 +7968,7 @@ static MACHINE_DRIVER_START( kiwame )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -8034,9 +7978,7 @@ MACHINE_DRIVER_END
/* pretty much like wrofaero, but ints are 1&2, not 2&4 */
-static MACHINE_DRIVER_START( rezon )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( rezon, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -8064,7 +8006,7 @@ static MACHINE_DRIVER_START( rezon )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -8074,9 +8016,7 @@ MACHINE_DRIVER_END
/* thunderl lev 2 = lev 3 - other levels lead to an error */
-static MACHINE_DRIVER_START( thunderl )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( thunderl, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000/2) /* 8 MHz */
@@ -8104,12 +8044,10 @@ static MACHINE_DRIVER_START( thunderl )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wiggie )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( wiggie, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000/2) /* 8 MHz */
@@ -8138,17 +8076,14 @@ static MACHINE_DRIVER_START( wiggie )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( superbar )
- MDRV_IMPORT_FROM( wiggie )
+static MACHINE_CONFIG_DERIVED( superbar, wiggie )
MDRV_GFXDECODE(superbar)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( wits )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( wits, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000/2) /* 8 MHz */
@@ -8176,16 +8111,14 @@ static MACHINE_DRIVER_START( wits )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Ultraman Club / SD Gundam Neo Battling
***************************************************************************/
-static MACHINE_DRIVER_START( umanclub )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( umanclub, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -8213,16 +8146,14 @@ static MACHINE_DRIVER_START( umanclub )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Ultra Toukond Densetsu
***************************************************************************/
-static MACHINE_DRIVER_START( utoukond )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( utoukond, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -8259,16 +8190,14 @@ static MACHINE_DRIVER_START( utoukond )
MDRV_SOUND_CONFIG(utoukond_ym3438_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.30)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
War of Aero
***************************************************************************/
-static MACHINE_DRIVER_START( wrofaero )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( wrofaero, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -8304,7 +8233,7 @@ static MACHINE_DRIVER_START( wrofaero )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -8318,9 +8247,7 @@ MACHINE_DRIVER_END
at int 1 is necessary: it plays the background music.
*/
-static MACHINE_DRIVER_START( zingzip )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( zingzip, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -8349,15 +8276,13 @@ static MACHINE_DRIVER_START( zingzip )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Pairs Love
***************************************************************************/
-static MACHINE_DRIVER_START( pairlove )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( pairlove, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000/2) /* 8 MHz */
@@ -8385,7 +8310,7 @@ static MACHINE_DRIVER_START( pairlove )
MDRV_SOUND_CONFIG(seta_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -8401,9 +8326,7 @@ static INTERRUPT_GEN( crazyfgt_interrupt )
}
}
-static MACHINE_DRIVER_START( crazyfgt )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( crazyfgt, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -8433,7 +8356,7 @@ static MACHINE_DRIVER_START( crazyfgt )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH) // clock?
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
International Toote
@@ -8493,9 +8416,7 @@ static const pia6821_interface inttoote_pia1_intf =
DEVCB_NULL /* IRQB */
};
-static MACHINE_DRIVER_START( inttoote )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( inttoote, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -8530,13 +8451,12 @@ static MACHINE_DRIVER_START( inttoote )
/* devices */
MDRV_MSM6242_ADD("rtc")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jockeyc )
- MDRV_IMPORT_FROM( inttoote )
+static MACHINE_CONFIG_DERIVED( jockeyc, inttoote )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(jockeyc_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/seta2.c b/src/mame/drivers/seta2.c
index 0d967b165e5..a4ef68a6e68 100644
--- a/src/mame/drivers/seta2.c
+++ b/src/mame/drivers/seta2.c
@@ -2275,9 +2275,7 @@ static const x1_010_interface x1_010_sound_intf =
};
-static MACHINE_DRIVER_START( mj4simai )
-
- MDRV_DRIVER_DATA( seta2_state )
+static MACHINE_CONFIG_START( mj4simai, seta2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,50000000/3) /* !! TMP68301 @ 16.666666MHz !! */
@@ -2309,12 +2307,11 @@ static MACHINE_DRIVER_START( mj4simai )
MDRV_SOUND_CONFIG(x1_010_sound_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gundamex )
+static MACHINE_CONFIG_DERIVED( gundamex, mj4simai )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mj4simai)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gundamex_map)
@@ -2323,24 +2320,21 @@ static MACHINE_DRIVER_START( gundamex )
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0x00, 0x180-1, 0x100, 0x1e0-1)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( grdians )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(mj4simai)
+static MACHINE_CONFIG_DERIVED( grdians, mj4simai )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(grdians_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0x80, 0x80 + 0x130 -1, 0x80, 0x80 + 0xe8 -1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( myangel )
+static MACHINE_CONFIG_DERIVED( myangel, mj4simai )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mj4simai)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(myangel_map)
@@ -2349,13 +2343,12 @@ static MACHINE_DRIVER_START( myangel )
MDRV_SCREEN_VISIBLE_AREA(0, 0x178-1, 0x00, 0xf0-1)
MDRV_VIDEO_START(seta2_offset)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( myangel2 )
+static MACHINE_CONFIG_DERIVED( myangel2, mj4simai )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mj4simai)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(myangel2_map)
@@ -2364,38 +2357,35 @@ static MACHINE_DRIVER_START( myangel2 )
MDRV_SCREEN_VISIBLE_AREA(0, 0x178-1, 0x00, 0xf0-1)
MDRV_VIDEO_START(seta2_offset)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pzlbowl )
+static MACHINE_CONFIG_DERIVED( pzlbowl, mj4simai )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mj4simai)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(pzlbowl_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0x10, 0x190-1, 0x100, 0x1f0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( penbros )
+static MACHINE_CONFIG_DERIVED( penbros, mj4simai )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mj4simai)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(penbros_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x140-1, 0x80, 0x160-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( samshoot )
+static MACHINE_CONFIG_DERIVED( samshoot, mj4simai )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mj4simai)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(samshoot_map)
MDRV_CPU_VBLANK_INT_HACK(samshoot_interrupt,2)
@@ -2405,7 +2395,7 @@ static MACHINE_DRIVER_START( samshoot )
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0x40, 0x180-1, 0x40, 0x130-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -2458,9 +2448,7 @@ static MACHINE_RESET( funcube )
state->funcube_hopper_motor = 0;
}
-static MACHINE_DRIVER_START( funcube )
-
- MDRV_DRIVER_DATA( seta2_state )
+static MACHINE_CONFIG_START( funcube, seta2_state )
MDRV_CPU_ADD("maincpu", M68040, XTAL_25_447MHz) // !! XCF5206 actually !!
MDRV_CPU_PROGRAM_MAP(funcube_map)
@@ -2494,7 +2482,7 @@ static MACHINE_DRIVER_START( funcube )
// MSM9810B
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/sf.c b/src/mame/drivers/sf.c
index d068ce57f52..abc124030be 100644
--- a/src/mame/drivers/sf.c
+++ b/src/mame/drivers/sf.c
@@ -826,10 +826,7 @@ static MACHINE_RESET( sf )
state->fgscroll = 0;
}
-static MACHINE_DRIVER_START( sf )
-
- /* driver data */
- MDRV_DRIVER_DATA(sf_state)
+static MACHINE_CONFIG_START( sf, sf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz ? (xtal is 16MHz) */
@@ -879,34 +876,31 @@ static MACHINE_DRIVER_START( sf )
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sfus )
+static MACHINE_CONFIG_DERIVED( sfus, sf )
/* basic machine hardware */
- MDRV_IMPORT_FROM(sf)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sfus_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sfjp )
+static MACHINE_CONFIG_DERIVED( sfjp, sf )
/* basic machine hardware */
- MDRV_IMPORT_FROM(sf)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sfjp_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sfp )
+static MACHINE_CONFIG_DERIVED( sfp, sf )
/* basic machine hardware */
- MDRV_IMPORT_FROM(sf)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_VBLANK_INT("screen", irq6_line_hold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( sf )
diff --git a/src/mame/drivers/sfbonus.c b/src/mame/drivers/sfbonus.c
index 128edb7f36f..9fd2f5dd549 100644
--- a/src/mame/drivers/sfbonus.c
+++ b/src/mame/drivers/sfbonus.c
@@ -1246,7 +1246,7 @@ static NVRAM_HANDLER( sfbonus )
}
-static MACHINE_DRIVER_START( sfbonus )
+static MACHINE_CONFIG_START( sfbonus, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80, 6000000) // custom packaged z80 CPU ?? Mhz
MDRV_CPU_PROGRAM_MAP(sfbonus_map)
MDRV_CPU_IO_MAP(sfbonus_io)
@@ -1276,7 +1276,7 @@ static MACHINE_DRIVER_START( sfbonus )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Skill Fruit Bonus */
diff --git a/src/mame/drivers/sfcbox.c b/src/mame/drivers/sfcbox.c
index 7ed50e52ced..025297afe8f 100644
--- a/src/mame/drivers/sfcbox.c
+++ b/src/mame/drivers/sfcbox.c
@@ -206,10 +206,7 @@ static INPUT_PORTS_START( snes )
#endif
INPUT_PORTS_END
-static MACHINE_DRIVER_START( snes )
-
- /* driver data */
- MDRV_DRIVER_DATA(snes_state)
+static MACHINE_CONFIG_START( snes, snes_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", _5A22, 3580000*6) /* 2.68Mhz, also 3.58Mhz */
@@ -236,14 +233,13 @@ static MACHINE_DRIVER_START( snes )
MDRV_SOUND_ADD("spc700", SNES, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sfcbox )
- MDRV_IMPORT_FROM( snes )
+static MACHINE_CONFIG_DERIVED( sfcbox, snes )
// ...
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/sfkick.c b/src/mame/drivers/sfkick.c
index 23551990d45..b540b78f003 100644
--- a/src/mame/drivers/sfkick.c
+++ b/src/mame/drivers/sfkick.c
@@ -457,7 +457,7 @@ static const ym2203_interface ym2203_config =
irqhandler
};
-static MACHINE_DRIVER_START( sfkick )
+static MACHINE_CONFIG_START( sfkick, driver_data_t )
MDRV_CPU_ADD("maincpu",Z80,MASTER_CLOCK/6)
MDRV_CPU_PROGRAM_MAP(sfkick_map)
@@ -496,7 +496,7 @@ static MACHINE_DRIVER_START( sfkick )
MDRV_SOUND_ROUTE(2, "mono", 0.25)
MDRV_SOUND_ROUTE(3, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT(sfkick)
{
diff --git a/src/mame/drivers/sg1000a.c b/src/mame/drivers/sg1000a.c
index d15f5633460..9188653e8f6 100644
--- a/src/mame/drivers/sg1000a.c
+++ b/src/mame/drivers/sg1000a.c
@@ -263,7 +263,7 @@ static I8255A_INTERFACE( ppi8255_intf )
*
*************************************/
-static MACHINE_DRIVER_START( sg1000a )
+static MACHINE_CONFIG_START( sg1000a, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_3_579545MHz)
MDRV_CPU_PROGRAM_MAP(program_map)
@@ -273,7 +273,7 @@ static MACHINE_DRIVER_START( sg1000a )
MDRV_I8255A_ADD( "ppi8255", ppi8255_intf )
/* video hardware */
- MDRV_IMPORT_FROM(tms9928a)
+ MDRV_FRAGMENT_ADD(tms9928a)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_REFRESH_RATE((float)XTAL_10_738635MHz/2/342/262)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -284,7 +284,7 @@ static MACHINE_DRIVER_START( sg1000a )
MDRV_SOUND_ADD("snsnd", SN76489, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/shadfrce.c b/src/mame/drivers/shadfrce.c
index 4ee121e7fc4..23014ea3612 100644
--- a/src/mame/drivers/shadfrce.c
+++ b/src/mame/drivers/shadfrce.c
@@ -556,9 +556,7 @@ static const ym2151_interface ym2151_config =
irq_handler
};
-static MACHINE_DRIVER_START( shadfrce )
-
- MDRV_DRIVER_DATA( shadfrce_state )
+static MACHINE_CONFIG_START( shadfrce, shadfrce_state )
MDRV_CPU_ADD("maincpu", M68000, CPU_CLOCK) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(shadfrce_map)
@@ -589,7 +587,7 @@ static MACHINE_DRIVER_START( shadfrce )
MDRV_OKIM6295_ADD("oki", XTAL_13_4952MHz/8, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Rom Defs. */
diff --git a/src/mame/drivers/shangha3.c b/src/mame/drivers/shangha3.c
index d2406ed644e..ae5e9f38185 100644
--- a/src/mame/drivers/shangha3.c
+++ b/src/mame/drivers/shangha3.c
@@ -476,7 +476,7 @@ static const ym3438_interface ym3438_config =
};
-static MACHINE_DRIVER_START( shangha3 )
+static MACHINE_CONFIG_START( shangha3, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -508,10 +508,10 @@ static MACHINE_DRIVER_START( shangha3 )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( heberpop )
+static MACHINE_CONFIG_START( heberpop, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -548,10 +548,10 @@ static MACHINE_DRIVER_START( heberpop )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( blocken )
+static MACHINE_CONFIG_START( blocken, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -588,7 +588,7 @@ static MACHINE_DRIVER_START( blocken )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/shanghai.c b/src/mame/drivers/shanghai.c
index 8c95072d733..1221a3cf2df 100644
--- a/src/mame/drivers/shanghai.c
+++ b/src/mame/drivers/shanghai.c
@@ -424,7 +424,7 @@ static const ym2203_interface kothello_ym2203_interface =
static const hd63484_interface shanghai_hd63484_intf = { 0 };
-static MACHINE_DRIVER_START( shanghai )
+static MACHINE_CONFIG_START( shanghai, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,16000000/2) /* ? */
@@ -456,10 +456,10 @@ static MACHINE_DRIVER_START( shanghai )
MDRV_SOUND_ROUTE(1, "mono", 0.15)
MDRV_SOUND_ROUTE(2, "mono", 0.15)
MDRV_SOUND_ROUTE(3, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( shangha2 )
+static MACHINE_CONFIG_START( shangha2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,16000000/2) /* ? */
@@ -490,10 +490,10 @@ static MACHINE_DRIVER_START( shangha2 )
MDRV_SOUND_ROUTE(1, "mono", 0.15)
MDRV_SOUND_ROUTE(2, "mono", 0.15)
MDRV_SOUND_ROUTE(3, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kothello )
+static MACHINE_CONFIG_START( kothello, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,16000000/2) /* ? */
@@ -532,7 +532,7 @@ static MACHINE_DRIVER_START( kothello )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
SEIBU_SOUND_SYSTEM_ADPCM_INTERFACE
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/shangkid.c b/src/mame/drivers/shangkid.c
index 747d103afb0..6e99a023bec 100644
--- a/src/mame/drivers/shangkid.c
+++ b/src/mame/drivers/shangkid.c
@@ -373,7 +373,7 @@ static const ay8910_interface shangkid_ay8910_interface =
};
-static MACHINE_DRIVER_START( chinhero )
+static MACHINE_CONFIG_START( chinhero, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/6) /* verified on pcb */
@@ -417,13 +417,12 @@ static MACHINE_DRIVER_START( chinhero )
MDRV_SOUND_ADD("aysnd", AY8910, XTAL_18_432MHz/12) /* verified on pcb */
MDRV_SOUND_CONFIG(chinhero_ay8910_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( shangkid )
+static MACHINE_CONFIG_DERIVED( shangkid, chinhero )
/* basic machine hardware */
- MDRV_IMPORT_FROM(chinhero)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(shangkid_main_map)
@@ -441,7 +440,7 @@ static MACHINE_DRIVER_START( shangkid )
MDRV_SOUND_MODIFY("aysnd")
MDRV_SOUND_CONFIG(shangkid_ay8910_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -466,7 +465,7 @@ static ADDRESS_MAP_START( dynamski_portmap, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_data_address_w)
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( dynamski )
+static MACHINE_CONFIG_START( dynamski, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3000000) /* ? */
@@ -493,7 +492,7 @@ static MACHINE_DRIVER_START( dynamski )
MDRV_SOUND_ADD("aysnd", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************************/
diff --git a/src/mame/drivers/shaolins.c b/src/mame/drivers/shaolins.c
index abca7c1261a..357097865b2 100644
--- a/src/mame/drivers/shaolins.c
+++ b/src/mame/drivers/shaolins.c
@@ -200,7 +200,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( shaolins )
+static MACHINE_CONFIG_START( shaolins, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/12) /* verified on pcb */
@@ -230,18 +230,17 @@ static MACHINE_DRIVER_START( shaolins )
MDRV_SOUND_ADD("sn2", SN76489A, MASTER_CLOCK/6) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#if 0 // a bootleg board was found with downgraded sound hardware, but is otherwise the same
-static MACHINE_DRIVER_START( shaolinb )
- MDRV_IMPORT_FROM(shaolins)
+static MACHINE_CONFIG_DERIVED( shaolinb, shaolins )
MDRV_SOUND_REPLACE("sn1", SN76489, MASTER_CLOCK/12) /* only type verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_SOUND_REPLACE("sn2", SN76489, MASTER_CLOCK/6) /* only type verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#endif
/***************************************************************************
diff --git a/src/mame/drivers/shisen.c b/src/mame/drivers/shisen.c
index 3bd7e8193a3..c829f1fed6f 100644
--- a/src/mame/drivers/shisen.c
+++ b/src/mame/drivers/shisen.c
@@ -215,7 +215,7 @@ static const ym2151_interface ym2151_config =
-static MACHINE_DRIVER_START( shisen )
+static MACHINE_CONFIG_START( shisen, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 6000000) /* 6 MHz ? */
@@ -257,7 +257,7 @@ static MACHINE_DRIVER_START( shisen )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/shootout.c b/src/mame/drivers/shootout.c
index a1b11adac80..8d819e1e3d7 100644
--- a/src/mame/drivers/shootout.c
+++ b/src/mame/drivers/shootout.c
@@ -260,9 +260,7 @@ static const ym2203_interface ym2203_interface2 =
shootout_snd2_irq
};
-static MACHINE_DRIVER_START( shootout )
-
- MDRV_DRIVER_DATA( shootout_state )
+static MACHINE_CONFIG_START( shootout, shootout_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 2000000) /* 2 MHz? */
@@ -292,12 +290,10 @@ static MACHINE_DRIVER_START( shootout )
MDRV_SOUND_ADD("ymsnd", YM2203, 1500000)
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( shootouj )
- MDRV_DRIVER_DATA( shootout_state )
+static MACHINE_CONFIG_START( shootouj, shootout_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 2000000) /* 2 MHz? */
@@ -324,7 +320,7 @@ static MACHINE_DRIVER_START( shootouj )
MDRV_SOUND_ADD("ymsnd", YM2203, 1500000)
MDRV_SOUND_CONFIG(ym2203_interface2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( shootout )
diff --git a/src/mame/drivers/shougi.c b/src/mame/drivers/shougi.c
index 410b467d4cc..8f05c3add68 100644
--- a/src/mame/drivers/shougi.c
+++ b/src/mame/drivers/shougi.c
@@ -392,9 +392,7 @@ INPUT_PORTS_END
-static MACHINE_DRIVER_START( shougi )
-
- MDRV_DRIVER_DATA( shougi_state )
+static MACHINE_CONFIG_START( shougi, shougi_state )
MDRV_CPU_ADD("maincpu", Z80,10000000/4)
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -430,7 +428,7 @@ static MACHINE_DRIVER_START( shougi )
MDRV_SOUND_ADD("aysnd", AY8910, 10000000/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/shuuz.c b/src/mame/drivers/shuuz.c
index 30822fadc60..eb61d2be4e3 100644
--- a/src/mame/drivers/shuuz.c
+++ b/src/mame/drivers/shuuz.c
@@ -258,8 +258,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( shuuz )
- MDRV_DRIVER_DATA(shuuz_state)
+static MACHINE_CONFIG_START( shuuz, shuuz_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -288,7 +287,7 @@ static MACHINE_DRIVER_START( shuuz )
MDRV_OKIM6295_ADD("oki", ATARI_CLOCK_14MHz/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/sidearms.c b/src/mame/drivers/sidearms.c
index edf6739cbeb..4e2fd6190ed 100644
--- a/src/mame/drivers/sidearms.c
+++ b/src/mame/drivers/sidearms.c
@@ -652,9 +652,7 @@ static const ym2151_interface whizz_ym2151_interface =
irqhandler
};
-static MACHINE_DRIVER_START( sidearms )
-
- MDRV_DRIVER_DATA(sidearms_state)
+static MACHINE_CONFIG_START( sidearms, sidearms_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz (?) */
@@ -696,12 +694,10 @@ static MACHINE_DRIVER_START( sidearms )
MDRV_SOUND_ROUTE(1, "mono", 0.15)
MDRV_SOUND_ROUTE(2, "mono", 0.15)
MDRV_SOUND_ROUTE(3, "mono", 0.25)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( turtship )
- MDRV_DRIVER_DATA(sidearms_state)
+static MACHINE_CONFIG_START( turtship, sidearms_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz (?) */
@@ -743,11 +739,9 @@ static MACHINE_DRIVER_START( turtship )
MDRV_SOUND_ROUTE(1, "mono", 0.15)
MDRV_SOUND_ROUTE(2, "mono", 0.15)
MDRV_SOUND_ROUTE(3, "mono", 0.25)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( whizz )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA(sidearms_state)
+static MACHINE_CONFIG_START( whizz, sidearms_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz (?) */
@@ -785,7 +779,7 @@ static MACHINE_DRIVER_START( whizz )
MDRV_SOUND_CONFIG(whizz_ym2151_interface)
MDRV_SOUND_ROUTE(0, "mono", 1.0)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/sidepckt.c b/src/mame/drivers/sidepckt.c
index 21b2023ecd8..5f39b112e56 100644
--- a/src/mame/drivers/sidepckt.c
+++ b/src/mame/drivers/sidepckt.c
@@ -259,9 +259,7 @@ static const ym3526_interface ym3526_config =
-static MACHINE_DRIVER_START( sidepckt )
-
- MDRV_DRIVER_DATA(sidepckt_state)
+static MACHINE_CONFIG_START( sidepckt, sidepckt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2000000) /* 2 MHz */
@@ -296,7 +294,7 @@ static MACHINE_DRIVER_START( sidepckt )
MDRV_SOUND_ADD("ym2", YM3526, 3000000)
MDRV_SOUND_CONFIG(ym3526_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/sigmab52.c b/src/mame/drivers/sigmab52.c
index 875449d2ebb..e3a15b3720d 100644
--- a/src/mame/drivers/sigmab52.c
+++ b/src/mame/drivers/sigmab52.c
@@ -564,7 +564,7 @@ static const hd63484_interface jwildb52_hd63484_intf = { 1 };
* Machine Drivers *
*************************/
-static MACHINE_DRIVER_START( jwildb52 )
+static MACHINE_CONFIG_START( jwildb52, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CLOCK/9) /* 2 MHz */
@@ -595,7 +595,7 @@ static MACHINE_DRIVER_START( jwildb52 )
MDRV_VIDEO_START(jwildb52)
MDRV_VIDEO_UPDATE(jwildb52)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/sigmab98.c b/src/mame/drivers/sigmab98.c
index 999da03eaf9..1206a60cd21 100644
--- a/src/mame/drivers/sigmab98.c
+++ b/src/mame/drivers/sigmab98.c
@@ -461,7 +461,7 @@ static INTERRUPT_GEN( gegege_vblank_interrupt )
cpu_set_input_line_and_vector(device, 0, HOLD_LINE, 0x5a);
}
-static MACHINE_DRIVER_START( gegege )
+static MACHINE_CONFIG_START( gegege, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80, XTAL_27MHz / 4) // ?
MDRV_CPU_PROGRAM_MAP(gegege_mem_map)
MDRV_CPU_IO_MAP(gegege_io_map)
@@ -490,7 +490,7 @@ static MACHINE_DRIVER_START( gegege )
MDRV_SOUND_ADD("ymz", YMZ280B, XTAL_27MHz / 2) // ?
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/silkroad.c b/src/mame/drivers/silkroad.c
index 6e8dc0c4fde..e6b78ee0876 100644
--- a/src/mame/drivers/silkroad.c
+++ b/src/mame/drivers/silkroad.c
@@ -278,9 +278,7 @@ static GFXDECODE_START( silkroad )
GFXDECODE_ENTRY( "gfx1", 0, tiles16x16x6_layout, 0x0000, 256 )
GFXDECODE_END
-static MACHINE_DRIVER_START( silkroad )
-
- MDRV_DRIVER_DATA( silkroad_state )
+static MACHINE_CONFIG_START( silkroad, silkroad_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000)
@@ -315,7 +313,7 @@ static MACHINE_DRIVER_START( silkroad )
MDRV_OKIM6295_ADD("oki2", 2112000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.45)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.45)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/simpl156.c b/src/mame/drivers/simpl156.c
index 356d501ed8d..e543f22e259 100644
--- a/src/mame/drivers/simpl156.c
+++ b/src/mame/drivers/simpl156.c
@@ -415,10 +415,7 @@ static const deco16ic_interface simpl156_deco16ic_intf =
NULL
};
-static MACHINE_DRIVER_START( chainrec )
-
- /* driver data */
- MDRV_DRIVER_DATA(simpl156_state)
+static MACHINE_CONFIG_START( chainrec, simpl156_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000 /* /4 */) /*DE156*/ /* 7.000 MHz */ /* measured at 7.. seems to need 28? */
@@ -451,39 +448,39 @@ static MACHINE_DRIVER_START( chainrec )
MDRV_OKIM6295_ADD("okimusic", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( magdrop, chainrec )
-static MACHINE_DRIVER_START( magdrop )
/* basic machine hardware */
- MDRV_IMPORT_FROM(chainrec)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(magdrop_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( magdropp, chainrec )
-static MACHINE_DRIVER_START( magdropp )
/* basic machine hardware */
- MDRV_IMPORT_FROM(chainrec)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(magdropp_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( joemacr, chainrec )
-static MACHINE_DRIVER_START( joemacr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(chainrec)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(joemacr_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( mitchell156, chainrec )
-static MACHINE_DRIVER_START( mitchell156 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(chainrec)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mitchell156_map)
MDRV_OKIM6295_REPLACE("okimusic", 32220000/32, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/simpsons.c b/src/mame/drivers/simpsons.c
index 9fbcf1b7ff0..d156c2991e2 100644
--- a/src/mame/drivers/simpsons.c
+++ b/src/mame/drivers/simpsons.c
@@ -305,10 +305,7 @@ static const eeprom_interface eeprom_intf =
"0100110000000" /* unlock command */
};
-static MACHINE_DRIVER_START( simpsons )
-
- /* driver data */
- MDRV_DRIVER_DATA(simpsons_state)
+static MACHINE_CONFIG_START( simpsons, simpsons_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI, XTAL_24MHz/2/4) /* pin 18 of konami cpu is 12Mhz, while pin 17 is 3mhz. Clock probably divided internally by 4 */
@@ -354,7 +351,7 @@ static MACHINE_DRIVER_START( simpsons )
MDRV_SOUND_ADD("k053260", K053260, XTAL_3_579545MHz) /* verified on pcb */
MDRV_SOUND_ROUTE(0, "lspeaker", 0.75)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/skeetsht.c b/src/mame/drivers/skeetsht.c
index 754141d1d26..418318455f3 100644
--- a/src/mame/drivers/skeetsht.c
+++ b/src/mame/drivers/skeetsht.c
@@ -247,9 +247,7 @@ static const tms34010_config tms_config =
*
*************************************/
-static MACHINE_DRIVER_START( skeetsht )
-
- MDRV_DRIVER_DATA( skeetsht_state )
+static MACHINE_CONFIG_START( skeetsht, skeetsht_state )
MDRV_CPU_ADD("68hc11", MC68HC11, 4000000) // ?
MDRV_CPU_PROGRAM_MAP(hc11_pgm_map)
@@ -275,7 +273,7 @@ static MACHINE_DRIVER_START( skeetsht )
MDRV_SOUND_ADD("aysnd", AY8910, 2000000) // ?
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/skimaxx.c b/src/mame/drivers/skimaxx.c
index fb5fd0d1650..46b84a371ef 100644
--- a/src/mame/drivers/skimaxx.c
+++ b/src/mame/drivers/skimaxx.c
@@ -503,7 +503,7 @@ static MACHINE_RESET( skimaxx )
*
*************************************/
-static MACHINE_DRIVER_START( skimaxx )
+static MACHINE_CONFIG_START( skimaxx, driver_data_t )
MDRV_CPU_ADD("maincpu", M68EC030, XTAL_40MHz)
MDRV_CPU_PROGRAM_MAP(68030_1_map)
MDRV_CPU_VBLANK_INT("screen", irq3_line_hold) // 1,3,7 are identical, rest is RTE
@@ -549,7 +549,7 @@ static MACHINE_DRIVER_START( skimaxx )
MDRV_OKIM6295_ADD("oki4", XTAL_4MHz/2, OKIM6295_PIN7_HIGH) // ?
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/skullxbo.c b/src/mame/drivers/skullxbo.c
index 8460d95cfd6..25bd6a5b24d 100644
--- a/src/mame/drivers/skullxbo.c
+++ b/src/mame/drivers/skullxbo.c
@@ -253,8 +253,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( skullxbo )
- MDRV_DRIVER_DATA(skullxbo_state)
+static MACHINE_CONFIG_START( skullxbo, skullxbo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -280,8 +279,8 @@ static MACHINE_DRIVER_START( skullxbo )
MDRV_VIDEO_UPDATE(skullxbo)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_ii_mono)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_ii_mono)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/skyarmy.c b/src/mame/drivers/skyarmy.c
index c9607c86d3c..8c8cc03e443 100644
--- a/src/mame/drivers/skyarmy.c
+++ b/src/mame/drivers/skyarmy.c
@@ -273,9 +273,7 @@ static GFXDECODE_START( skyarmy )
GFXDECODE_ENTRY( "gfx2", 0, spritelayout, 0, 8 )
GFXDECODE_END
-static MACHINE_DRIVER_START( skyarmy )
-
- MDRV_DRIVER_DATA( skyarmy_state )
+static MACHINE_CONFIG_START( skyarmy, skyarmy_state )
MDRV_CPU_ADD("maincpu", Z80,4000000)
MDRV_CPU_PROGRAM_MAP(skyarmy_map)
@@ -302,7 +300,7 @@ static MACHINE_DRIVER_START( skyarmy )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, 2500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( skyarmy )
diff --git a/src/mame/drivers/skydiver.c b/src/mame/drivers/skydiver.c
index 095aec1f934..50ad6684456 100644
--- a/src/mame/drivers/skydiver.c
+++ b/src/mame/drivers/skydiver.c
@@ -371,7 +371,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( skydiver )
+static MACHINE_CONFIG_START( skydiver, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800,MASTER_CLOCK/16) /* ???? */
@@ -402,7 +402,7 @@ static MACHINE_DRIVER_START( skydiver )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(skydiver)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/skyfox.c b/src/mame/drivers/skyfox.c
index fa113ba85f8..1adbec553c8 100644
--- a/src/mame/drivers/skyfox.c
+++ b/src/mame/drivers/skyfox.c
@@ -238,10 +238,7 @@ static MACHINE_RESET( skyfox )
state->bg_ctrl = 0;
}
-static MACHINE_DRIVER_START( skyfox )
-
- /* driver data */
- MDRV_DRIVER_DATA(skyfox_state)
+static MACHINE_CONFIG_START( skyfox, skyfox_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_8MHz/2) /* Verified at 4MHz */
@@ -276,7 +273,7 @@ static MACHINE_DRIVER_START( skyfox )
MDRV_SOUND_ADD("ym2", YM2203, XTAL_14_31818MHz/8) /* Verified at 1.789772MHz */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/skykid.c b/src/mame/drivers/skykid.c
index 26e11cfe44d..4e1fee3a340 100644
--- a/src/mame/drivers/skykid.c
+++ b/src/mame/drivers/skykid.c
@@ -439,7 +439,7 @@ static const namco_interface namco_config =
-static MACHINE_DRIVER_START( skykid )
+static MACHINE_CONFIG_START( skykid, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809,49152000/32)
@@ -476,7 +476,7 @@ static MACHINE_DRIVER_START( skykid )
MDRV_SOUND_ADD("namco", NAMCO_CUS30, 49152000/2048)
MDRV_SOUND_CONFIG(namco_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( skykid )
diff --git a/src/mame/drivers/skylncr.c b/src/mame/drivers/skylncr.c
index 9ec950822f6..95f2a1fb227 100644
--- a/src/mame/drivers/skylncr.c
+++ b/src/mame/drivers/skylncr.c
@@ -656,7 +656,7 @@ static INTERRUPT_GEN( skylncr_vblank_interrupt )
* Machine Driver *
*************************************/
-static MACHINE_DRIVER_START( skylncr )
+static MACHINE_CONFIG_START( skylncr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/4)
@@ -689,7 +689,7 @@ static MACHINE_DRIVER_START( skylncr )
MDRV_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK/8)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**********************************
diff --git a/src/mame/drivers/skyraid.c b/src/mame/drivers/skyraid.c
index e34f5c65180..21e82323bf5 100644
--- a/src/mame/drivers/skyraid.c
+++ b/src/mame/drivers/skyraid.c
@@ -223,7 +223,7 @@ static GFXDECODE_START( skyraid )
GFXDECODE_END
-static MACHINE_DRIVER_START( skyraid )
+static MACHINE_CONFIG_START( skyraid, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12096000 / 12)
@@ -253,7 +253,7 @@ static MACHINE_DRIVER_START( skyraid )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(skyraid)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( skyraid )
diff --git a/src/mame/drivers/slapfght.c b/src/mame/drivers/slapfght.c
index b0169c20531..53344bf6804 100644
--- a/src/mame/drivers/slapfght.c
+++ b/src/mame/drivers/slapfght.c
@@ -743,7 +743,7 @@ static VIDEO_EOF( perfrman )
buffer_spriteram_w(space, 0, 0);
}
-static MACHINE_DRIVER_START( perfrman )
+static MACHINE_CONFIG_START( perfrman, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,16000000/4) /* 4MHz ???, 16MHz Oscillator */
@@ -787,10 +787,10 @@ static MACHINE_DRIVER_START( perfrman )
MDRV_SOUND_ADD("ay2", AY8910, 16000000/8)
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tigerhb )
+static MACHINE_CONFIG_START( tigerhb, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 6000000)
@@ -834,9 +834,9 @@ static MACHINE_DRIVER_START( tigerhb )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tigerh )
+static MACHINE_CONFIG_START( tigerh, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_36MHz/6) /* verified on pcb */
@@ -883,10 +883,10 @@ static MACHINE_DRIVER_START( tigerh )
MDRV_SOUND_ADD("ay2", AY8910, XTAL_36MHz/24) /* verified on pcb */
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( slapfigh )
+static MACHINE_CONFIG_START( slapfigh, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80, XTAL_36MHz/6) /* verified on pcb */
@@ -933,27 +933,25 @@ static MACHINE_DRIVER_START( slapfigh )
MDRV_SOUND_ADD("ay2", AY8910, XTAL_36MHz/24) /* verified on pcb */
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( slapfighb1 )
+static MACHINE_CONFIG_DERIVED( slapfighb1, slapfigh )
/* basic machine hardware */
- MDRV_IMPORT_FROM(slapfigh)
MDRV_DEVICE_REMOVE("mcu")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* identical to slapfigh_ but the scroll registers are located elsewhere in memory */
-static MACHINE_DRIVER_START( slapfighb2 )
+static MACHINE_CONFIG_DERIVED( slapfighb2, slapfigh )
/* basic machine hardware */
- MDRV_IMPORT_FROM(slapfigh)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(slapfighb2_map)
MDRV_DEVICE_REMOVE("mcu")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( perfrman )
diff --git a/src/mame/drivers/slapshot.c b/src/mame/drivers/slapshot.c
index 0f17fe38f66..e77c125cb6d 100644
--- a/src/mame/drivers/slapshot.c
+++ b/src/mame/drivers/slapshot.c
@@ -551,10 +551,7 @@ static MACHINE_START( slapshot )
}
-static MACHINE_DRIVER_START( slapshot )
-
- /* driver data */
- MDRV_DRIVER_DATA(slapshot_state)
+static MACHINE_CONFIG_START( slapshot, slapshot_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14346000) /* 28.6860 MHz / 2 ??? */
@@ -601,12 +598,9 @@ static MACHINE_DRIVER_START( slapshot )
MDRV_MK48T08_ADD( "mk48t08" )
MDRV_TC0140SYT_ADD("tc0140syt", slapshot_tc0140syt_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( opwolf3 )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(slapshot_state)
+static MACHINE_CONFIG_START( opwolf3, slapshot_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14346000) /* 28.6860 MHz / 2 ??? */
@@ -653,7 +647,7 @@ static MACHINE_DRIVER_START( opwolf3 )
MDRV_MK48T08_ADD( "mk48t08" )
MDRV_TC0140SYT_ADD("tc0140syt", slapshot_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
DRIVERS
diff --git a/src/mame/drivers/sliver.c b/src/mame/drivers/sliver.c
index c17180a9680..4b66a0dabf0 100644
--- a/src/mame/drivers/sliver.c
+++ b/src/mame/drivers/sliver.c
@@ -570,9 +570,7 @@ static INTERRUPT_GEN( sliver_int )
cpu_set_input_line(device, 2+cpu_getiloops(device), HOLD_LINE);
}
-static MACHINE_DRIVER_START( sliver )
-
- MDRV_DRIVER_DATA( sliver_state )
+static MACHINE_CONFIG_START( sliver, sliver_state )
MDRV_CPU_ADD("maincpu", M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(sliver_map)
@@ -598,7 +596,7 @@ static MACHINE_DRIVER_START( sliver )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.6)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.6)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( sliver )
ROM_REGION( 0x100000, "maincpu", 0 ) /* 68000 Code */
diff --git a/src/mame/drivers/slotcarn.c b/src/mame/drivers/slotcarn.c
index 5f7bdf35958..83e37df37e6 100644
--- a/src/mame/drivers/slotcarn.c
+++ b/src/mame/drivers/slotcarn.c
@@ -591,7 +591,7 @@ static const ay8910_interface scarn_ay8910_config =
* Machine Driver *
***********************************/
-static MACHINE_DRIVER_START( slotcarn )
+static MACHINE_CONFIG_START( slotcarn, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK) // 2.5 Mhz?
@@ -622,7 +622,7 @@ static MACHINE_DRIVER_START( slotcarn )
MDRV_SOUND_ADD("aysnd",AY8910, SND_CLOCK)
MDRV_SOUND_CONFIG(scarn_ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************
diff --git a/src/mame/drivers/sms.c b/src/mame/drivers/sms.c
index 5df9683a2b5..ca3fc9c8d6f 100644
--- a/src/mame/drivers/sms.c
+++ b/src/mame/drivers/sms.c
@@ -532,7 +532,7 @@ static MACHINE_RESET( sms )
communication_port_status = 0;
}
-static MACHINE_DRIVER_START( sms )
+static MACHINE_CONFIG_START( sms, driver_data_t )
MDRV_CPU_ADD("maincpu", I8088, XTAL_24MHz/8)
MDRV_CPU_PROGRAM_MAP(sms_map)
@@ -568,16 +568,15 @@ static MACHINE_DRIVER_START( sms )
MDRV_SOUND_ADD("aysnd", AY8910, XTAL_16MHz/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START(sureshot)
- MDRV_IMPORT_FROM(sms)
+static MACHINE_CONFIG_DERIVED( sureshot, sms )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sureshot_map)
MDRV_MACHINE_START(sureshot)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/snesb.c b/src/mame/drivers/snesb.c
index 50e70ae08ba..a4ffcc84617 100644
--- a/src/mame/drivers/snesb.c
+++ b/src/mame/drivers/snesb.c
@@ -497,10 +497,7 @@ static INPUT_PORTS_START( denseib )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( kinstb )
-
- /* driver data */
- MDRV_DRIVER_DATA(snes_state)
+static MACHINE_CONFIG_START( kinstb, snes_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", _5A22, 3580000*6) /* 2.68Mhz, also 3.58Mhz */
@@ -528,7 +525,7 @@ static MACHINE_DRIVER_START( kinstb )
MDRV_SOUND_ADD("spc700", SNES, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT(kinstb)
{
diff --git a/src/mame/drivers/snk.c b/src/mame/drivers/snk.c
index bcafe1ea935..64d0e3642a9 100644
--- a/src/mame/drivers/snk.c
+++ b/src/mame/drivers/snk.c
@@ -3625,9 +3625,7 @@ GFXDECODE_END
/**********************************************************************/
-static MACHINE_DRIVER_START( marvins )
-
- MDRV_DRIVER_DATA( snk_state )
+static MACHINE_CONFIG_START( marvins, snk_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3360000) /* 3.36 MHz */
@@ -3672,12 +3670,10 @@ static MACHINE_DRIVER_START( marvins )
MDRV_SOUND_ADD("wave", SNKWAVE, 8000000) /* verified on schematics */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vangrd2 )
- MDRV_IMPORT_FROM(marvins)
+static MACHINE_CONFIG_DERIVED( vangrd2, marvins )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -3685,12 +3681,10 @@ static MACHINE_DRIVER_START( vangrd2 )
MDRV_CPU_MODIFY("sub")
MDRV_CPU_PROGRAM_MAP(madcrash_cpuB_map)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( madcrush )
- MDRV_IMPORT_FROM(marvins)
+static MACHINE_CONFIG_DERIVED( madcrush, marvins )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -3698,12 +3692,10 @@ static MACHINE_DRIVER_START( madcrush )
MDRV_CPU_MODIFY("sub")
MDRV_CPU_PROGRAM_MAP(madcrush_cpuB_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jcross )
-
- MDRV_DRIVER_DATA( snk_state )
+static MACHINE_CONFIG_START( jcross, snk_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3350000) /* NOT verified */
@@ -3745,12 +3737,10 @@ static MACHINE_DRIVER_START( jcross )
MDRV_SOUND_ADD("ay2", AY8910, 2000000) /* NOT verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sgladiat )
- MDRV_IMPORT_FROM(jcross)
+static MACHINE_CONFIG_DERIVED( sgladiat, jcross )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -3764,12 +3754,10 @@ static MACHINE_DRIVER_START( sgladiat )
of the screen when the Debug dip switch is on */
MDRV_VIDEO_START(sgladiat)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hal21 )
-
- MDRV_IMPORT_FROM(jcross)
+static MACHINE_CONFIG_DERIVED( hal21, jcross )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -3785,12 +3773,10 @@ static MACHINE_DRIVER_START( hal21 )
/* video hardware */
MDRV_VIDEO_START(hal21)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tnk3 )
- MDRV_DRIVER_DATA( snk_state )
+static MACHINE_CONFIG_START( tnk3, snk_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_13_4MHz/4) /* verified on pcb */
@@ -3828,12 +3814,10 @@ static MACHINE_DRIVER_START( tnk3 )
MDRV_SOUND_ADD("ym1", YM3526, XTAL_8MHz/2) /* verified on pcb */
MDRV_SOUND_CONFIG(ym3526_config_1)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( aso )
- MDRV_IMPORT_FROM(tnk3)
+static MACHINE_CONFIG_DERIVED( aso, tnk3 )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -3847,12 +3831,10 @@ static MACHINE_DRIVER_START( aso )
/* video hardware */
MDRV_VIDEO_START(aso)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( athena )
-
- MDRV_IMPORT_FROM(tnk3)
+static MACHINE_CONFIG_DERIVED( athena, tnk3 )
/* basic machine hardware */
MDRV_CPU_MODIFY("audiocpu")
@@ -3862,12 +3844,10 @@ static MACHINE_DRIVER_START( athena )
MDRV_SOUND_ADD("ym2", YM3526, XTAL_8MHz/2) /* verified on pcb */
MDRV_SOUND_CONFIG(ym3526_config_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fitegolf )
- MDRV_IMPORT_FROM(tnk3)
+static MACHINE_CONFIG_DERIVED( fitegolf, tnk3 )
/* basic machine hardware */
MDRV_CPU_MODIFY("audiocpu")
@@ -3878,12 +3858,10 @@ static MACHINE_DRIVER_START( fitegolf )
MDRV_SOUND_REPLACE("ym1", YM3812, XTAL_4MHz) /* verified on pcb */
MDRV_SOUND_CONFIG(ym3812_config_1)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ikari )
-
- MDRV_DRIVER_DATA( snk_state )
+static MACHINE_CONFIG_START( ikari, snk_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_13_4MHz/4) /* verified on pcb */
@@ -3925,12 +3903,10 @@ static MACHINE_DRIVER_START( ikari )
MDRV_SOUND_ADD("ym2", YM3526, XTAL_8MHz/2) /* verified on pcb */
MDRV_SOUND_CONFIG(ym3526_config_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( victroad )
- MDRV_IMPORT_FROM(ikari)
+static MACHINE_CONFIG_DERIVED( victroad, ikari )
/* basic machine hardware */
MDRV_CPU_MODIFY("audiocpu")
@@ -3940,12 +3916,10 @@ static MACHINE_DRIVER_START( victroad )
MDRV_SOUND_REPLACE("ym2", Y8950, XTAL_8MHz/2) /* verified on pcb */
MDRV_SOUND_CONFIG(y8950_config_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bermudat )
- MDRV_DRIVER_DATA( snk_state )
+static MACHINE_CONFIG_START( bermudat, snk_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_8MHz/2) /* verified on pcb */
@@ -3986,21 +3960,17 @@ static MACHINE_DRIVER_START( bermudat )
MDRV_SOUND_ADD("ym2", Y8950, XTAL_8MHz/2) /* verified on pcb */
MDRV_SOUND_CONFIG(y8950_config_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( psychos )
-
- MDRV_IMPORT_FROM(bermudat)
+static MACHINE_CONFIG_DERIVED( psychos, bermudat )
/* video hardware */
MDRV_VIDEO_START(psychos)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gwar )
- MDRV_IMPORT_FROM(bermudat)
+static MACHINE_CONFIG_DERIVED( gwar, bermudat )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -4009,12 +3979,10 @@ static MACHINE_DRIVER_START( gwar )
MDRV_CPU_MODIFY("sub")
MDRV_CPU_PROGRAM_MAP(gwar_cpuB_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gwara )
-
- MDRV_IMPORT_FROM(bermudat)
+static MACHINE_CONFIG_DERIVED( gwara, bermudat )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -4022,12 +3990,10 @@ static MACHINE_DRIVER_START( gwara )
MDRV_CPU_MODIFY("sub")
MDRV_CPU_PROGRAM_MAP(gwara_cpuB_map)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( chopper1 )
- MDRV_IMPORT_FROM(bermudat)
+static MACHINE_CONFIG_DERIVED( chopper1, bermudat )
/* basic machine hardware */
MDRV_CPU_MODIFY("sub")
@@ -4046,22 +4012,18 @@ static MACHINE_DRIVER_START( chopper1 )
MDRV_SOUND_REPLACE("ym1", YM3812, 4000000)
MDRV_SOUND_CONFIG(ym3812_config_1)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( choppera )
- MDRV_IMPORT_FROM(chopper1)
+static MACHINE_CONFIG_DERIVED( choppera, chopper1 )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gwar_cpuA_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tdfever )
-
- MDRV_DRIVER_DATA( snk_state )
+static MACHINE_CONFIG_START( tdfever, snk_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000)
@@ -4103,12 +4065,10 @@ static MACHINE_DRIVER_START( tdfever )
MDRV_SOUND_ADD("ym2", Y8950, 4000000)
MDRV_SOUND_CONFIG(y8950_config_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tdfever2 )
- MDRV_IMPORT_FROM(tdfever)
+static MACHINE_CONFIG_DERIVED( tdfever2, tdfever )
/* basic machine hardware */
MDRV_CPU_MODIFY("audiocpu")
@@ -4119,7 +4079,7 @@ static MACHINE_DRIVER_START( tdfever2 )
// apparently, no "ym1" in tdfever2
// (registers are written to but they cause sound not to work)
MDRV_DEVICE_REMOVE("ym1")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***********************************************************************/
diff --git a/src/mame/drivers/snk6502.c b/src/mame/drivers/snk6502.c
index 998291eaa94..b6036108488 100644
--- a/src/mame/drivers/snk6502.c
+++ b/src/mame/drivers/snk6502.c
@@ -821,9 +821,7 @@ static MACHINE_RESET( pballoon )
*
*************************************/
-static MACHINE_DRIVER_START( sasuke )
-
- MDRV_DRIVER_DATA( snk6502_state )
+static MACHINE_CONFIG_START( sasuke, snk6502_state )
// basic machine hardware
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK / 16) // 700 kHz
@@ -873,11 +871,10 @@ static MACHINE_DRIVER_START( sasuke )
MDRV_SOUND_ADD("sn76477.3", SN76477, 0)
MDRV_SOUND_CONFIG(sasuke_sn76477_intf_3)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( satansat )
+static MACHINE_CONFIG_DERIVED( satansat, sasuke )
// basic machine hardware
- MDRV_IMPORT_FROM(sasuke)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(satansat_map)
@@ -897,11 +894,9 @@ static MACHINE_DRIVER_START( satansat )
MDRV_DEVICE_REMOVE("sn76477.2")
MDRV_DEVICE_REMOVE("sn76477.3")
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( vanguard )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA( snk6502_state )
+static MACHINE_CONFIG_START( vanguard, snk6502_state )
// basic machine hardware
//MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK / 8) // 1.4 MHz
@@ -946,11 +941,10 @@ static MACHINE_DRIVER_START( vanguard )
MDRV_SOUND_ADD("sn76477.2", SN76477, 0)
MDRV_SOUND_CONFIG(vanguard_sn76477_intf_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fantasy )
+static MACHINE_CONFIG_DERIVED( fantasy, vanguard )
// basic machine hardware
- MDRV_IMPORT_FROM(vanguard)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(fantasy_map)
@@ -968,26 +962,23 @@ static MACHINE_DRIVER_START( fantasy )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
MDRV_DEVICE_REMOVE("sn76477.2")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nibbler )
- // basic machine hardware
- MDRV_IMPORT_FROM(fantasy)
+static MACHINE_CONFIG_DERIVED( nibbler, fantasy )
// sound hardware
MDRV_DEVICE_REMOVE("samples")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pballoon )
+static MACHINE_CONFIG_DERIVED( pballoon, nibbler )
// basic machine hardware
- MDRV_IMPORT_FROM(nibbler)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(pballoon_map)
MDRV_MACHINE_RESET(pballoon)
MDRV_VIDEO_START( pballoon )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/snk68.c b/src/mame/drivers/snk68.c
index a2f348ceb2d..b0c424fa1dd 100644
--- a/src/mame/drivers/snk68.c
+++ b/src/mame/drivers/snk68.c
@@ -590,9 +590,7 @@ static const ym3812_interface ym3812_config =
/******************************************************************************/
-static MACHINE_DRIVER_START( pow )
-
- MDRV_DRIVER_DATA( snk68_state )
+static MACHINE_CONFIG_START( pow, snk68_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_18MHz/2) /* verified on pcb */
@@ -626,18 +624,16 @@ static MACHINE_DRIVER_START( pow )
MDRV_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( searchar )
- MDRV_IMPORT_FROM(pow)
+static MACHINE_CONFIG_DERIVED( searchar, pow )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(searchar_map)
MDRV_VIDEO_START(searchar)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/snookr10.c b/src/mame/drivers/snookr10.c
index 8cb62bd9d5c..15fbf81fa44 100644
--- a/src/mame/drivers/snookr10.c
+++ b/src/mame/drivers/snookr10.c
@@ -698,7 +698,7 @@ GFXDECODE_END
* Machine Drivers *
**************************/
-static MACHINE_DRIVER_START( snookr10 )
+static MACHINE_CONFIG_START( snookr10, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M65SC02, MASTER_CLOCK/8) /* 2 MHz (1.999 MHz measured) */
@@ -728,28 +728,26 @@ static MACHINE_DRIVER_START( snookr10 )
MDRV_OKIM6295_ADD("oki", MASTER_CLOCK/16, OKIM6295_PIN7_HIGH) /* 1 MHz (995.5 kHz measured); pin7 checked HIGH on PCB */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.8)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( apple10 )
+static MACHINE_CONFIG_DERIVED( apple10, snookr10 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(snookr10)
MDRV_CPU_MODIFY("maincpu")
/* video hardware */
MDRV_PALETTE_INIT(apple10)
MDRV_VIDEO_START(apple10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tenballs )
+static MACHINE_CONFIG_DERIVED( tenballs, snookr10 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(snookr10)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tenballs_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
diff --git a/src/mame/drivers/snowbros.c b/src/mame/drivers/snowbros.c
index 2eef9b576da..5a409f7ec38 100644
--- a/src/mame/drivers/snowbros.c
+++ b/src/mame/drivers/snowbros.c
@@ -1445,7 +1445,7 @@ static const kaneko_pandora_interface snowbros_pandora_config =
0, 0 /* x_offs, y_offs */
};
-static MACHINE_DRIVER_START( snowbros )
+static MACHINE_CONFIG_START( snowbros, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 Mhz - confirmed */
@@ -1478,12 +1478,12 @@ static MACHINE_DRIVER_START( snowbros )
MDRV_SOUND_ADD("ymsnd", YM3812, 3000000)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wintbob )
+static MACHINE_CONFIG_DERIVED( wintbob, snowbros )
+
/* basic machine hardware */
- MDRV_IMPORT_FROM(snowbros)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(10000000) /* 10mhz - Confirmed */
MDRV_CPU_PROGRAM_MAP(wintbob_map)
@@ -1494,13 +1494,12 @@ static MACHINE_DRIVER_START( wintbob )
MDRV_GFXDECODE(wb)
MDRV_VIDEO_UPDATE(wintbob)
MDRV_VIDEO_EOF(0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( semicom )
+static MACHINE_CONFIG_DERIVED( semicom, snowbros )
/* basic machine hardware */
- MDRV_IMPORT_FROM(snowbros)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(16000000) /* 16mhz or 12mhz ? */
MDRV_CPU_PROGRAM_MAP(hyperpac_map)
@@ -1519,25 +1518,23 @@ static MACHINE_DRIVER_START( semicom )
MDRV_OKIM6295_ADD("oki", 999900, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( semicom_mcu )
+static MACHINE_CONFIG_DERIVED( semicom_mcu, semicom )
/* basic machine hardware */
- MDRV_IMPORT_FROM(semicom)
MDRV_CPU_ADD("protection", I8052, 16000000) // AT89C52
MDRV_CPU_PROGRAM_MAP(protection_map)
MDRV_CPU_IO_MAP(protection_iomap)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( semiprot )
- MDRV_IMPORT_FROM(semicom)
+static MACHINE_CONFIG_DERIVED( semiprot, semicom )
MDRV_MACHINE_RESET ( semiprot )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -1559,7 +1556,7 @@ CPU : 1 X MC68000P12
See included pics
*/
-static MACHINE_DRIVER_START( honeydol )
+static MACHINE_CONFIG_START( honeydol, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -1595,9 +1592,9 @@ static MACHINE_DRIVER_START( honeydol )
MDRV_OKIM6295_ADD("oki", 999900, OKIM6295_PIN7_HIGH) /* freq? */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( twinadv )
+static MACHINE_CONFIG_START( twinadv, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) // or 12
@@ -1628,7 +1625,7 @@ static MACHINE_DRIVER_START( twinadv )
/* sound hardware */
MDRV_OKIM6295_ADD("oki", 12000000/12, OKIM6295_PIN7_HIGH) /* freq? */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -1649,8 +1646,7 @@ Intel P8752 (mcu)
*/
-static MACHINE_DRIVER_START( finalttr )
- MDRV_IMPORT_FROM(semicom)
+static MACHINE_CONFIG_DERIVED( finalttr, semicom )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(12000000)
@@ -1668,16 +1664,16 @@ static MACHINE_DRIVER_START( finalttr )
MDRV_OKIM6295_REPLACE("oki", 999900, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( _4in1, semicom )
-static MACHINE_DRIVER_START( _4in1 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(semicom)
MDRV_GFXDECODE(snowbros)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( snowbro3 )
+static MACHINE_CONFIG_START( snowbro3, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16mhz or 12mhz ? */
@@ -1702,7 +1698,7 @@ static MACHINE_DRIVER_START( snowbro3 )
MDRV_OKIM6295_ADD("oki", 999900, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/solomon.c b/src/mame/drivers/solomon.c
index e7b45188739..f72ce5d5a32 100644
--- a/src/mame/drivers/solomon.c
+++ b/src/mame/drivers/solomon.c
@@ -201,7 +201,7 @@ static GFXDECODE_START( solomon )
GFXDECODE_ENTRY( "gfx3", 0, spritelayout, 0, 8 ) /* colors 0-127 */
GFXDECODE_END
-static MACHINE_DRIVER_START( solomon )
+static MACHINE_CONFIG_START( solomon, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4.0 MHz (?????) */
@@ -239,7 +239,7 @@ static MACHINE_DRIVER_START( solomon )
MDRV_SOUND_ADD("ay3", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.12)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/sonson.c b/src/mame/drivers/sonson.c
index ca18ab67554..9587889f1af 100644
--- a/src/mame/drivers/sonson.c
+++ b/src/mame/drivers/sonson.c
@@ -243,10 +243,7 @@ static MACHINE_RESET( sonson )
state->last_irq = 0;
}
-static MACHINE_DRIVER_START( sonson )
-
- /* driver data */
- MDRV_DRIVER_DATA(sonson_state)
+static MACHINE_CONFIG_START( sonson, sonson_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809,12000000/6) /* 2 MHz ??? */
@@ -282,7 +279,7 @@ static MACHINE_DRIVER_START( sonson )
MDRV_SOUND_ADD("ay2", AY8910, 12000000/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/sothello.c b/src/mame/drivers/sothello.c
index e5b67468659..c70316d75ba 100644
--- a/src/mame/drivers/sothello.c
+++ b/src/mame/drivers/sothello.c
@@ -344,7 +344,7 @@ static const ym2203_interface ym2203_config =
irqhandler
};
-static MACHINE_DRIVER_START( sothello )
+static MACHINE_CONFIG_START( sothello, driver_data_t )
/* basic machine hardware */
@@ -390,7 +390,7 @@ static MACHINE_DRIVER_START( sothello )
MDRV_SOUND_CONFIG(msm_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/spacefb.c b/src/mame/drivers/spacefb.c
index cdd0c7ab1e2..6d1ac91a8dd 100644
--- a/src/mame/drivers/spacefb.c
+++ b/src/mame/drivers/spacefb.c
@@ -328,7 +328,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( spacefb )
+static MACHINE_CONFIG_START( spacefb, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, SPACEFB_MAIN_CPU_CLOCK)
@@ -353,9 +353,9 @@ static MACHINE_DRIVER_START( spacefb )
MDRV_SCREEN_RAW_PARAMS(SPACEFB_PIXEL_CLOCK, SPACEFB_HTOTAL, SPACEFB_HBEND, SPACEFB_HBSTART, SPACEFB_VTOTAL, SPACEFB_VBEND, SPACEFB_VBSTART)
/* audio hardware */
- MDRV_IMPORT_FROM(spacefb_audio)
+ MDRV_FRAGMENT_ADD(spacefb_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/spaceg.c b/src/mame/drivers/spaceg.c
index c5bb7564e7b..b09e9273740 100644
--- a/src/mame/drivers/spaceg.c
+++ b/src/mame/drivers/spaceg.c
@@ -398,10 +398,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( spaceg )
-
- /* driver data */
- MDRV_DRIVER_DATA(spaceg_state)
+static MACHINE_CONFIG_START( spaceg, spaceg_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,2500000) /* 2.5 MHz */
@@ -434,7 +431,7 @@ static MACHINE_DRIVER_START( spaceg )
// MDRV_SOUND_ADD("dac", DAC, 0)
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/spbactn.c b/src/mame/drivers/spbactn.c
index 5cdea6c907e..463504219c1 100644
--- a/src/mame/drivers/spbactn.c
+++ b/src/mame/drivers/spbactn.c
@@ -333,9 +333,7 @@ static const ym3812_interface ym3812_config =
irqhandler
};
-static MACHINE_DRIVER_START( spbactn )
-
- MDRV_DRIVER_DATA( spbactn_state )
+static MACHINE_CONFIG_START( spbactn, spbactn_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -368,7 +366,7 @@ static MACHINE_DRIVER_START( spbactn )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( spbactn )
/* Board 9002-A (CPU Board) */
diff --git a/src/mame/drivers/spcforce.c b/src/mame/drivers/spcforce.c
index f7927f40573..8d441ae0bcb 100644
--- a/src/mame/drivers/spcforce.c
+++ b/src/mame/drivers/spcforce.c
@@ -242,7 +242,7 @@ static PALETTE_INIT( spcforce )
}
-static MACHINE_DRIVER_START( spcforce )
+static MACHINE_CONFIG_START( spcforce, driver_data_t )
/* basic machine hardware */
/* FIXME: The 8085A had a max clock of 6MHz, internally divided by 2! */
@@ -279,7 +279,7 @@ static MACHINE_DRIVER_START( spcforce )
MDRV_SOUND_ADD("sn3", SN76496, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/spdodgeb.c b/src/mame/drivers/spdodgeb.c
index b3989b3b22a..08193fc71dd 100644
--- a/src/mame/drivers/spdodgeb.c
+++ b/src/mame/drivers/spdodgeb.c
@@ -431,7 +431,7 @@ static MACHINE_RESET( spdodgeb )
last_dash[0] = last_dash[1] = 0;
}
-static MACHINE_DRIVER_START( spdodgeb )
+static MACHINE_CONFIG_START( spdodgeb, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,12000000/6) /* 2MHz ? */
@@ -475,7 +475,7 @@ static MACHINE_DRIVER_START( spdodgeb )
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/speedatk.c b/src/mame/drivers/speedatk.c
index 1892be177cc..afa8c761df8 100644
--- a/src/mame/drivers/speedatk.c
+++ b/src/mame/drivers/speedatk.c
@@ -319,7 +319,7 @@ static const ay8910_interface ay8910_config =
DEVCB_NULL
};
-static MACHINE_DRIVER_START( speedatk )
+static MACHINE_CONFIG_START( speedatk, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80,MASTER_CLOCK/2) //divider is unknown
MDRV_CPU_PROGRAM_MAP(speedatk_mem)
MDRV_CPU_IO_MAP(speedatk_io)
@@ -350,7 +350,7 @@ static MACHINE_DRIVER_START( speedatk )
MDRV_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK/4) //divider is unknown
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( speedatk )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/speedbal.c b/src/mame/drivers/speedbal.c
index cdd41055adb..46c14fbeb07 100644
--- a/src/mame/drivers/speedbal.c
+++ b/src/mame/drivers/speedbal.c
@@ -225,7 +225,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( speedbal )
+static MACHINE_CONFIG_START( speedbal, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz ??? */
@@ -259,7 +259,7 @@ static MACHINE_DRIVER_START( speedbal )
MDRV_SOUND_ADD("ymsnd", YM3812, 3600000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/speedspn.c b/src/mame/drivers/speedspn.c
index 5dd570bf2e5..62525dd6f6f 100644
--- a/src/mame/drivers/speedspn.c
+++ b/src/mame/drivers/speedspn.c
@@ -277,7 +277,7 @@ GFXDECODE_END
/*** MACHINE DRIVER **********************************************************/
-static MACHINE_DRIVER_START( speedspn )
+static MACHINE_CONFIG_START( speedspn, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,6000000) /* 6 MHz */
@@ -307,7 +307,7 @@ static MACHINE_DRIVER_START( speedspn )
MDRV_OKIM6295_ADD("oki", 1122000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*** ROM LOADING *************************************************************/
diff --git a/src/mame/drivers/speglsht.c b/src/mame/drivers/speglsht.c
index c3bca69229a..8b2da98bd98 100644
--- a/src/mame/drivers/speglsht.c
+++ b/src/mame/drivers/speglsht.c
@@ -319,7 +319,7 @@ static MACHINE_RESET(speglsht)
memset(shared,0,0x1000);
}
-static MACHINE_DRIVER_START( speglsht )
+static MACHINE_CONFIG_START( speglsht, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80, 8000000) /* 8 MHz ? */
MDRV_CPU_PROGRAM_MAP(st0016_mem)
@@ -355,7 +355,7 @@ static MACHINE_DRIVER_START( speglsht )
MDRV_SOUND_CONFIG(st0016_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( speglsht )
ROM_REGION( 0x210000, "maincpu", 0 )
diff --git a/src/mame/drivers/spiders.c b/src/mame/drivers/spiders.c
index 9de4b9abc3c..2aada552fea 100644
--- a/src/mame/drivers/spiders.c
+++ b/src/mame/drivers/spiders.c
@@ -705,7 +705,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( spiders )
+static MACHINE_CONFIG_START( spiders, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2800000)
@@ -737,9 +737,9 @@ static MACHINE_DRIVER_START( spiders )
MDRV_TTL74123_ADD("ic60", ic60_intf)
/* audio hardware */
- MDRV_IMPORT_FROM(spiders_audio)
+ MDRV_FRAGMENT_ADD(spiders_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/splash.c b/src/mame/drivers/splash.c
index febadfa7cb3..2fd31bffd05 100644
--- a/src/mame/drivers/splash.c
+++ b/src/mame/drivers/splash.c
@@ -391,7 +391,7 @@ static MACHINE_RESET( splash )
ret = 0x100;
}
-static MACHINE_DRIVER_START( splash )
+static MACHINE_CONFIG_START( splash, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz (24/2) */
@@ -427,7 +427,7 @@ static MACHINE_DRIVER_START( splash )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(splash_msm5205_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static void ym_irq(running_device *device, int state)
{
@@ -444,7 +444,7 @@ static const ym2203_interface ym2203_config =
ym_irq
};
-static MACHINE_DRIVER_START( roldfrog )
+static MACHINE_CONFIG_START( roldfrog, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz - verified */
@@ -481,10 +481,10 @@ static MACHINE_DRIVER_START( roldfrog )
MDRV_SOUND_ROUTE(1, "mono", 0.60)
MDRV_SOUND_ROUTE(2, "mono", 0.60)
MDRV_SOUND_ROUTE(3, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( funystrp )
+static MACHINE_CONFIG_START( funystrp, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz (24/2) */
@@ -520,7 +520,7 @@ static MACHINE_DRIVER_START( funystrp )
// MDRV_SOUND_ADD("msm", MSM5205, 384000)
// MDRV_SOUND_CONFIG(msm5205_config)
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/spoker.c b/src/mame/drivers/spoker.c
index f1ab5877979..3783f0397eb 100644
--- a/src/mame/drivers/spoker.c
+++ b/src/mame/drivers/spoker.c
@@ -386,9 +386,7 @@ static INTERRUPT_GEN( spoker_interrupt )
cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
}
-static MACHINE_DRIVER_START( spoker )
-
- MDRV_DRIVER_DATA( spoker_state )
+static MACHINE_CONFIG_START( spoker, spoker_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 2) /* HD64180RP8, 8 MHz? */
@@ -421,7 +419,7 @@ static MACHINE_DRIVER_START( spoker )
MDRV_OKIM6295_ADD("oki", XTAL_12MHz / 12, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT( spk116it )
diff --git a/src/mame/drivers/spool99.c b/src/mame/drivers/spool99.c
index 57ae055dde3..4d25ab6b512 100644
--- a/src/mame/drivers/spool99.c
+++ b/src/mame/drivers/spool99.c
@@ -335,9 +335,7 @@ INPUT_PORTS_END
-static MACHINE_DRIVER_START( spool99 )
-
- MDRV_DRIVER_DATA( spool99_state )
+static MACHINE_CONFIG_START( spool99, spool99_state )
MDRV_CPU_ADD("maincpu", Z80, 24000000/8)
MDRV_CPU_PROGRAM_MAP(spool99_map)
@@ -364,18 +362,16 @@ static MACHINE_DRIVER_START( spool99 )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.47)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.47)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( vcarn )
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM( spool99)
+static MACHINE_CONFIG_DERIVED( vcarn, spool99 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(vcarn_map)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 1*8, 31*8-1) //512x240, raw guess
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( spool99 )
diff --git a/src/mame/drivers/sprcros2.c b/src/mame/drivers/sprcros2.c
index b3e9fee8680..ee57489e47e 100644
--- a/src/mame/drivers/sprcros2.c
+++ b/src/mame/drivers/sprcros2.c
@@ -267,7 +267,7 @@ static MACHINE_START( sprcros2 )
state_save_register_global(machine, sprcros2_s_port3);
}
-static MACHINE_DRIVER_START( sprcros2 )
+static MACHINE_CONFIG_START( sprcros2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("master", Z80,10000000/2)
@@ -308,7 +308,7 @@ static MACHINE_DRIVER_START( sprcros2 )
MDRV_SOUND_ADD("sn3", SN76489, 10000000/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( sprcros2 )
ROM_REGION( 0x14000, "master", 0 )
diff --git a/src/mame/drivers/sprint2.c b/src/mame/drivers/sprint2.c
index e9ef3033ea2..d85d1d3b508 100644
--- a/src/mame/drivers/sprint2.c
+++ b/src/mame/drivers/sprint2.c
@@ -492,7 +492,7 @@ static GFXDECODE_START( sprint2 )
GFXDECODE_END
-static MACHINE_DRIVER_START( sprint2 )
+static MACHINE_CONFIG_START( sprint2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12096000 / 16)
@@ -522,12 +522,10 @@ static MACHINE_DRIVER_START( sprint2 )
MDRV_SOUND_CONFIG_DISCRETE(sprint2)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sprint1 )
-
- MDRV_IMPORT_FROM(sprint2)
+static MACHINE_CONFIG_DERIVED( sprint1, sprint2 )
/* sound hardware */
MDRV_DEVICE_REMOVE("lspeaker")
@@ -539,12 +537,10 @@ static MACHINE_DRIVER_START( sprint1 )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(sprint1)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dominos )
- MDRV_IMPORT_FROM(sprint2)
+static MACHINE_CONFIG_DERIVED( dominos, sprint2 )
/* sound hardware */
MDRV_DEVICE_REMOVE("lspeaker")
@@ -556,7 +552,7 @@ static MACHINE_DRIVER_START( dominos )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(dominos)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( sprint1 )
diff --git a/src/mame/drivers/sprint4.c b/src/mame/drivers/sprint4.c
index fa5b996354d..6076ce820c2 100644
--- a/src/mame/drivers/sprint4.c
+++ b/src/mame/drivers/sprint4.c
@@ -402,7 +402,7 @@ static GFXDECODE_START( sprint4 )
GFXDECODE_END
-static MACHINE_DRIVER_START( sprint4 )
+static MACHINE_CONFIG_START( sprint4, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, PIXEL_CLOCK / 8)
@@ -431,7 +431,7 @@ static MACHINE_DRIVER_START( sprint4 )
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( sprint4 )
diff --git a/src/mame/drivers/sprint8.c b/src/mame/drivers/sprint8.c
index 71c766999eb..fb8ec8dfa94 100644
--- a/src/mame/drivers/sprint8.c
+++ b/src/mame/drivers/sprint8.c
@@ -452,7 +452,7 @@ static GFXDECODE_START( sprint8 )
GFXDECODE_END
-static MACHINE_DRIVER_START( sprint8 )
+static MACHINE_CONFIG_START( sprint8, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, 11055000 / 11) /* ? */
@@ -495,7 +495,7 @@ static MACHINE_DRIVER_START( sprint8 )
MDRV_SOUND_ROUTE(1, "speaker_3_7", 0.0)
MDRV_SOUND_ROUTE(2, "speaker_5_6", 0.0)
MDRV_SOUND_ROUTE(3, "speaker_4_8", 0.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( sprint8 )
diff --git a/src/mame/drivers/spy.c b/src/mame/drivers/spy.c
index 5cbe6f3d2d5..2a1d99bea31 100644
--- a/src/mame/drivers/spy.c
+++ b/src/mame/drivers/spy.c
@@ -541,10 +541,7 @@ static MACHINE_RESET( spy )
state->old_3f90 = -1;
}
-static MACHINE_DRIVER_START( spy )
-
- /* driver data */
- MDRV_DRIVER_DATA(spy_state)
+static MACHINE_CONFIG_START( spy, spy_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 3000000) /* ? */
@@ -592,7 +589,7 @@ static MACHINE_DRIVER_START( spy )
MDRV_SOUND_CONFIG(spy_k007232_interface)
MDRV_SOUND_ROUTE(0, "mono", 0.20)
MDRV_SOUND_ROUTE(1, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/srmp2.c b/src/mame/drivers/srmp2.c
index bb1ae5b23de..5fdd9908287 100644
--- a/src/mame/drivers/srmp2.c
+++ b/src/mame/drivers/srmp2.c
@@ -1007,9 +1007,7 @@ static GFXDECODE_START( srmp3 )
GFXDECODE_END
-static MACHINE_DRIVER_START( srmp2 )
-
- MDRV_DRIVER_DATA(srmp2_state)
+static MACHINE_CONFIG_START( srmp2, srmp2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,16000000/2) /* 8.00 MHz */
@@ -1043,12 +1041,10 @@ static MACHINE_DRIVER_START( srmp2 )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( srmp3 )
- MDRV_DRIVER_DATA(srmp2_state)
+static MACHINE_CONFIG_START( srmp3, srmp2_state )
/* basic machine hardware */
@@ -1085,12 +1081,10 @@ static MACHINE_DRIVER_START( srmp3 )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjyuugi )
- MDRV_DRIVER_DATA(srmp2_state)
+static MACHINE_CONFIG_START( mjyuugi, srmp2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,16000000/2) /* 8.00 MHz */
@@ -1123,7 +1117,7 @@ static MACHINE_DRIVER_START( mjyuugi )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/srmp5.c b/src/mame/drivers/srmp5.c
index 067a2e7c5f2..78d910754f9 100644
--- a/src/mame/drivers/srmp5.c
+++ b/src/mame/drivers/srmp5.c
@@ -557,9 +557,7 @@ static GFXDECODE_START( srmp5 )
//GFXDECODE_ENTRY( "gfx1", 0, tile_16x16x8_layout, 0x0, 0x800 )
GFXDECODE_END
-static MACHINE_DRIVER_START( srmp5 )
-
- MDRV_DRIVER_DATA( srmp5_state )
+static MACHINE_CONFIG_START( srmp5, srmp5_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,8000000)
@@ -594,7 +592,7 @@ static MACHINE_DRIVER_START( srmp5 )
MDRV_SOUND_CONFIG(st0016_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( srmp5 )
ROM_REGION( 0x410000, "maincpu", 0 )
diff --git a/src/mame/drivers/srmp6.c b/src/mame/drivers/srmp6.c
index 6f5dc60193b..0899a6ec594 100644
--- a/src/mame/drivers/srmp6.c
+++ b/src/mame/drivers/srmp6.c
@@ -665,9 +665,7 @@ static INTERRUPT_GEN(srmp6_interrupt)
cpu_set_input_line(device,4,HOLD_LINE);
}
-static MACHINE_DRIVER_START( srmp6 )
-
- MDRV_DRIVER_DATA( srmp6_state )
+static MACHINE_CONFIG_START( srmp6, srmp6_state )
MDRV_CPU_ADD("maincpu", M68000, 16000000)
MDRV_CPU_PROGRAM_MAP(srmp6)
@@ -692,7 +690,7 @@ static MACHINE_DRIVER_START( srmp6 )
MDRV_SOUND_ADD("nile", NILE, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/srumbler.c b/src/mame/drivers/srumbler.c
index eaa11cb6455..2bebe9ac4cc 100644
--- a/src/mame/drivers/srumbler.c
+++ b/src/mame/drivers/srumbler.c
@@ -242,7 +242,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( srumbler )
+static MACHINE_CONFIG_START( srumbler, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 1500000) /* 1.5 MHz (?) */
@@ -286,7 +286,7 @@ static MACHINE_DRIVER_START( srumbler )
MDRV_SOUND_ROUTE(1, "mono", 0.10)
MDRV_SOUND_ROUTE(2, "mono", 0.10)
MDRV_SOUND_ROUTE(3, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ssfindo.c b/src/mame/drivers/ssfindo.c
index 08bd4b1105a..f19a876a017 100644
--- a/src/mame/drivers/ssfindo.c
+++ b/src/mame/drivers/ssfindo.c
@@ -593,7 +593,7 @@ static INPUT_PORTS_START( ppcar )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( ssfindo )
+static MACHINE_CONFIG_START( ssfindo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM7, 54000000) // guess...
@@ -614,9 +614,9 @@ static MACHINE_DRIVER_START( ssfindo )
MDRV_VIDEO_UPDATE(ssfindo)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ppcar )
+static MACHINE_CONFIG_START( ppcar, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM7, 54000000) // guess...
@@ -636,7 +636,7 @@ static MACHINE_DRIVER_START( ppcar )
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_UPDATE(ssfindo)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ssfindo )
diff --git a/src/mame/drivers/sshangha.c b/src/mame/drivers/sshangha.c
index b7e41dd80d3..3f58b99a5fa 100644
--- a/src/mame/drivers/sshangha.c
+++ b/src/mame/drivers/sshangha.c
@@ -353,7 +353,7 @@ static const ym2203_interface ym2203_config =
irqhandler
};
-static MACHINE_DRIVER_START( sshangha )
+static MACHINE_CONFIG_START( sshangha, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 28000000/2)
@@ -394,14 +394,13 @@ static MACHINE_DRIVER_START( sshangha )
MDRV_OKIM6295_ADD("oki", 1023924, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.27)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.27)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sshanghb )
- MDRV_IMPORT_FROM( sshangha )
+static MACHINE_CONFIG_DERIVED( sshanghb, sshangha )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sshanghb_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/ssingles.c b/src/mame/drivers/ssingles.c
index b0250e2ce89..87bdf93d8a3 100644
--- a/src/mame/drivers/ssingles.c
+++ b/src/mame/drivers/ssingles.c
@@ -411,9 +411,7 @@ static INPUT_PORTS_START( ssingles )
PORT_DIPSETTING( 0x80, DEF_STR( Yes ) )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( ssingles )
-
- MDRV_DRIVER_DATA( ssingles_state )
+static MACHINE_CONFIG_START( ssingles, ssingles_state )
MDRV_CPU_ADD("maincpu", Z80,4000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(ssingles_map)
@@ -440,13 +438,12 @@ static MACHINE_DRIVER_START( ssingles )
MDRV_SOUND_ADD("ay2", AY8910, 1500000) /* ? MHz */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( atamanot )
- MDRV_IMPORT_FROM( ssingles )
+static MACHINE_CONFIG_DERIVED( atamanot, ssingles )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(atamanot_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ssingles )
ROM_REGION( 0x10000, "maincpu", 0 ) /* Z80 main CPU */
diff --git a/src/mame/drivers/sslam.c b/src/mame/drivers/sslam.c
index 36492e46f54..b73ad0249fc 100644
--- a/src/mame/drivers/sslam.c
+++ b/src/mame/drivers/sslam.c
@@ -710,9 +710,7 @@ GFXDECODE_END
/* Machine Driver */
-static MACHINE_DRIVER_START( sslam )
-
- MDRV_DRIVER_DATA( sslam_state )
+static MACHINE_CONFIG_START( sslam, sslam_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -741,11 +739,9 @@ static MACHINE_DRIVER_START( sslam )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( powerbls )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA( sslam_state )
+static MACHINE_CONFIG_START( powerbls, sslam_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -774,7 +770,7 @@ static MACHINE_DRIVER_START( powerbls )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH) /* verified on original PCB */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* maybe one dump is bad .. which? -> 2nd set was verified good from 2 pcbs */
diff --git a/src/mame/drivers/ssozumo.c b/src/mame/drivers/ssozumo.c
index 89845ccdee8..6880482e9f3 100644
--- a/src/mame/drivers/ssozumo.c
+++ b/src/mame/drivers/ssozumo.c
@@ -189,7 +189,7 @@ static GFXDECODE_START( ssozumo )
GFXDECODE_END
-static MACHINE_DRIVER_START( ssozumo )
+static MACHINE_CONFIG_START( ssozumo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1200000) /* 1.2 MHz ???? */
@@ -226,7 +226,7 @@ static MACHINE_DRIVER_START( ssozumo )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/sspeedr.c b/src/mame/drivers/sspeedr.c
index 2b85dfeae17..35ef445889d 100644
--- a/src/mame/drivers/sspeedr.c
+++ b/src/mame/drivers/sspeedr.c
@@ -186,7 +186,7 @@ static GFXDECODE_START( sspeedr )
GFXDECODE_END
-static MACHINE_DRIVER_START( sspeedr )
+static MACHINE_CONFIG_START( sspeedr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_19_968MHz/8)
@@ -211,7 +211,7 @@ static MACHINE_DRIVER_START( sspeedr )
MDRV_VIDEO_EOF(sspeedr)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( sspeedr )
diff --git a/src/mame/drivers/ssrj.c b/src/mame/drivers/ssrj.c
index 2c74e29b888..776153b1d09 100644
--- a/src/mame/drivers/ssrj.c
+++ b/src/mame/drivers/ssrj.c
@@ -148,7 +148,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( ssrj )
+static MACHINE_CONFIG_START( ssrj, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000/2)
@@ -179,7 +179,7 @@ static MACHINE_DRIVER_START( ssrj )
MDRV_SOUND_ADD("aysnd", AY8910, 8000000/5)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/sstrangr.c b/src/mame/drivers/sstrangr.c
index 7f3047612db..ebacfede4c5 100644
--- a/src/mame/drivers/sstrangr.c
+++ b/src/mame/drivers/sstrangr.c
@@ -193,9 +193,7 @@ static INPUT_PORTS_START( sstrangr )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( sstrangr )
-
- MDRV_DRIVER_DATA( sstrangr_state )
+static MACHINE_CONFIG_START( sstrangr, sstrangr_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",I8080,1996800) /* clock is a guess, taken from mw8080bw */
@@ -214,7 +212,7 @@ static MACHINE_DRIVER_START( sstrangr )
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -267,15 +265,14 @@ static INPUT_PORTS_START( sstrngr2 )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( sstrngr2 )
+static MACHINE_CONFIG_DERIVED( sstrngr2, sstrangr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(sstrangr)
/* video hardware */
MDRV_VIDEO_UPDATE(sstrngr2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ssv.c b/src/mame/drivers/ssv.c
index 92b7b8a7419..8e882b9ab41 100644
--- a/src/mame/drivers/ssv.c
+++ b/src/mame/drivers/ssv.c
@@ -2692,9 +2692,7 @@ static DRIVER_INIT( vasara ) { init_ssv(machine, +0, +0xf0, +0, -0xf8, 0); }
static DRIVER_INIT( jsk ) { init_ssv(machine, -8, +0xf5, +0, -0xf4, 0); }
-static MACHINE_DRIVER_START( ssv )
-
- MDRV_DRIVER_DATA( ssv_state )
+static MACHINE_CONFIG_START( ssv, ssv_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V60, 16000000) /* Based on STA-0001 & STA-0001B System boards */
@@ -2721,13 +2719,12 @@ static MACHINE_DRIVER_START( ssv )
MDRV_SOUND_CONFIG(es5506_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( drifto94 )
+static MACHINE_CONFIG_DERIVED( drifto94, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(drifto94_map)
@@ -2736,13 +2733,12 @@ static MACHINE_DRIVER_START( drifto94 )
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 4, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gdfs )
+static MACHINE_CONFIG_DERIVED( gdfs, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gdfs_map)
MDRV_CPU_VBLANK_INT_HACK(gdfs_interrupt,1+4)
@@ -2756,65 +2752,60 @@ static MACHINE_DRIVER_START( gdfs )
MDRV_GFXDECODE(gdfs)
MDRV_VIDEO_START(gdfs)
MDRV_VIDEO_UPDATE(gdfs)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hypreact )
+static MACHINE_CONFIG_DERIVED( hypreact, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hypreact_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(8, 0x148-1, 16, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hypreac2 )
+static MACHINE_CONFIG_DERIVED( hypreac2, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(hypreac2_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 8, 0xf8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( janjans1 )
+static MACHINE_CONFIG_DERIVED( janjans1, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(janjans1_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( keithlcy )
+static MACHINE_CONFIG_DERIVED( keithlcy, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(keithlcy_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 4, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( meosism )
+static MACHINE_CONFIG_DERIVED( meosism, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(meosism_map)
@@ -2823,65 +2814,60 @@ static MACHINE_DRIVER_START( meosism )
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mslider )
+static MACHINE_CONFIG_DERIVED( mslider, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mslider_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ryorioh )
+static MACHINE_CONFIG_DERIVED( ryorioh, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ryorioh_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( srmp4 )
+static MACHINE_CONFIG_DERIVED( srmp4, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(srmp4_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 4, 0xf4-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( srmp7 )
+static MACHINE_CONFIG_DERIVED( srmp7, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(srmp7_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( stmblade )
+static MACHINE_CONFIG_DERIVED( stmblade, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(drifto94_map)
@@ -2889,34 +2875,32 @@ static MACHINE_DRIVER_START( stmblade )
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x158-1, 0, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( survarts )
+static MACHINE_CONFIG_DERIVED( survarts, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(survarts_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 4, 0xf4-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( dynagear, survarts )
-static MACHINE_DRIVER_START( dynagear )
/* basic machine hardware */
- MDRV_IMPORT_FROM(survarts)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(8, 0x158-16-1, 0, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( eaglshot )
+static MACHINE_CONFIG_DERIVED( eaglshot, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(eaglshot_map)
@@ -2929,13 +2913,12 @@ static MACHINE_DRIVER_START( eaglshot )
MDRV_GFXDECODE(eaglshot)
MDRV_VIDEO_START(eaglshot)
MDRV_VIDEO_UPDATE(eaglshot)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sxyreact )
+static MACHINE_CONFIG_DERIVED( sxyreact, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sxyreact_map)
@@ -2944,38 +2927,35 @@ static MACHINE_DRIVER_START( sxyreact )
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( twineag2 )
+static MACHINE_CONFIG_DERIVED( twineag2, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(twineag2_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ultrax )
+static MACHINE_CONFIG_DERIVED( ultrax, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ultrax_map)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jsk )
+static MACHINE_CONFIG_DERIVED( jsk, ssv )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ssv)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(jsk_map)
@@ -2985,7 +2965,7 @@ static MACHINE_DRIVER_START( jsk )
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/st0016.c b/src/mame/drivers/st0016.c
index aabee33c29b..e0262dbc592 100644
--- a/src/mame/drivers/st0016.c
+++ b/src/mame/drivers/st0016.c
@@ -432,7 +432,7 @@ static const st0016_interface st0016_config =
*
*************************************/
-static MACHINE_DRIVER_START( st0016 )
+static MACHINE_CONFIG_START( st0016, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,8000000) /* 8 MHz ? */
MDRV_CPU_PROGRAM_MAP(st0016_mem)
@@ -460,16 +460,15 @@ static MACHINE_DRIVER_START( st0016 )
MDRV_SOUND_CONFIG(st0016_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mayjinsn )
- MDRV_IMPORT_FROM(st0016)
+static MACHINE_CONFIG_DERIVED( mayjinsn, st0016 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(st0016_m2_io)
MDRV_CPU_ADD("sub", V810, 10000000)//25 Mhz ?
MDRV_CPU_PROGRAM_MAP(v810_mem)
MDRV_QUANTUM_TIME(HZ(60))
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/stactics.c b/src/mame/drivers/stactics.c
index 68d435f3dec..4b17c8b2b35 100644
--- a/src/mame/drivers/stactics.c
+++ b/src/mame/drivers/stactics.c
@@ -302,9 +302,7 @@ static MACHINE_START( stactics )
*
*************************************/
-static MACHINE_DRIVER_START( stactics )
-
- MDRV_DRIVER_DATA(stactics_state)
+static MACHINE_CONFIG_START( stactics, stactics_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, 1933560)
@@ -314,10 +312,10 @@ static MACHINE_DRIVER_START( stactics )
MDRV_MACHINE_START(stactics)
/* video hardware */
- MDRV_IMPORT_FROM(stactics_video)
+ MDRV_FRAGMENT_ADD(stactics_video)
/* audio hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/stadhero.c b/src/mame/drivers/stadhero.c
index 8694218b740..e6ede991948 100644
--- a/src/mame/drivers/stadhero.c
+++ b/src/mame/drivers/stadhero.c
@@ -219,7 +219,7 @@ static const ym3812_interface ym3812_config =
/******************************************************************************/
-static MACHINE_DRIVER_START( stadhero )
+static MACHINE_CONFIG_START( stadhero, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -258,7 +258,7 @@ static MACHINE_DRIVER_START( stadhero )
MDRV_OKIM6295_ADD("oki", 1023924, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/starcrus.c b/src/mame/drivers/starcrus.c
index 39f34ea09fc..7578e5609fe 100644
--- a/src/mame/drivers/starcrus.c
+++ b/src/mame/drivers/starcrus.c
@@ -150,7 +150,7 @@ static const samples_interface starcrus_samples_interface =
};
-static MACHINE_DRIVER_START( starcrus )
+static MACHINE_CONFIG_START( starcrus, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080,9750000/9) /* 8224 chip is a divide by 9 */
@@ -179,7 +179,7 @@ static MACHINE_DRIVER_START( starcrus )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(starcrus_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/starfire.c b/src/mame/drivers/starfire.c
index 9f97ecfe1ab..f8c30cd76c5 100644
--- a/src/mame/drivers/starfire.c
+++ b/src/mame/drivers/starfire.c
@@ -261,7 +261,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( starfire )
+static MACHINE_CONFIG_START( starfire, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, STARFIRE_CPU_CLOCK)
@@ -277,7 +277,7 @@ static MACHINE_DRIVER_START( starfire )
MDRV_VIDEO_UPDATE(starfire)
/* audio hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/starshp1.c b/src/mame/drivers/starshp1.c
index 5743645a977..39f34889b6b 100644
--- a/src/mame/drivers/starshp1.c
+++ b/src/mame/drivers/starshp1.c
@@ -293,7 +293,7 @@ static GFXDECODE_START( starshp1 )
GFXDECODE_END
-static MACHINE_DRIVER_START( starshp1 )
+static MACHINE_CONFIG_START( starshp1, driver_data_t )
/* basic machine hardware */
@@ -322,7 +322,7 @@ static MACHINE_DRIVER_START( starshp1 )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(starshp1)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/starwars.c b/src/mame/drivers/starwars.c
index 14cc0710ece..eaa4f7f1b7a 100644
--- a/src/mame/drivers/starwars.c
+++ b/src/mame/drivers/starwars.c
@@ -324,7 +324,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( starwars )
+static MACHINE_CONFIG_START( starwars, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK / 8)
@@ -369,7 +369,7 @@ static MACHINE_DRIVER_START( starwars )
MDRV_SOUND_ADD("tms", TMS5220, MASTER_CLOCK/2/9)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/statriv2.c b/src/mame/drivers/statriv2.c
index 918965f2102..b6e09532541 100644
--- a/src/mame/drivers/statriv2.c
+++ b/src/mame/drivers/statriv2.c
@@ -567,7 +567,7 @@ static const tms9927_interface tms9927_intf =
*
*************************************/
-static MACHINE_DRIVER_START( statriv2 )
+static MACHINE_CONFIG_START( statriv2, driver_data_t )
/* basic machine hardware */
/* FIXME: The 8085A had a max clock of 6MHz, internally divided by 2! */
MDRV_CPU_ADD("maincpu", I8085A, MASTER_CLOCK)
@@ -599,26 +599,26 @@ static MACHINE_DRIVER_START( statriv2 )
MDRV_SOUND_ADD("aysnd", AY8910, MASTER_CLOCK/8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( statriv2v, statriv2 )
-static MACHINE_DRIVER_START( statriv2v )
/* basic machine hardware */
- MDRV_IMPORT_FROM(statriv2)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/2, 392, 0, 256, 262, 0, 256)
MDRV_VIDEO_START(vertical)
MDRV_GFXDECODE(vertical)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( funcsino, statriv2 )
-static MACHINE_DRIVER_START( funcsino )
/* basic machine hardware */
- MDRV_IMPORT_FROM(statriv2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(MASTER_CLOCK/2) /* 3 MHz?? seems accurate */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/stepstag.c b/src/mame/drivers/stepstag.c
index 01a823a214d..0551c3172fa 100644
--- a/src/mame/drivers/stepstag.c
+++ b/src/mame/drivers/stepstag.c
@@ -108,7 +108,7 @@ static VIDEO_UPDATE(stepstag)
return 0;
}
-static MACHINE_DRIVER_START( stepstag )
+static MACHINE_CONFIG_START( stepstag, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000 ) //??
MDRV_CPU_PROGRAM_MAP(stepstag_map)
@@ -145,7 +145,7 @@ static MACHINE_DRIVER_START( stepstag )
MDRV_VIDEO_START(stepstag)
MDRV_VIDEO_UPDATE(stepstag)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( stepstag )
diff --git a/src/mame/drivers/stfight.c b/src/mame/drivers/stfight.c
index 2145fcc7e7a..30fc3d3e287 100644
--- a/src/mame/drivers/stfight.c
+++ b/src/mame/drivers/stfight.c
@@ -431,7 +431,7 @@ static const msm5205_interface msm5205_config =
MSM5205_S48_4B /* 8KHz */
};
-static MACHINE_DRIVER_START( stfight )
+static MACHINE_CONFIG_START( stfight, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3000000) /* 3 MHz */
@@ -479,7 +479,7 @@ static MACHINE_DRIVER_START( stfight )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/stlforce.c b/src/mame/drivers/stlforce.c
index 9db91f7e16b..3d5c7843f50 100644
--- a/src/mame/drivers/stlforce.c
+++ b/src/mame/drivers/stlforce.c
@@ -183,9 +183,7 @@ static GFXDECODE_START( stlforce )
GFXDECODE_END
-static MACHINE_DRIVER_START( stlforce )
-
- MDRV_DRIVER_DATA( stlforce_state )
+static MACHINE_CONFIG_START( stlforce, stlforce_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 15000000)
@@ -213,17 +211,17 @@ static MACHINE_DRIVER_START( stlforce )
MDRV_OKIM6295_ADD("oki", 937500 , OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( twinbrat, stlforce )
-static MACHINE_DRIVER_START( twinbrat )
/* basic machine hardware */
- MDRV_IMPORT_FROM(stlforce)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(14745600)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(3*8, 45*8-1, 0*8, 30*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( stlforce )
ROM_REGION( 0x80000, "maincpu", 0 ) /* 68000 code */
diff --git a/src/mame/drivers/strnskil.c b/src/mame/drivers/strnskil.c
index 1d5bcab168f..e86a19c0136 100644
--- a/src/mame/drivers/strnskil.c
+++ b/src/mame/drivers/strnskil.c
@@ -321,7 +321,7 @@ static GFXDECODE_START( strnskil )
GFXDECODE_END
-static MACHINE_DRIVER_START( strnskil )
+static MACHINE_CONFIG_START( strnskil, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000/2) /* 4.000MHz */
@@ -357,7 +357,7 @@ static MACHINE_DRIVER_START( strnskil )
MDRV_SOUND_ADD("sn2", SN76496, 8000000/2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/****************************************************************************/
diff --git a/src/mame/drivers/stv.c b/src/mame/drivers/stv.c
index b08fc6d4574..9de247c3492 100644
--- a/src/mame/drivers/stv.c
+++ b/src/mame/drivers/stv.c
@@ -2852,7 +2852,7 @@ static MACHINE_RESET( stv )
}
-static MACHINE_DRIVER_START( stv )
+static MACHINE_CONFIG_START( stv, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", SH2, MASTER_CLOCK_352/2) // 28.6364 MHz
@@ -2896,7 +2896,7 @@ static MACHINE_DRIVER_START( stv )
MDRV_SOUND_CONFIG(scsp_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#define ROM_LOAD16_WORD_SWAP_BIOS(bios,name,offset,length,hash) \
ROMX_LOAD(name, offset, length, hash, ROM_GROUPWORD | ROM_REVERSE | ROM_BIOS(bios+1)) /* Note '+1' */
diff --git a/src/mame/drivers/sub.c b/src/mame/drivers/sub.c
index e14cc76c45d..5938f08b273 100644
--- a/src/mame/drivers/sub.c
+++ b/src/mame/drivers/sub.c
@@ -419,9 +419,7 @@ static INTERRUPT_GEN( subm_sound_irq )
cputag_set_input_line(device->machine, "soundcpu", INPUT_LINE_NMI, PULSE_LINE);
}
-static MACHINE_DRIVER_START( sub )
-
- MDRV_DRIVER_DATA( sub_state )
+static MACHINE_CONFIG_START( sub, sub_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,MASTER_CLOCK/6) /* ? MHz */
@@ -458,7 +456,7 @@ static MACHINE_DRIVER_START( sub )
MDRV_SOUND_ADD("ay2", AY8910, MASTER_CLOCK/6/2) /* ? Mhz */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.23)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( sub )
diff --git a/src/mame/drivers/subs.c b/src/mame/drivers/subs.c
index 6ea4d429299..97918b43a83 100644
--- a/src/mame/drivers/subs.c
+++ b/src/mame/drivers/subs.c
@@ -175,7 +175,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( subs )
+static MACHINE_CONFIG_START( subs, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,12096000/16) /* clock input is the "4H" signal */
@@ -213,7 +213,7 @@ static MACHINE_DRIVER_START( subs )
MDRV_SOUND_CONFIG_DISCRETE(subs)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/subsino.c b/src/mame/drivers/subsino.c
index 4b54bc6ad54..86d536eca88 100644
--- a/src/mame/drivers/subsino.c
+++ b/src/mame/drivers/subsino.c
@@ -2217,7 +2217,7 @@ GFXDECODE_END
* Machine Drivers *
***************************************************************************/
-static MACHINE_DRIVER_START( victor21 )
+static MACHINE_CONFIG_START( victor21, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 8) /* Unknown clock */
MDRV_CPU_PROGRAM_MAP(victor21_map)
@@ -2247,19 +2247,18 @@ static MACHINE_DRIVER_START( victor21 )
MDRV_OKIM6295_ADD("oki", XTAL_4_433619MHz / 4, OKIM6295_PIN7_HIGH) /* Clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* same but with an additional protection. */
-static MACHINE_DRIVER_START( victor5 )
+static MACHINE_CONFIG_DERIVED( victor5, victor21 )
/* basic machine hardware */
- MDRV_IMPORT_FROM( victor21 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(victor5_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( crsbingo )
+static MACHINE_CONFIG_START( crsbingo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 8) /* Unknown CPU and clock */
MDRV_CPU_PROGRAM_MAP(crsbingo_map)
@@ -2286,10 +2285,10 @@ static MACHINE_DRIVER_START( crsbingo )
MDRV_SOUND_ADD("ymsnd", YM2413, XTAL_3_579545MHz) /* Unknown clock */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( srider )
+static MACHINE_CONFIG_START( srider, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 8) /* Unknown clock */
MDRV_CPU_PROGRAM_MAP(srider_map)
@@ -2319,18 +2318,17 @@ static MACHINE_DRIVER_START( srider )
MDRV_OKIM6295_ADD("oki", XTAL_4_433619MHz / 4, OKIM6295_PIN7_HIGH) /* Clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sharkpy )
- MDRV_IMPORT_FROM(srider)
+static MACHINE_CONFIG_DERIVED( sharkpy, srider )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(sharkpy_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tisub )
+static MACHINE_CONFIG_START( tisub, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 8) /* Unknown CPU and clock */
MDRV_CPU_PROGRAM_MAP(tisub_map)
@@ -2357,9 +2355,9 @@ static MACHINE_DRIVER_START( tisub )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_3_579545MHz) /* Unknown clock */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( stisub )
+static MACHINE_CONFIG_START( stisub, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 8) /* Unknown clock */
MDRV_CPU_PROGRAM_MAP(stisub_map)
@@ -2386,7 +2384,7 @@ static MACHINE_DRIVER_START( stisub )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/suna16.c b/src/mame/drivers/suna16.c
index c2e4da6c925..47be84b31e2 100644
--- a/src/mame/drivers/suna16.c
+++ b/src/mame/drivers/suna16.c
@@ -759,7 +759,7 @@ static INTERRUPT_GEN( bssoccer_interrupt )
}
}
-static MACHINE_DRIVER_START( bssoccer )
+static MACHINE_CONFIG_START( bssoccer, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* ? */
@@ -811,7 +811,7 @@ static MACHINE_DRIVER_START( bssoccer )
MDRV_SOUND_ADD("dac4", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -819,7 +819,7 @@ MACHINE_DRIVER_END
Ultra Balloon
***************************************************************************/
-static MACHINE_DRIVER_START( uballoon )
+static MACHINE_CONFIG_START( uballoon, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -865,13 +865,13 @@ static MACHINE_DRIVER_START( uballoon )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Suna Quiz 6000 Academy
***************************************************************************/
-static MACHINE_DRIVER_START( sunaq )
+static MACHINE_CONFIG_START( sunaq, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 24000000/4)
MDRV_CPU_PROGRAM_MAP(sunaq_map)
@@ -914,7 +914,7 @@ static MACHINE_DRIVER_START( sunaq )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Best Of Best
@@ -943,7 +943,7 @@ static const ay8910_interface bestbest_ay8910_interface =
DEVCB_HANDLER(bestbest_ay8910_port_a_w), DEVCB_NULL
};
-static MACHINE_DRIVER_START( bestbest )
+static MACHINE_CONFIG_START( bestbest, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 24000000/4)
MDRV_CPU_PROGRAM_MAP(bestbest_map)
@@ -998,7 +998,7 @@ static MACHINE_DRIVER_START( bestbest )
MDRV_SOUND_ADD("dac4", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/suna8.c b/src/mame/drivers/suna8.c
index abf3bc5ad72..767c7350d74 100644
--- a/src/mame/drivers/suna8.c
+++ b/src/mame/drivers/suna8.c
@@ -1465,7 +1465,7 @@ static const samples_interface suna8_samples_interface =
suna8_sh_start
};
-static MACHINE_DRIVER_START( hardhead )
+static MACHINE_CONFIG_START( hardhead, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* verified on pcb */
@@ -1508,7 +1508,7 @@ static MACHINE_DRIVER_START( hardhead )
MDRV_SOUND_CONFIG(suna8_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1531,7 +1531,7 @@ static const ym2203_interface rranger_ym2203_interface =
};
/* 2203 + 8910 */
-static MACHINE_DRIVER_START( rranger )
+static MACHINE_CONFIG_START( rranger, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* ? */
@@ -1573,7 +1573,7 @@ static MACHINE_DRIVER_START( rranger )
MDRV_SOUND_CONFIG(suna8_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -1593,7 +1593,7 @@ static INTERRUPT_GEN( brickzn_interrupt )
else cpu_set_input_line(device, 0, HOLD_LINE);
}
-static MACHINE_DRIVER_START( brickzn )
+static MACHINE_CONFIG_START( brickzn, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* SUNA PROTECTION BLOCK */
@@ -1645,7 +1645,7 @@ static MACHINE_DRIVER_START( brickzn )
MDRV_SOUND_ADD("dac4", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.17)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -1669,16 +1669,14 @@ static MACHINE_RESET( hardhea2 )
hardhea2_rambank_0_w(space,0,0);
}
-static MACHINE_DRIVER_START( hardhea2 )
-
- MDRV_IMPORT_FROM( brickzn )
+static MACHINE_CONFIG_DERIVED( hardhea2, brickzn )
MDRV_CPU_MODIFY("maincpu") /* SUNA T568009 */
MDRV_CPU_PROGRAM_MAP(hardhea2_map)
MDRV_CPU_VBLANK_INT_HACK(hardhea2_interrupt,2) /* IRQ & NMI */
MDRV_MACHINE_RESET(hardhea2)
MDRV_PALETTE_LENGTH(256)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -1695,7 +1693,7 @@ static const ay8910_interface starfigh_ay8910_interface =
DEVCB_DEVICE_HANDLER("samples", suna8_samples_number_w)
};
-static MACHINE_DRIVER_START( starfigh )
+static MACHINE_CONFIG_START( starfigh, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* ? */
@@ -1738,7 +1736,7 @@ static MACHINE_DRIVER_START( starfigh )
MDRV_SOUND_CONFIG(suna8_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -1754,7 +1752,7 @@ static INTERRUPT_GEN( sparkman_interrupt )
else cpu_set_input_line(device, 0, HOLD_LINE);
}
-static MACHINE_DRIVER_START( sparkman )
+static MACHINE_CONFIG_START( sparkman, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* ? */
@@ -1796,7 +1794,7 @@ static MACHINE_DRIVER_START( sparkman )
MDRV_SOUND_CONFIG(suna8_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/supbtime.c b/src/mame/drivers/supbtime.c
index 2d088e6f1a1..46decad01df 100644
--- a/src/mame/drivers/supbtime.c
+++ b/src/mame/drivers/supbtime.c
@@ -339,10 +339,7 @@ static MACHINE_START( supbtime )
state->deco16ic = machine->device("deco_custom");
}
-static MACHINE_DRIVER_START( supbtime )
-
- /* driver data */
- MDRV_DRIVER_DATA(supbtime_state)
+static MACHINE_CONFIG_START( supbtime, supbtime_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -381,13 +378,10 @@ static MACHINE_DRIVER_START( supbtime )
MDRV_OKIM6295_ADD("oki", 1023924, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( chinatwn )
- /* driver data */
- MDRV_DRIVER_DATA(supbtime_state)
+static MACHINE_CONFIG_START( chinatwn, supbtime_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -426,7 +420,7 @@ static MACHINE_DRIVER_START( chinatwn )
MDRV_OKIM6295_ADD("oki", 1023924, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/supdrapo.c b/src/mame/drivers/supdrapo.c
index 93b794947ef..2f6170c89ff 100644
--- a/src/mame/drivers/supdrapo.c
+++ b/src/mame/drivers/supdrapo.c
@@ -431,9 +431,7 @@ static const ay8910_interface ay8910_config =
Machine Driver
**********************************************************************/
-static MACHINE_DRIVER_START( supdrapo )
-
- MDRV_DRIVER_DATA( supdrapo_state )
+static MACHINE_CONFIG_START( supdrapo, supdrapo_state )
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK) /* guess */
MDRV_CPU_PROGRAM_MAP(sdpoker_mem)
@@ -464,7 +462,7 @@ static MACHINE_DRIVER_START( supdrapo )
MDRV_SOUND_ADD("aysnd", AY8910, SND_CLOCK) /* guess */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*********************************************************************
diff --git a/src/mame/drivers/superchs.c b/src/mame/drivers/superchs.c
index 0837b40e0a5..20d375bbdcc 100644
--- a/src/mame/drivers/superchs.c
+++ b/src/mame/drivers/superchs.c
@@ -369,7 +369,7 @@ static const tc0480scp_interface superchs_tc0480scp_intf =
0 /* col_base */
};
-static MACHINE_DRIVER_START( superchs )
+static MACHINE_CONFIG_START( superchs, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz */
@@ -401,8 +401,8 @@ static MACHINE_DRIVER_START( superchs )
MDRV_TC0480SCP_ADD("tc0480scp", superchs_tc0480scp_intf)
/* sound hardware */
- MDRV_IMPORT_FROM(taito_f3_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(taito_f3_sound)
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/superdq.c b/src/mame/drivers/superdq.c
index f18e5dac5cb..e9aa77be2d9 100644
--- a/src/mame/drivers/superdq.c
+++ b/src/mame/drivers/superdq.c
@@ -324,9 +324,7 @@ static MACHINE_START( superdq )
}
-static MACHINE_DRIVER_START( superdq )
-
- MDRV_DRIVER_DATA( superdq_state )
+static MACHINE_CONFIG_START( superdq, superdq_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/8)
@@ -358,7 +356,7 @@ static MACHINE_DRIVER_START( superdq )
MDRV_SOUND_ADD("ldsound", LASERDISC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/superqix.c b/src/mame/drivers/superqix.c
index 68881d2c1f1..393ac5f77c5 100644
--- a/src/mame/drivers/superqix.c
+++ b/src/mame/drivers/superqix.c
@@ -1028,7 +1028,7 @@ static INTERRUPT_GEN( bootleg_interrupt )
-static MACHINE_DRIVER_START( pbillian )
+static MACHINE_CONFIG_START( pbillian, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6 MHz */
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_IO_MAP(pbillian_port_map)
@@ -1059,9 +1059,9 @@ static MACHINE_DRIVER_START( pbillian )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(pbillian_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hotsmash )
+static MACHINE_CONFIG_START( hotsmash, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6 MHz */
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_IO_MAP(hotsmash_port_map)
@@ -1095,9 +1095,9 @@ static MACHINE_DRIVER_START( hotsmash )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(pbillian_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sqix )
+static MACHINE_CONFIG_START( sqix, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 12000000/2) /* 6 MHz */
@@ -1136,18 +1136,17 @@ static MACHINE_DRIVER_START( sqix )
MDRV_SOUND_ADD("ay2", AY8910, 12000000/8)
MDRV_SOUND_CONFIG(sqix_ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sqixu )
- MDRV_IMPORT_FROM( sqix )
+static MACHINE_CONFIG_DERIVED( sqixu, sqix )
MDRV_CPU_MODIFY("mcu")
MDRV_CPU_IO_MAP(sqixu_mcu_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sqixbl )
+static MACHINE_CONFIG_START( sqixbl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 12000000/2) /* 6 MHz */
@@ -1181,7 +1180,7 @@ static MACHINE_DRIVER_START( sqixbl )
MDRV_SOUND_ADD("ay2", AY8910, 12000000/8)
MDRV_SOUND_CONFIG(bootleg_ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/supertnk.c b/src/mame/drivers/supertnk.c
index f28bfdbd45e..69eaa000760 100644
--- a/src/mame/drivers/supertnk.c
+++ b/src/mame/drivers/supertnk.c
@@ -422,9 +422,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( supertnk )
-
- MDRV_DRIVER_DATA( supertnk_state )
+static MACHINE_CONFIG_START( supertnk, supertnk_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS9980, 2598750) /* ? to which frequency is the 20.79 Mhz crystal mapped down? */
@@ -450,7 +448,7 @@ static MACHINE_DRIVER_START( supertnk )
MDRV_SOUND_ADD("aysnd", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/suprgolf.c b/src/mame/drivers/suprgolf.c
index 0723fcbbec3..c9b63658ed2 100644
--- a/src/mame/drivers/suprgolf.c
+++ b/src/mame/drivers/suprgolf.c
@@ -483,9 +483,7 @@ static MACHINE_RESET( suprgolf )
state->msm_nmi_mask = 0;
}
-static MACHINE_DRIVER_START( suprgolf )
-
- MDRV_DRIVER_DATA( suprgolf_state )
+static MACHINE_CONFIG_START( suprgolf, suprgolf_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,4000000) /* guess */
@@ -519,7 +517,7 @@ static MACHINE_DRIVER_START( suprgolf )
MDRV_SOUND_ADD("msm", MSM5205, 400000) /* guess */
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/suprloco.c b/src/mame/drivers/suprloco.c
index 5fc5c58c556..ba091a3734c 100644
--- a/src/mame/drivers/suprloco.c
+++ b/src/mame/drivers/suprloco.c
@@ -164,7 +164,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( suprloco )
+static MACHINE_CONFIG_START( suprloco, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz (?) */
@@ -198,7 +198,7 @@ static MACHINE_DRIVER_START( suprloco )
MDRV_SOUND_ADD("sn2", SN76496, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/suprnova.c b/src/mame/drivers/suprnova.c
index 9ab9dc0ac4d..282949141fe 100644
--- a/src/mame/drivers/suprnova.c
+++ b/src/mame/drivers/suprnova.c
@@ -830,7 +830,7 @@ static const ymz280b_interface ymz280b_intf =
0 // irq ?
};
-static MACHINE_DRIVER_START(skns)
+static MACHINE_CONFIG_START( skns, driver_data_t )
MDRV_CPU_ADD("maincpu", SH2,28638000)
MDRV_CPU_PROGRAM_MAP(skns_map)
MDRV_CPU_VBLANK_INT_HACK(skns_interrupt,2)
@@ -869,7 +869,7 @@ static MACHINE_DRIVER_START(skns)
MDRV_SOUND_CONFIG(ymz280b_intf)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***** BIOS SKIPPING *****/
diff --git a/src/mame/drivers/suprridr.c b/src/mame/drivers/suprridr.c
index 806e4e5c6e8..b2cd3f6dcd3 100644
--- a/src/mame/drivers/suprridr.c
+++ b/src/mame/drivers/suprridr.c
@@ -354,7 +354,7 @@ static const ay8910_interface ay8910_config =
*
*************************************/
-static MACHINE_DRIVER_START( suprridr )
+static MACHINE_CONFIG_START( suprridr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_49_152MHz/16) /* 3 MHz */
@@ -390,7 +390,7 @@ static MACHINE_DRIVER_START( suprridr )
MDRV_SOUND_ADD("ay2", AY8910, XTAL_49_152MHz/32)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/suprslam.c b/src/mame/drivers/suprslam.c
index 1d59f928caf..934c9b59df4 100644
--- a/src/mame/drivers/suprslam.c
+++ b/src/mame/drivers/suprslam.c
@@ -317,8 +317,7 @@ static MACHINE_RESET( suprslam )
state->pending_command = 0;
}
-static MACHINE_DRIVER_START( suprslam )
- MDRV_DRIVER_DATA(suprslam_state)
+static MACHINE_CONFIG_START( suprslam, suprslam_state )
MDRV_CPU_ADD("maincpu", M68000, 16000000)
MDRV_CPU_PROGRAM_MAP(suprslam_map)
@@ -357,7 +356,7 @@ static MACHINE_DRIVER_START( suprslam )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*** ROM LOADING *************************************************************/
diff --git a/src/mame/drivers/surpratk.c b/src/mame/drivers/surpratk.c
index da2022e48b1..463c2b302cb 100644
--- a/src/mame/drivers/surpratk.c
+++ b/src/mame/drivers/surpratk.c
@@ -238,10 +238,7 @@ static MACHINE_RESET( surpratk )
state->videobank = 0;
}
-static MACHINE_DRIVER_START( surpratk )
-
- /* driver data */
- MDRV_DRIVER_DATA(surpratk_state)
+static MACHINE_CONFIG_START( surpratk, surpratk_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI, 3000000) /* 053248 */
@@ -276,7 +273,7 @@ static MACHINE_DRIVER_START( surpratk )
MDRV_SOUND_CONFIG(ym2151_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/system1.c b/src/mame/drivers/system1.c
index e4536f34b1d..56e59318ba4 100644
--- a/src/mame/drivers/system1.c
+++ b/src/mame/drivers/system1.c
@@ -2099,7 +2099,7 @@ static Z80PIO_INTERFACE( pio_interface )
*************************************/
/* original board with 64kbit ROMs and an 8255 PPI for outputs */
-static MACHINE_DRIVER_START( sys1ppi )
+static MACHINE_CONFIG_START( sys1ppi, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK) /* not really, see notes above */
@@ -2137,43 +2137,40 @@ static MACHINE_DRIVER_START( sys1ppi )
MDRV_SOUND_ADD("sn2", SN76489A, SOUND_CLOCK/2) /* selectable via jumper */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* reduced visible area for scrolling games */
-static MACHINE_DRIVER_START( sys1ppis )
- MDRV_IMPORT_FROM( sys1ppi )
+static MACHINE_CONFIG_DERIVED( sys1ppis, sys1ppi )
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0*8+8, 32*8-1-8, 0*8, 28*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* revised board with 128kbit ROMs and a Z80 PIO for outputs */
-static MACHINE_DRIVER_START( sys1pio )
- MDRV_IMPORT_FROM( sys1ppi )
+static MACHINE_CONFIG_DERIVED( sys1pio, sys1ppi )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(system1_pio_io_map)
MDRV_DEVICE_REMOVE("ppi")
MDRV_Z80PIO_ADD("pio", MASTER_CLOCK, pio_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* reduced visible area for scrolling games */
-static MACHINE_DRIVER_START( sys1pios )
- MDRV_IMPORT_FROM( sys1pio )
+static MACHINE_CONFIG_DERIVED( sys1pios, sys1pio )
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0*8+8, 32*8-1-8, 0*8, 28*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* this describes the additional 8751 MCU when present */
-static MACHINE_DRIVER_START( mcu )
+static MACHINE_CONFIG_FRAGMENT( mcu )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -2184,57 +2181,51 @@ static MACHINE_DRIVER_START( mcu )
MDRV_CPU_VBLANK_INT("screen", mcu_irq_assert)
MDRV_TIMER_ADD_PERIODIC("mcu_t0", mcu_t0_callback, MSEC(20)) /* ??? actual clock unknown */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* alternate program map with RAM/collision swapped */
-static MACHINE_DRIVER_START( nob )
- MDRV_IMPORT_FROM( sys1ppi )
+static MACHINE_CONFIG_DERIVED( nob, sys1ppi )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(nobo_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nobm )
- MDRV_IMPORT_FROM( nob )
+static MACHINE_CONFIG_DERIVED( nobm, nob )
/* basic machine hardware */
MDRV_CPU_ADD("mcu", I8751, SOUND_CLOCK)
MDRV_CPU_IO_MAP(nob_mcu_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* system2 video */
-static MACHINE_DRIVER_START( sys2 )
- MDRV_IMPORT_FROM( sys1ppi )
+static MACHINE_CONFIG_DERIVED( sys2, sys1ppi )
MDRV_MACHINE_START(system2)
/* video hardware */
MDRV_VIDEO_START(system2)
MDRV_VIDEO_UPDATE(system2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sys2m )
- MDRV_IMPORT_FROM( sys2 )
- MDRV_IMPORT_FROM( mcu )
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( sys2m, sys2 )
+ MDRV_FRAGMENT_ADD( mcu )
+MACHINE_CONFIG_END
/* system2 with rowscroll */
-static MACHINE_DRIVER_START( sys2row )
- MDRV_IMPORT_FROM( sys2 )
+static MACHINE_CONFIG_DERIVED( sys2row, sys2 )
/* video hardware */
MDRV_VIDEO_UPDATE(system2_rowscroll)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sys2rowm )
- MDRV_IMPORT_FROM( sys2row )
- MDRV_IMPORT_FROM( mcu )
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( sys2rowm, sys2row )
+ MDRV_FRAGMENT_ADD( mcu )
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/system16.c b/src/mame/drivers/system16.c
index 7f0e17d92f7..2d95427ef00 100644
--- a/src/mame/drivers/system16.c
+++ b/src/mame/drivers/system16.c
@@ -1993,10 +1993,7 @@ GFXDECODE_END
*************************************/
/* System 16A/B Bootlegs */
-static MACHINE_DRIVER_START( system16 )
-
- /* driver data */
- MDRV_DRIVER_DATA(segas1x_bootleg_state)
+static MACHINE_CONFIG_START( system16, segas1x_bootleg_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -2026,7 +2023,7 @@ static MACHINE_DRIVER_START( system16 )
MDRV_SOUND_ADD("ymsnd", YM2151, 4000000)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.32)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.32)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static void sound_cause_nmi( running_device *device, int chip )
@@ -2044,10 +2041,9 @@ const upd7759_interface sys16_upd7759_interface =
};
-static MACHINE_DRIVER_START( system16_7759 )
+static MACHINE_CONFIG_DERIVED( system16_7759, system16 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system16)
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_PROGRAM_MAP(sound_7759_map)
@@ -2058,10 +2054,10 @@ static MACHINE_DRIVER_START( system16_7759 )
MDRV_SOUND_CONFIG(sys16_upd7759_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.48)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.48)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( system16_datsu_sound )
+static MACHINE_CONFIG_FRAGMENT( system16_datsu_sound )
/* TODO:
- other games might use this sound configuration
- speaker is likely to be mono for the bootlegs, not stereo.
@@ -2081,7 +2077,7 @@ static MACHINE_DRIVER_START( system16_datsu_sound )
MDRV_SOUND_CONFIG(tturfbl_msm5205_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const sega16sp_interface shinobld_sega16sp_intf =
@@ -2094,10 +2090,9 @@ static const sega16sp_interface shinobld_sega16sp_intf =
0, // use buffer
};
-static MACHINE_DRIVER_START( shinobib )
+static MACHINE_CONFIG_DERIVED( shinobib, system16 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system16)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(shinobib_map)
@@ -2105,7 +2100,7 @@ static MACHINE_DRIVER_START( shinobib )
MDRV_VIDEO_START( s16a_bootleg_shinobi )
MDRV_VIDEO_UPDATE( s16a_bootleg )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const sega16sp_interface passshtb_sega16sp_intf =
{
@@ -2117,10 +2112,9 @@ static const sega16sp_interface passshtb_sega16sp_intf =
0, // use buffer
};
-static MACHINE_DRIVER_START( passshtb )
+static MACHINE_CONFIG_DERIVED( passshtb, system16_7759 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system16_7759)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(passshtb_map)
@@ -2128,13 +2122,12 @@ static MACHINE_DRIVER_START( passshtb )
MDRV_VIDEO_START( s16a_bootleg_passsht )
MDRV_VIDEO_UPDATE( s16a_bootleg )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( passsht4b )
+static MACHINE_CONFIG_DERIVED( passsht4b, system16_7759 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system16_7759)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(passht4b_map)
@@ -2143,7 +2136,7 @@ static MACHINE_DRIVER_START( passsht4b )
MDRV_VIDEO_START( s16a_bootleg_passsht )
MDRV_VIDEO_UPDATE( s16a_bootleg_passht4b )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const sega16sp_interface wb3bbl_sega16sp_intf =
{
@@ -2155,10 +2148,9 @@ static const sega16sp_interface wb3bbl_sega16sp_intf =
0, // use buffer
};
-static MACHINE_DRIVER_START( wb3bb )
+static MACHINE_CONFIG_DERIVED( wb3bb, system16 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system16)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(wb3bbl_map)
@@ -2166,7 +2158,7 @@ static MACHINE_DRIVER_START( wb3bb )
MDRV_VIDEO_START( s16a_bootleg_wb3bl )
MDRV_VIDEO_UPDATE( s16a_bootleg )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const sega16sp_interface s16bbl_x121_sega16sp_intf =
@@ -2179,10 +2171,7 @@ static const sega16sp_interface s16bbl_x121_sega16sp_intf =
0, // use buffer
};
-static MACHINE_DRIVER_START( goldnaxeb1 )
-
- /* driver data */
- MDRV_DRIVER_DATA(segas1x_bootleg_state)
+static MACHINE_CONFIG_START( goldnaxeb1, segas1x_bootleg_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -2206,23 +2195,23 @@ static MACHINE_DRIVER_START( goldnaxeb1 )
MDRV_PALETTE_INIT( all_black )
MDRV_VIDEO_START(system16)
MDRV_VIDEO_UPDATE(system16)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( goldnaxeb2, goldnaxeb1 )
-static MACHINE_DRIVER_START( goldnaxeb2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(goldnaxeb1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(goldnaxeb2_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bayrouteb1 )
+static MACHINE_CONFIG_DERIVED( bayrouteb1, goldnaxeb1 )
+
/* basic machine hardware */
- MDRV_IMPORT_FROM(goldnaxeb1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(bayrouteb1_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const sega16sp_interface s16bbl_x107_sega16sp_intf =
{
@@ -2234,22 +2223,21 @@ static const sega16sp_interface s16bbl_x107_sega16sp_intf =
0, // use buffer
};
-static MACHINE_DRIVER_START( bayrouteb2 )
+static MACHINE_CONFIG_DERIVED( bayrouteb2, goldnaxeb1 )
+
/* basic machine hardware */
- MDRV_IMPORT_FROM(goldnaxeb1)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(bayrouteb2_map)
- MDRV_IMPORT_FROM(system16_datsu_sound)
+ MDRV_FRAGMENT_ADD(system16_datsu_sound)
MDRV_DEVICE_REMOVE("segaspr1")
MDRV_SEGA16SP_ADD("segaspr1", s16bbl_x107_sega16sp_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tturfbl )
+static MACHINE_CONFIG_DERIVED( tturfbl, system16_7759 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system16_7759)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tturfbl_map)
@@ -2264,7 +2252,7 @@ static MACHINE_DRIVER_START( tturfbl )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
MDRV_SEGA16SP_ADD("segaspr1", s16bbl_x107_sega16sp_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const sega16sp_interface s16bbl_x112_sega16sp_intf =
{
@@ -2276,15 +2264,14 @@ static const sega16sp_interface s16bbl_x112_sega16sp_intf =
0, // use buffer
};
-static MACHINE_DRIVER_START( dduxbl )
+static MACHINE_CONFIG_DERIVED( dduxbl, system16 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system16)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dduxbl_map)
MDRV_SEGA16SP_ADD("segaspr1", s16bbl_x112_sega16sp_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const sega16sp_interface s16bbl_x124_sega16sp_intf =
{
@@ -2296,20 +2283,18 @@ static const sega16sp_interface s16bbl_x124_sega16sp_intf =
0, // use buffer
};
-static MACHINE_DRIVER_START( eswatbl )
+static MACHINE_CONFIG_DERIVED( eswatbl, system16_7759 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system16_7759)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(eswatbl_map)
MDRV_SEGA16SP_ADD("segaspr1", s16bbl_x124_sega16sp_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fpointbl )
+static MACHINE_CONFIG_DERIVED( fpointbl, system16 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system16)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(fpointbl_map)
@@ -2317,35 +2302,30 @@ static MACHINE_DRIVER_START( fpointbl )
MDRV_CPU_PROGRAM_MAP(fpointbl_sound_map)
MDRV_SEGA16SP_ADD("segaspr1", s16bbl_x107_sega16sp_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tetrisbl )
+static MACHINE_CONFIG_DERIVED( tetrisbl, system16 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system16)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(tetrisbl_map)
MDRV_SEGA16SP_ADD("segaspr1", s16bbl_x112_sega16sp_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( beautyb )
+static MACHINE_CONFIG_DERIVED( beautyb, system16 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system16)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(beautyb_map)
MDRV_SEGA16SP_ADD("segaspr1", s16bbl_x112_sega16sp_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* System 18 Bootlegs */
-static MACHINE_DRIVER_START( system18 )
-
- /* driver data */
- MDRV_DRIVER_DATA(segas1x_bootleg_state)
+static MACHINE_CONFIG_START( system18, segas1x_bootleg_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -2389,31 +2369,28 @@ static MACHINE_DRIVER_START( system18 )
MDRV_SOUND_ADD("5c68", RF5C68, 8000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( astormbl )
+static MACHINE_CONFIG_DERIVED( astormbl, system18 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system18)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(astormbl_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mwalkbl )
+static MACHINE_CONFIG_DERIVED( mwalkbl, system18 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system18)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mwalkbl_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( shdancbl )
+static MACHINE_CONFIG_DERIVED( shdancbl, system18 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(system18)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(shdancbl_map)
@@ -2426,7 +2403,7 @@ static MACHINE_DRIVER_START( shdancbl )
MDRV_SOUND_CONFIG(shdancbl_msm5205_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/tagteam.c b/src/mame/drivers/tagteam.c
index e614c392993..48f39ac416e 100644
--- a/src/mame/drivers/tagteam.c
+++ b/src/mame/drivers/tagteam.c
@@ -226,7 +226,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( tagteam )
+static MACHINE_CONFIG_START( tagteam, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1500000) /* 1.5 MHz ?? */
@@ -263,7 +263,7 @@ static MACHINE_DRIVER_START( tagteam )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tail2nos.c b/src/mame/drivers/tail2nos.c
index ed57c9e7144..6a394a13c7f 100644
--- a/src/mame/drivers/tail2nos.c
+++ b/src/mame/drivers/tail2nos.c
@@ -236,10 +236,7 @@ static MACHINE_RESET( tail2nos )
state->video_enable = 0;
}
-static MACHINE_DRIVER_START( tail2nos )
-
- /* driver data */
- MDRV_DRIVER_DATA(tail2nos_state)
+static MACHINE_CONFIG_START( tail2nos, tail2nos_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,XTAL_20MHz/2) /* verified on pcb */
@@ -278,7 +275,7 @@ static MACHINE_DRIVER_START( tail2nos )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/taito_b.c b/src/mame/drivers/taito_b.c
index be3c3c64551..23a6052f711 100644
--- a/src/mame/drivers/taito_b.c
+++ b/src/mame/drivers/taito_b.c
@@ -2214,10 +2214,7 @@ static MACHINE_RESET( taitob )
state->coin_word = 0;
}
-static MACHINE_DRIVER_START( rastsag2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( rastsag2, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -2261,13 +2258,10 @@ static MACHINE_DRIVER_START( rastsag2 )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ashura )
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( ashura, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -2311,13 +2305,10 @@ static MACHINE_DRIVER_START( ashura )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( crimec )
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( crimec, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -2361,13 +2352,10 @@ static MACHINE_DRIVER_START( crimec )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tetrist )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( tetrist, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ???*/
@@ -2411,12 +2399,9 @@ static MACHINE_DRIVER_START( tetrist )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( tetrista )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( tetrista, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -2461,12 +2446,9 @@ static MACHINE_DRIVER_START( tetrista )
MDRV_SOUND_ROUTE(3, "mono", 0.80)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hitice )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( hitice, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -2515,13 +2497,10 @@ static MACHINE_DRIVER_START( hitice )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rambo3 )
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( rambo3, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz/2) /* verified on pcb */
@@ -2565,13 +2544,10 @@ static MACHINE_DRIVER_START( rambo3 )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rambo3a )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( rambo3a, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz/2) /* verified on pcb */
@@ -2615,12 +2591,9 @@ static MACHINE_DRIVER_START( rambo3a )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( pbobble )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( pbobble, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -2668,13 +2641,10 @@ static MACHINE_DRIVER_START( pbobble )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spacedx )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( spacedx, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -2722,13 +2692,10 @@ static MACHINE_DRIVER_START( spacedx )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spacedxo )
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( spacedxo, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -2772,13 +2739,10 @@ static MACHINE_DRIVER_START( spacedxo )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qzshowby )
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( qzshowby, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz according to the readme*/
@@ -2826,13 +2790,10 @@ static MACHINE_DRIVER_START( qzshowby )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( viofight )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( viofight, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -2880,12 +2841,9 @@ static MACHINE_DRIVER_START( viofight )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( masterw )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( masterw, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -2930,13 +2888,10 @@ static MACHINE_DRIVER_START( masterw )
MDRV_SOUND_ROUTE(3, "mono", 0.80)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( silentd )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( silentd, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz ??? */
@@ -2980,13 +2935,10 @@ static MACHINE_DRIVER_START( silentd )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( selfeena )
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( selfeena, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -3030,7 +2982,7 @@ static MACHINE_DRIVER_START( selfeena )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#if 0
static void ryujin_patch(void)
@@ -3042,10 +2994,7 @@ static void ryujin_patch(void)
}
#endif
-static MACHINE_DRIVER_START( ryujin )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( ryujin, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -3089,7 +3038,7 @@ static MACHINE_DRIVER_START( ryujin )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#if 0
static void sbm_patch(void)
@@ -3099,10 +3048,7 @@ static void sbm_patch(void)
}
#endif
-static MACHINE_DRIVER_START( sbm )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitob_state)
+static MACHINE_CONFIG_START( sbm, taitob_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -3146,7 +3092,7 @@ static MACHINE_DRIVER_START( sbm )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitob_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/taito_f2.c b/src/mame/drivers/taito_f2.c
index 22e07f8aeb1..dffe28483e7 100644
--- a/src/mame/drivers/taito_f2.c
+++ b/src/mame/drivers/taito_f2.c
@@ -3365,10 +3365,7 @@ static MACHINE_START( f2 )
memory_configure_bank(machine, "bank2", 0, 8, memory_region(machine, "audiocpu") + 0x10000, 0x4000);
}
-static MACHINE_DRIVER_START( taito_f2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitof2_state)
+static MACHINE_CONFIG_START( taito_f2, taitof2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 24000000/2) /* 12 MHz */
@@ -3405,29 +3402,26 @@ static MACHINE_DRIVER_START( taito_f2 )
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitof2_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( taito_f2_tc0220ioc )
+static MACHINE_CONFIG_DERIVED( taito_f2_tc0220ioc, taito_f2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2)
MDRV_TC0220IOC_ADD("tc0220ioc", taitof2_io220_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( taito_f2_tc0510nio )
+static MACHINE_CONFIG_DERIVED( taito_f2_tc0510nio, taito_f2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2)
MDRV_TC0510NIO_ADD("tc0510nio", taitof2_io510_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( finalb )
+static MACHINE_CONFIG_DERIVED( finalb, taito_f2_tc0220ioc )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0220ioc)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(finalb_map)
@@ -3438,13 +3432,12 @@ static MACHINE_DRIVER_START( finalb )
MDRV_TC0100SCN_ADD("tc0100scn", finalb_tc0100scn_intf)
MDRV_TC0110PCR_ADD("tc0110pcr", taitof2_tc0110pcr_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dondokod )
+static MACHINE_CONFIG_DERIVED( dondokod, taito_f2_tc0220ioc )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0220ioc)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dondokod_map)
@@ -3457,13 +3450,12 @@ static MACHINE_DRIVER_START( dondokod )
MDRV_TC0100SCN_ADD("tc0100scn", dondokod_tc0100scn_intf)
MDRV_TC0430GRW_ADD("tc0280grd", taitof2_tc0280grd_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( megab )
+static MACHINE_CONFIG_DERIVED( megab, taito_f2_tc0220ioc )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0220ioc)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(megab_map)
@@ -3473,13 +3465,12 @@ static MACHINE_DRIVER_START( megab )
MDRV_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( thundfox )
+static MACHINE_CONFIG_DERIVED( thundfox, taito_f2_tc0220ioc )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0220ioc)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(thundfox_map)
@@ -3492,13 +3483,12 @@ static MACHINE_DRIVER_START( thundfox )
MDRV_TC0100SCN_ADD("tc0100scn_1", thundfox_tc0100scn_intf_1)
MDRV_TC0100SCN_ADD("tc0100scn_2", thundfox_tc0100scn_intf_2)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cameltry )
+static MACHINE_CONFIG_DERIVED( cameltry, taito_f2_tc0220ioc )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0220ioc)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(cameltry_map)
@@ -3510,13 +3500,12 @@ static MACHINE_DRIVER_START( cameltry )
MDRV_TC0100SCN_ADD("tc0100scn", dondokod_tc0100scn_intf)
MDRV_TC0430GRW_ADD("tc0280grd", taitof2_tc0280grd_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qtorimon )
+static MACHINE_CONFIG_DERIVED( qtorimon, taito_f2_tc0220ioc )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0220ioc)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(qtorimon_map)
@@ -3526,13 +3515,12 @@ static MACHINE_DRIVER_START( qtorimon )
MDRV_TC0100SCN_ADD("tc0100scn", taitof2_tc0100scn_intf)
MDRV_TC0110PCR_ADD("tc0110pcr", taitof2_tc0110pcr_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( liquidk )
+static MACHINE_CONFIG_DERIVED( liquidk, taito_f2_tc0220ioc )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0220ioc)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(liquidk_map)
@@ -3543,13 +3531,12 @@ static MACHINE_DRIVER_START( liquidk )
MDRV_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( quizhq )
+static MACHINE_CONFIG_DERIVED( quizhq, taito_f2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(quizhq_map)
@@ -3559,13 +3546,12 @@ static MACHINE_DRIVER_START( quizhq )
MDRV_TC0100SCN_ADD("tc0100scn", taitof2_tc0100scn_intf)
MDRV_TC0110PCR_ADD("tc0110pcr", taitof2_tc0110pcr_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ssi )
+static MACHINE_CONFIG_DERIVED( ssi, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ssi_map)
@@ -3575,13 +3561,12 @@ static MACHINE_DRIVER_START( ssi )
MDRV_VIDEO_UPDATE(taitof2_ssi)
MDRV_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gunfront )
+static MACHINE_CONFIG_DERIVED( gunfront, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(gunfront_map)
@@ -3591,13 +3576,12 @@ static MACHINE_DRIVER_START( gunfront )
MDRV_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( growl )
+static MACHINE_CONFIG_DERIVED( growl, taito_f2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(growl_map)
@@ -3607,13 +3591,12 @@ static MACHINE_DRIVER_START( growl )
MDRV_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mjnquest )
+static MACHINE_CONFIG_DERIVED( mjnquest, taito_f2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mjnquest_map)
@@ -3622,13 +3605,12 @@ static MACHINE_DRIVER_START( mjnquest )
MDRV_TC0100SCN_ADD("tc0100scn", taitof2_tc0100scn_intf)
MDRV_TC0110PCR_ADD("tc0110pcr", taitof2_tc0110pcr_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( footchmp )
+static MACHINE_CONFIG_DERIVED( footchmp, taito_f2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(footchmp_map)
@@ -3640,13 +3622,12 @@ static MACHINE_DRIVER_START( footchmp )
MDRV_TC0480SCP_ADD("tc0480scp", footchmp_tc0480scp_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hthero )
+static MACHINE_CONFIG_DERIVED( hthero, taito_f2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(footchmp_map)
@@ -3658,13 +3639,12 @@ static MACHINE_DRIVER_START( hthero )
MDRV_TC0360PRI_ADD("tc0360pri")
MDRV_TC0480SCP_ADD("tc0480scp", hthero_tc0480scp_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( koshien )
+static MACHINE_CONFIG_DERIVED( koshien, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(koshien_map)
@@ -3674,13 +3654,12 @@ static MACHINE_DRIVER_START( koshien )
MDRV_TC0100SCN_ADD("tc0100scn", koshien_tc0100scn_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( yuyugogo )
+static MACHINE_CONFIG_DERIVED( yuyugogo, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(yuyugogo_map)
@@ -3690,13 +3669,12 @@ static MACHINE_DRIVER_START( yuyugogo )
MDRV_VIDEO_UPDATE(taitof2_yesnoj)
MDRV_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ninjak )
+static MACHINE_CONFIG_DERIVED( ninjak, taito_f2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ninjak_map)
@@ -3706,13 +3684,12 @@ static MACHINE_DRIVER_START( ninjak )
MDRV_TC0100SCN_ADD("tc0100scn", finalb_tc0100scn_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( solfigtr )
+static MACHINE_CONFIG_DERIVED( solfigtr, taito_f2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(solfigtr_map)
@@ -3722,13 +3699,12 @@ static MACHINE_DRIVER_START( solfigtr )
MDRV_TC0100SCN_ADD("tc0100scn", solfigtr_tc0100scn_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qzquest )
+static MACHINE_CONFIG_DERIVED( qzquest, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(qzquest_map)
@@ -3736,13 +3712,12 @@ static MACHINE_DRIVER_START( qzquest )
MDRV_VIDEO_EOF(taitof2_partial_buffer_delayed)
MDRV_TC0100SCN_ADD("tc0100scn", taitof2_tc0100scn_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pulirula )
+static MACHINE_CONFIG_DERIVED( pulirula, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(pulirula_map)
@@ -3754,13 +3729,12 @@ static MACHINE_DRIVER_START( pulirula )
MDRV_TC0100SCN_ADD("tc0100scn", dondokod_tc0100scn_intf)
MDRV_TC0430GRW_ADD("tc0430grw", taitof2_tc0430grw_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( metalb )
+static MACHINE_CONFIG_DERIVED( metalb, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(metalb_map)
@@ -3772,13 +3746,12 @@ static MACHINE_DRIVER_START( metalb )
MDRV_TC0480SCP_ADD("tc0480scp", metalb_tc0480scp_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qzchikyu )
+static MACHINE_CONFIG_DERIVED( qzchikyu, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(qzchikyu_map)
@@ -3787,13 +3760,12 @@ static MACHINE_DRIVER_START( qzchikyu )
MDRV_VIDEO_EOF(taitof2_partial_buffer_delayed_qzchikyu)
MDRV_TC0100SCN_ADD("tc0100scn", qzchikyu_tc0100scn_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( yesnoj )
+static MACHINE_CONFIG_DERIVED( yesnoj, taito_f2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(yesnoj_map)
@@ -3803,13 +3775,12 @@ static MACHINE_DRIVER_START( yesnoj )
MDRV_VIDEO_UPDATE(taitof2_yesnoj)
MDRV_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( deadconx )
+static MACHINE_CONFIG_DERIVED( deadconx, taito_f2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(deadconx_map)
@@ -3820,13 +3791,12 @@ static MACHINE_DRIVER_START( deadconx )
MDRV_TC0480SCP_ADD("tc0480scp", deadconx_tc0480scp_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( deadconxj )
+static MACHINE_CONFIG_DERIVED( deadconxj, taito_f2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(deadconx_map)
@@ -3837,13 +3807,12 @@ static MACHINE_DRIVER_START( deadconxj )
MDRV_TC0480SCP_ADD("tc0480scp", deadconxj_tc0480scp_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dinorex )
+static MACHINE_CONFIG_DERIVED( dinorex, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(dinorex_map)
@@ -3853,13 +3822,12 @@ static MACHINE_DRIVER_START( dinorex )
MDRV_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qjinsei )
+static MACHINE_CONFIG_DERIVED( qjinsei, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(qjinsei_map)
@@ -3869,13 +3837,12 @@ static MACHINE_DRIVER_START( qjinsei )
MDRV_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qcrayon )
+static MACHINE_CONFIG_DERIVED( qcrayon, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(qcrayon_map)
@@ -3885,13 +3852,12 @@ static MACHINE_DRIVER_START( qcrayon )
MDRV_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( qcrayon2 )
+static MACHINE_CONFIG_DERIVED( qcrayon2, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(qcrayon2_map)
@@ -3901,13 +3867,12 @@ static MACHINE_DRIVER_START( qcrayon2 )
MDRV_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( driftout )
+static MACHINE_CONFIG_DERIVED( driftout, taito_f2_tc0510nio )
/* basic machine hardware */
- MDRV_IMPORT_FROM(taito_f2_tc0510nio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(driftout_map)
@@ -3919,13 +3884,10 @@ static MACHINE_DRIVER_START( driftout )
MDRV_TC0100SCN_ADD("tc0100scn", dondokod_tc0100scn_intf)
MDRV_TC0430GRW_ADD("tc0430grw", taitof2_tc0430grw_intf)
MDRV_TC0360PRI_ADD("tc0360pri")
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cameltrya )
- /* driver data */
- MDRV_DRIVER_DATA(taitof2_state)
+static MACHINE_CONFIG_START( cameltrya, taitof2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* verified on pcb */
@@ -3972,13 +3934,10 @@ static MACHINE_DRIVER_START( cameltrya )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
MDRV_TC0140SYT_ADD("tc0140syt", taitof2_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( driveout )
- /* driver data */
- MDRV_DRIVER_DATA(taitof2_state)
+static MACHINE_CONFIG_START( driveout, taitof2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz */
@@ -4019,7 +3978,7 @@ static MACHINE_DRIVER_START( driveout )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitof2_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/taito_f3.c b/src/mame/drivers/taito_f3.c
index f45ba0b6c28..71a639abbcd 100644
--- a/src/mame/drivers/taito_f3.c
+++ b/src/mame/drivers/taito_f3.c
@@ -389,7 +389,7 @@ static MACHINE_START(f3)
state_save_register_global_array(machine, coin_word);
}
-static MACHINE_DRIVER_START( f3 )
+static MACHINE_CONFIG_START( f3, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, XTAL_16MHz)
@@ -416,49 +416,44 @@ static MACHINE_DRIVER_START( f3 )
MDRV_VIDEO_UPDATE(f3)
/* sound hardware */
- MDRV_IMPORT_FROM(taito_f3_sound)
+ MDRV_FRAGMENT_ADD(taito_f3_sound)
MDRV_SOUND_RESET(f3)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* These games reprogram the video output registers to display different scanlines,
we can't change our screen display at runtime, so we do it here instead. None
of the games change the registers during the game (to do so would probably require
monitor recalibration.)
*/
-static MACHINE_DRIVER_START( f3_224a )
- MDRV_IMPORT_FROM(f3)
+static MACHINE_CONFIG_DERIVED( f3_224a, f3 )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(46, 40*8-1 + 46, 31, 31+224-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( f3_224b )
- MDRV_IMPORT_FROM(f3)
+static MACHINE_CONFIG_DERIVED( f3_224b, f3 )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(46, 40*8-1 + 46, 32, 32+224-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( f3_224c )
- MDRV_IMPORT_FROM(f3)
+static MACHINE_CONFIG_DERIVED( f3_224c, f3 )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(46, 40*8-1 + 46, 24, 24+224-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* recalh and gseeker need a default EEPROM to work */
-static MACHINE_DRIVER_START( f3_eeprom )
- MDRV_IMPORT_FROM(f3)
+static MACHINE_CONFIG_DERIVED( f3_eeprom, f3 )
MDRV_DEVICE_REMOVE("eeprom")
MDRV_EEPROM_93C46_ADD("eeprom")
MDRV_EEPROM_DATA(recalh_eeprom, 128)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( f3_224b_eeprom )
- MDRV_IMPORT_FROM(f3)
+static MACHINE_CONFIG_DERIVED( f3_224b_eeprom, f3 )
MDRV_DEVICE_REMOVE("eeprom")
MDRV_EEPROM_93C46_ADD("eeprom")
MDRV_EEPROM_DATA(recalh_eeprom, 128)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const gfx_layout bubsympb_sprite_layout =
{
@@ -490,7 +485,7 @@ static GFXDECODE_START( bubsympb )
GFXDECODE_ENTRY( NULL, 0x000000, pivotlayout, 0, 64 ) /* Dynamically modified */
GFXDECODE_END
-static MACHINE_DRIVER_START( bubsympb )
+static MACHINE_CONFIG_START( bubsympb, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, XTAL_16MHz)
MDRV_CPU_PROGRAM_MAP(f3_map)
@@ -520,7 +515,7 @@ static MACHINE_DRIVER_START( bubsympb )
MDRV_OKIM6295_ADD("oki", 1000000 , OKIM6295_PIN7_HIGH) // not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/taito_h.c b/src/mame/drivers/taito_h.c
index c6948af16fe..7e401f957a2 100644
--- a/src/mame/drivers/taito_h.c
+++ b/src/mame/drivers/taito_h.c
@@ -563,10 +563,7 @@ static const tc0140syt_interface taitoh_tc0140syt_intf =
"maincpu", "audiocpu"
};
-static MACHINE_DRIVER_START( syvalion )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitoh_state)
+static MACHINE_CONFIG_START( syvalion, taitoh_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000 / 2) /* 12 MHz */
@@ -608,13 +605,10 @@ static MACHINE_DRIVER_START( syvalion )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoh_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( recordbr )
- /* driver data */
- MDRV_DRIVER_DATA(taitoh_state)
+static MACHINE_CONFIG_START( recordbr, taitoh_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000 / 2) /* 12 MHz */
@@ -656,13 +650,10 @@ static MACHINE_DRIVER_START( recordbr )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoh_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dleague )
- /* driver data */
- MDRV_DRIVER_DATA(taitoh_state)
+static MACHINE_CONFIG_START( dleague, taitoh_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000 / 2) /* 12 MHz */
@@ -704,7 +695,7 @@ static MACHINE_DRIVER_START( dleague )
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoh_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/taito_l.c b/src/mame/drivers/taito_l.c
index 0dcd1541192..c655a987140 100644
--- a/src/mame/drivers/taito_l.c
+++ b/src/mame/drivers/taito_l.c
@@ -2020,10 +2020,7 @@ static const tc0140syt_interface taitol_tc0140syt_intf =
};
-static MACHINE_DRIVER_START( fhawk )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitol_state)
+static MACHINE_CONFIG_START( fhawk, taitol_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_13_33056MHz/2) /* verified freq on pin122 of TC0090LVC cpu */
@@ -2068,13 +2065,12 @@ static MACHINE_DRIVER_START( fhawk )
MDRV_SOUND_ROUTE(3, "mono", 0.80)
MDRV_TC0140SYT_ADD("tc0140syt", taitol_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( champwr )
+static MACHINE_CONFIG_DERIVED( champwr, fhawk )
/* basic machine hardware */
- MDRV_IMPORT_FROM(fhawk)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(champwr_map)
@@ -2097,14 +2093,13 @@ static MACHINE_DRIVER_START( champwr )
MDRV_SOUND_ADD("msm", MSM5205, XTAL_384kHz)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( raimais )
+static MACHINE_CONFIG_DERIVED( raimais, fhawk )
/* basic machine hardware */
- MDRV_IMPORT_FROM(fhawk)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(raimais_map)
@@ -2122,13 +2117,10 @@ static MACHINE_DRIVER_START( raimais )
MDRV_SOUND_ROUTE(0, "mono", 0.25)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
MDRV_SOUND_ROUTE(2, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kurikint )
- /* driver data */
- MDRV_DRIVER_DATA(taitol_state)
+static MACHINE_CONFIG_START( kurikint, taitol_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_13_33056MHz/2) /* verified freq on pin122 of TC0090LVC cpu */
@@ -2169,23 +2161,19 @@ static MACHINE_DRIVER_START( kurikint )
MDRV_SOUND_ROUTE(3, "mono", 0.80)
MDRV_TC0140SYT_ADD("tc0140syt", taitol_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kurikinta )
+static MACHINE_CONFIG_DERIVED( kurikinta, kurikint )
/* basic machine hardware */
- MDRV_IMPORT_FROM(kurikint)
/* video hardware */
MDRV_GFXDECODE(1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( plotting )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitol_state)
+static MACHINE_CONFIG_START( plotting, taitol_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_13_33056MHz/2) /* verified freq on pin122 of TC0090LVC cpu */
@@ -2221,66 +2209,58 @@ static MACHINE_DRIVER_START( plotting )
MDRV_SOUND_ROUTE(3, "mono", 0.80)
MDRV_TC0140SYT_ADD("tc0140syt", taitol_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( puzznic )
+static MACHINE_CONFIG_DERIVED( puzznic, plotting )
/* basic machine hardware */
- MDRV_IMPORT_FROM(plotting)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(puzznic_map)
MDRV_MACHINE_RESET(puzznic)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( puzznici )
+static MACHINE_CONFIG_DERIVED( puzznici, plotting )
/* basic machine hardware */
- MDRV_IMPORT_FROM(plotting)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(puzznici_map)
MDRV_MACHINE_RESET(puzznic)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( horshoes )
+static MACHINE_CONFIG_DERIVED( horshoes, plotting )
/* basic machine hardware */
- MDRV_IMPORT_FROM(plotting)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(horshoes_map)
MDRV_MACHINE_RESET(horshoes)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( palamed )
+static MACHINE_CONFIG_DERIVED( palamed, plotting )
/* basic machine hardware */
- MDRV_IMPORT_FROM(plotting)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(palamed_map)
MDRV_MACHINE_RESET(palamed)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cachat )
+static MACHINE_CONFIG_DERIVED( cachat, plotting )
/* basic machine hardware */
- MDRV_IMPORT_FROM(plotting)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(cachat_map)
MDRV_MACHINE_RESET(cachat)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( evilston )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(taitol_state)
+static MACHINE_CONFIG_START( evilston, taitol_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_13_33056MHz/2) /* not verified */
@@ -2321,13 +2301,12 @@ static MACHINE_DRIVER_START( evilston )
MDRV_SOUND_ROUTE(3, "mono", 0.80)
MDRV_TC0140SYT_ADD("tc0140syt", taitol_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#ifdef UNUSED_CODE
-static MACHINE_DRIVER_START( lagirl )
+static MACHINE_CONFIG_DERIVED( lagirl, plotting )
/* basic machine hardware */
- MDRV_IMPORT_FROM(plotting)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(XTAL_27_2109MHz/4)
MDRV_CPU_PROGRAM_MAP(cachat_map)
@@ -2336,7 +2315,7 @@ static MACHINE_DRIVER_START( lagirl )
MDRV_SOUND_REPLACE("ymsnd", YM2203, XTAL_27_2109MHz/8)
MDRV_MACHINE_RESET(cachat)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#endif
diff --git a/src/mame/drivers/taito_o.c b/src/mame/drivers/taito_o.c
index 2113be90eb3..6234c6f5bcd 100644
--- a/src/mame/drivers/taito_o.c
+++ b/src/mame/drivers/taito_o.c
@@ -246,9 +246,7 @@ static MACHINE_START( taitoo )
state->tc0080vco = machine->device("tc0080vco");
}
-static MACHINE_DRIVER_START( parentj )
-
- MDRV_DRIVER_DATA(taitoo_state)
+static MACHINE_CONFIG_START( parentj, taitoo_state )
MDRV_CPU_ADD("maincpu", M68000,12000000 ) /*?? MHz */
MDRV_CPU_PROGRAM_MAP(parentj_map)
@@ -278,7 +276,7 @@ static MACHINE_DRIVER_START( parentj )
MDRV_SOUND_ROUTE(0, "mono", 0.25)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
MDRV_SOUND_ROUTE(2, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( parentj )
ROM_REGION( 0x20000, "maincpu", 0 ) /* 68000 Code */
diff --git a/src/mame/drivers/taito_x.c b/src/mame/drivers/taito_x.c
index 647764e21b4..c7535ebbf14 100644
--- a/src/mame/drivers/taito_x.c
+++ b/src/mame/drivers/taito_x.c
@@ -909,9 +909,7 @@ static const tc0140syt_interface taitox_tc0140syt_intf =
/**************************************************************************/
-static MACHINE_DRIVER_START( superman )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( superman, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz/2) /* verified on pcb */
@@ -951,11 +949,9 @@ static MACHINE_DRIVER_START( superman )
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitox_tc0140syt_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( daisenpu )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( daisenpu, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz/2) /* verified on pcb */
@@ -992,11 +988,9 @@ static MACHINE_DRIVER_START( daisenpu )
MDRV_SOUND_ROUTE(1, "rspeaker", 0.45)
MDRV_TC0140SYT_ADD("tc0140syt", taitox_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gigandes )
-
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( gigandes, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz? */
@@ -1035,11 +1029,9 @@ static MACHINE_DRIVER_START( gigandes )
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitox_tc0140syt_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( ballbros )
+MACHINE_CONFIG_END
- MDRV_DRIVER_DATA( seta_state )
+static MACHINE_CONFIG_START( ballbros, seta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz? */
@@ -1078,7 +1070,7 @@ static MACHINE_DRIVER_START( ballbros )
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitox_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/taito_z.c b/src/mame/drivers/taito_z.c
index dda9e616684..70a6f16b478 100644
--- a/src/mame/drivers/taito_z.c
+++ b/src/mame/drivers/taito_z.c
@@ -3012,10 +3012,7 @@ static MACHINE_RESET( taitoz )
/* Contcirc vis area seems narrower than the other games... */
-static MACHINE_DRIVER_START( contcirc )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitoz_state)
+static MACHINE_CONFIG_START( contcirc, taitoz_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ??? */
@@ -3077,13 +3074,10 @@ static MACHINE_DRIVER_START( contcirc )
// MDRV_SOUND_ADD("subwoofer", SUBWOOFER, 0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoz_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( chasehq )
- /* driver data */
- MDRV_DRIVER_DATA(taitoz_state)
+static MACHINE_CONFIG_START( chasehq, taitoz_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ??? */
@@ -3143,13 +3137,10 @@ static MACHINE_DRIVER_START( chasehq )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "front", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoz_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( enforce )
- /* driver data */
- MDRV_DRIVER_DATA(taitoz_state)
+static MACHINE_CONFIG_START( enforce, taitoz_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ??? */
@@ -3212,13 +3203,10 @@ static MACHINE_DRIVER_START( enforce )
// MDRV_SOUND_ADD("subwoofer", SUBWOOFER, 0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoz_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bshark )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitoz_state)
+static MACHINE_CONFIG_START( bshark, taitoz_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ??? */
@@ -3275,13 +3263,10 @@ static MACHINE_DRIVER_START( bshark )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoz_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sci )
- /* driver data */
- MDRV_DRIVER_DATA(taitoz_state)
+static MACHINE_CONFIG_START( sci, taitoz_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ??? */
@@ -3341,13 +3326,10 @@ static MACHINE_DRIVER_START( sci )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoz_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nightstr )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitoz_state)
+static MACHINE_CONFIG_START( nightstr, taitoz_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ??? */
@@ -3409,13 +3391,10 @@ static MACHINE_DRIVER_START( nightstr )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "front", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoz_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( aquajack )
- /* driver data */
- MDRV_DRIVER_DATA(taitoz_state)
+static MACHINE_CONFIG_START( aquajack, taitoz_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ??? */
@@ -3476,13 +3455,10 @@ static MACHINE_DRIVER_START( aquajack )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoz_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spacegun )
- /* driver data */
- MDRV_DRIVER_DATA(taitoz_state)
+static MACHINE_CONFIG_START( spacegun, taitoz_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz ??? */
@@ -3539,13 +3515,10 @@ static MACHINE_DRIVER_START( spacegun )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoz_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( dblaxle )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitoz_state)
+static MACHINE_CONFIG_START( dblaxle, taitoz_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz ??? */
@@ -3605,13 +3578,10 @@ static MACHINE_DRIVER_START( dblaxle )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoz_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( racingb )
- /* driver data */
- MDRV_DRIVER_DATA(taitoz_state)
+static MACHINE_CONFIG_START( racingb, taitoz_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz ??? */
@@ -3671,7 +3641,7 @@ static MACHINE_DRIVER_START( racingb )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", taitoz_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/taitoair.c b/src/mame/drivers/taitoair.c
index 01d6724bf14..569afb5e7f1 100644
--- a/src/mame/drivers/taitoair.c
+++ b/src/mame/drivers/taitoair.c
@@ -648,10 +648,7 @@ static MACHINE_RESET( taitoair )
}
}
-static MACHINE_DRIVER_START( airsys )
-
- /* driver data */
- MDRV_DRIVER_DATA(taitoair_state)
+static MACHINE_CONFIG_START( airsys, taitoair_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000 / 2) /* 12 MHz ??? */
@@ -698,7 +695,7 @@ static MACHINE_DRIVER_START( airsys )
MDRV_SOUND_ROUTE(2, "mono", 0.60)
MDRV_TC0140SYT_ADD("tc0140syt", airsys_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************************************
diff --git a/src/mame/drivers/taitogn.c b/src/mame/drivers/taitogn.c
index 9e3df41d199..5d7c3140956 100644
--- a/src/mame/drivers/taitogn.c
+++ b/src/mame/drivers/taitogn.c
@@ -916,7 +916,7 @@ static const psx_spu_interface psxspu_interface =
psx_dma_install_write_handler
};
-static MACHINE_DRIVER_START( coh3002t )
+static MACHINE_CONFIG_START( coh3002t, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD( "maincpu", PSXCPU, XTAL_100MHz )
MDRV_CPU_PROGRAM_MAP( zn_map)
@@ -952,8 +952,8 @@ static MACHINE_DRIVER_START( coh3002t )
MDRV_MB3773_ADD("mb3773")
- MDRV_IMPORT_FROM( taito_zoom_sound )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( taito_zoom_sound )
+MACHINE_CONFIG_END
static INPUT_PORTS_START( coh3002t )
PORT_START("P1")
diff --git a/src/mame/drivers/taitojc.c b/src/mame/drivers/taitojc.c
index 591339e77df..86a25146dd6 100644
--- a/src/mame/drivers/taitojc.c
+++ b/src/mame/drivers/taitojc.c
@@ -1314,9 +1314,7 @@ static const hc11_config taitojc_config =
};
-static MACHINE_DRIVER_START( taitojc )
-
- MDRV_DRIVER_DATA( taitojc_state )
+static MACHINE_CONFIG_START( taitojc, taitojc_state )
MDRV_CPU_ADD("maincpu", M68040, 25000000)
MDRV_CPU_PROGRAM_MAP(taitojc_map)
@@ -1350,8 +1348,8 @@ static MACHINE_DRIVER_START( taitojc )
MDRV_VIDEO_UPDATE(taitojc)
/* sound hardware */
- MDRV_IMPORT_FROM(taito_f3_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(taito_f3_sound)
+MACHINE_CONFIG_END
static DRIVER_INIT( taitojc )
{
diff --git a/src/mame/drivers/taitopjc.c b/src/mame/drivers/taitopjc.c
index 78cc46940c9..b4997df1a68 100644
--- a/src/mame/drivers/taitopjc.c
+++ b/src/mame/drivers/taitopjc.c
@@ -86,7 +86,7 @@ static const powerpc_config ppc603e_config =
XTAL_66_6667MHz /* Multiplier 1.5, Bus = 66MHz, Core = 100MHz */
};
-static MACHINE_DRIVER_START( taitopjc )
+static MACHINE_CONFIG_START( taitopjc, driver_data_t )
MDRV_CPU_ADD("maincpu", PPC603E, 100000000)
MDRV_CPU_CONFIG(ppc603e_config)
MDRV_CPU_PROGRAM_MAP(ppc603e_mem)
@@ -104,7 +104,7 @@ static MACHINE_DRIVER_START( taitopjc )
MDRV_VIDEO_START(taitopjc)
MDRV_VIDEO_UPDATE(taitopjc)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( optiger )
diff --git a/src/mame/drivers/taitosj.c b/src/mame/drivers/taitosj.c
index 3767995e6dd..a1ffa2fce41 100644
--- a/src/mame/drivers/taitosj.c
+++ b/src/mame/drivers/taitosj.c
@@ -1790,7 +1790,7 @@ static const ay8910_interface ay8910_interface_4 =
-static MACHINE_DRIVER_START( nomcu )
+static MACHINE_CONFIG_START( nomcu, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,8000000/2) /* 4 MHz */
@@ -1843,14 +1843,13 @@ static MACHINE_DRIVER_START( nomcu )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* same as above, but with additional 68705 MCU */
-static MACHINE_DRIVER_START( mcu )
+static MACHINE_CONFIG_DERIVED( mcu, nomcu )
/* basic machine hardware */
- MDRV_IMPORT_FROM(nomcu)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(taitosj_main_mcu_map)
@@ -1858,18 +1857,17 @@ static MACHINE_DRIVER_START( mcu )
MDRV_CPU_PROGRAM_MAP(taitosj_mcu_map)
MDRV_QUANTUM_TIME(HZ(6000))
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kikstart )
+static MACHINE_CONFIG_DERIVED( kikstart, mcu )
/* basic machine hardware */
- MDRV_IMPORT_FROM(mcu)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(kikstart_main_map)
MDRV_VIDEO_UPDATE(kikstart)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/taitotz.c b/src/mame/drivers/taitotz.c
index 0b4b2121009..1b770f11609 100644
--- a/src/mame/drivers/taitotz.c
+++ b/src/mame/drivers/taitotz.c
@@ -102,7 +102,7 @@ static const powerpc_config ppc603e_config =
};
-static MACHINE_DRIVER_START( taitotz )
+static MACHINE_CONFIG_START( taitotz, driver_data_t )
MDRV_CPU_ADD("maincpu", PPC603E, 100000000)
MDRV_CPU_CONFIG(ppc603e_config)
MDRV_CPU_PROGRAM_MAP(ppc603e_mem)
@@ -119,7 +119,7 @@ static MACHINE_DRIVER_START( taitotz )
MDRV_VIDEO_START(taitotz)
MDRV_VIDEO_UPDATE(taitotz)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#define TAITOTZ_BIOS \
ROM_LOAD32_WORD_SWAP( "e68-05-1.ic6", 0x000000, 0x080000, CRC(6ad9b006) SHA1(f05a0ae26b6abaeda9c7944aee96c72b08fff7a5) ) \
diff --git a/src/mame/drivers/taitowlf.c b/src/mame/drivers/taitowlf.c
index 71e7f5e524a..9b43e741e62 100644
--- a/src/mame/drivers/taitowlf.c
+++ b/src/mame/drivers/taitowlf.c
@@ -597,7 +597,7 @@ static const struct pit8253_config taitowlf_pit8254_config =
}
};
-static MACHINE_DRIVER_START(taitowlf)
+static MACHINE_CONFIG_START( taitowlf, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PENTIUM, 200000000)
@@ -639,7 +639,7 @@ static MACHINE_DRIVER_START(taitowlf)
MDRV_VIDEO_START(taitowlf)
MDRV_VIDEO_UPDATE(taitowlf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static void set_gate_a20(running_machine *machine, int a20)
{
diff --git a/src/mame/drivers/tank8.c b/src/mame/drivers/tank8.c
index 5b86230bf47..7714be84ccd 100644
--- a/src/mame/drivers/tank8.c
+++ b/src/mame/drivers/tank8.c
@@ -324,7 +324,7 @@ static GFXDECODE_START( tank8 )
GFXDECODE_END
-static MACHINE_DRIVER_START( tank8 )
+static MACHINE_CONFIG_START( tank8, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, 11055000 / 10) /* ? */
@@ -356,7 +356,7 @@ static MACHINE_DRIVER_START( tank8 )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(tank8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( tank8a )
diff --git a/src/mame/drivers/tankbatt.c b/src/mame/drivers/tankbatt.c
index 6d10ddacadb..1d863539c00 100644
--- a/src/mame/drivers/tankbatt.c
+++ b/src/mame/drivers/tankbatt.c
@@ -297,7 +297,7 @@ static const samples_interface tankbatt_samples_interface =
-static MACHINE_DRIVER_START( tankbatt )
+static MACHINE_CONFIG_START( tankbatt, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1000000) /* 1 MHz ???? */
@@ -325,7 +325,7 @@ static MACHINE_DRIVER_START( tankbatt )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(tankbatt_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tankbust.c b/src/mame/drivers/tankbust.c
index 60fc95bab39..a099bae11a8 100644
--- a/src/mame/drivers/tankbust.c
+++ b/src/mame/drivers/tankbust.c
@@ -339,7 +339,7 @@ static MACHINE_RESET( tankbust )
}
-static MACHINE_DRIVER_START( tankbust )
+static MACHINE_CONFIG_START( tankbust, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz ? */
@@ -380,7 +380,7 @@ static MACHINE_DRIVER_START( tankbust )
MDRV_SOUND_ADD("ay2", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/taotaido.c b/src/mame/drivers/taotaido.c
index af333ca3100..c0b9863fa18 100644
--- a/src/mame/drivers/taotaido.c
+++ b/src/mame/drivers/taotaido.c
@@ -330,7 +330,7 @@ static const ym2610_interface ym2610_config =
irqhandler
};
-static MACHINE_DRIVER_START( taotaido )
+static MACHINE_CONFIG_START( taotaido, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 32000000/2)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -364,7 +364,7 @@ static MACHINE_DRIVER_START( taotaido )
MDRV_SOUND_ROUTE(0, "rspeaker", 0.25)
MDRV_SOUND_ROUTE(1, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( taotaido )
diff --git a/src/mame/drivers/targeth.c b/src/mame/drivers/targeth.c
index 05651d253e4..ae96772093d 100644
--- a/src/mame/drivers/targeth.c
+++ b/src/mame/drivers/targeth.c
@@ -176,7 +176,7 @@ static INPUT_PORTS_START( targeth )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( targeth )
+static MACHINE_CONFIG_START( targeth, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz */
@@ -202,7 +202,7 @@ static MACHINE_DRIVER_START( targeth )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( targeth )
ROM_REGION( 0x100000, "maincpu", 0 ) /* 68000 code */
diff --git a/src/mame/drivers/tatsumi.c b/src/mame/drivers/tatsumi.c
index 156fd40f6ed..ac968576681 100644
--- a/src/mame/drivers/tatsumi.c
+++ b/src/mame/drivers/tatsumi.c
@@ -855,7 +855,7 @@ static MACHINE_RESET( apache3 )
}
-static MACHINE_DRIVER_START( apache3 )
+static MACHINE_CONFIG_START( apache3, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, CLOCK_1 / 2)
@@ -899,9 +899,9 @@ static MACHINE_DRIVER_START( apache3 )
MDRV_OKIM6295_ADD("oki", CLOCK_1 / 4 / 2, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.75)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( roundup5 )
+static MACHINE_CONFIG_START( roundup5, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, CLOCK_1 / 2)
@@ -941,9 +941,9 @@ static MACHINE_DRIVER_START( roundup5 )
MDRV_OKIM6295_ADD("oki", CLOCK_1 / 4 / 2, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.75)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cyclwarr )
+static MACHINE_CONFIG_START( cyclwarr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CLOCK_2 / 4)
@@ -984,9 +984,9 @@ static MACHINE_DRIVER_START( cyclwarr )
MDRV_OKIM6295_ADD("oki", CLOCK_1 / 8, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.75)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bigfight )
+static MACHINE_CONFIG_START( bigfight, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CLOCK_2 / 4)
@@ -1027,7 +1027,7 @@ static MACHINE_DRIVER_START( bigfight )
MDRV_OKIM6295_ADD("oki", CLOCK_1 / 8 / 2, OKIM6295_PIN7_HIGH) /* 2MHz was too fast. Can the clock be software controlled? */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.75)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************/
diff --git a/src/mame/drivers/tattack.c b/src/mame/drivers/tattack.c
index f274465fcb3..129ca86bb7c 100644
--- a/src/mame/drivers/tattack.c
+++ b/src/mame/drivers/tattack.c
@@ -180,7 +180,7 @@ static PALETTE_INIT( tattack )
}
-static MACHINE_DRIVER_START( tattack )
+static MACHINE_CONFIG_START( tattack, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000 / 2) /* 4 MHz ? */
@@ -205,7 +205,7 @@ static MACHINE_DRIVER_START( tattack )
/* sound hardware */
/* Discrete ???? */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/taxidrvr.c b/src/mame/drivers/taxidrvr.c
index b19dd867ca1..6a526b3b034 100644
--- a/src/mame/drivers/taxidrvr.c
+++ b/src/mame/drivers/taxidrvr.c
@@ -358,7 +358,7 @@ static const ay8910_interface ay8910_interface_2 =
-static MACHINE_DRIVER_START( taxidrvr )
+static MACHINE_CONFIG_START( taxidrvr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,4000000) /* 4 MHz ??? */
@@ -406,7 +406,7 @@ static MACHINE_DRIVER_START( taxidrvr )
MDRV_SOUND_ADD("ay2", AY8910, 1250000)
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tbowl.c b/src/mame/drivers/tbowl.c
index 3b21876c511..2d7c6a60785 100644
--- a/src/mame/drivers/tbowl.c
+++ b/src/mame/drivers/tbowl.c
@@ -477,7 +477,7 @@ static MACHINE_RESET( tbowl )
adpcm_data[0] = adpcm_data[1] = -1;
}
-static MACHINE_DRIVER_START( tbowl )
+static MACHINE_CONFIG_START( tbowl, driver_data_t )
/* CPU on Board '6206B' */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* NEC D70008AC-8 (Z80 Clone) */
@@ -537,7 +537,7 @@ static MACHINE_DRIVER_START( tbowl )
MDRV_SOUND_ADD("msm2", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* Board Layout from readme.txt
diff --git a/src/mame/drivers/tceptor.c b/src/mame/drivers/tceptor.c
index fd99465816e..83c509fd33e 100644
--- a/src/mame/drivers/tceptor.c
+++ b/src/mame/drivers/tceptor.c
@@ -377,7 +377,7 @@ static MACHINE_RESET( tceptor )
/*******************************************************************/
-static MACHINE_DRIVER_START( tceptor )
+static MACHINE_CONFIG_START( tceptor, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 49152000/32)
@@ -453,7 +453,7 @@ static MACHINE_DRIVER_START( tceptor )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/tcl.c b/src/mame/drivers/tcl.c
index 6ce151bff4a..08d33da3256 100644
--- a/src/mame/drivers/tcl.c
+++ b/src/mame/drivers/tcl.c
@@ -112,7 +112,7 @@ static const ppi8255_interface ppi8255_intf[2] =
};
-static MACHINE_DRIVER_START( tcl )
+static MACHINE_CONFIG_START( tcl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/4)
@@ -140,7 +140,7 @@ static MACHINE_DRIVER_START( tcl )
MDRV_SOUND_ADD("aysnd", AY8910, 12000000/6)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/tecmo.c b/src/mame/drivers/tecmo.c
index c99ef4210fc..a29bd1be196 100644
--- a/src/mame/drivers/tecmo.c
+++ b/src/mame/drivers/tecmo.c
@@ -675,7 +675,7 @@ static MACHINE_RESET( rygar )
adpcm_data = -1;
}
-static MACHINE_DRIVER_START( rygar )
+static MACHINE_CONFIG_START( rygar, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_24MHz/4) /* verified on pcb */
@@ -711,33 +711,31 @@ static MACHINE_DRIVER_START( rygar )
MDRV_SOUND_ADD("msm", MSM5205, XTAL_400kHz) /* verified on pcb, even if schematics shows a 384khz resonator */
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( gemini )
+static MACHINE_CONFIG_DERIVED( gemini, rygar )
/* basic machine hardware */
- MDRV_IMPORT_FROM(rygar)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(6000000)
MDRV_CPU_PROGRAM_MAP(gemini_map)
MDRV_CPU_MODIFY("soundcpu")
MDRV_CPU_PROGRAM_MAP(tecmo_sound_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( silkworm )
+static MACHINE_CONFIG_DERIVED( silkworm, gemini )
/* basic machine hardware */
- MDRV_IMPORT_FROM(gemini)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(6000000)
MDRV_CPU_PROGRAM_MAP(silkworm_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#ifdef UNUSED_CODE
-static MACHINE_DRIVER_START( backfirt )
+static MACHINE_CONFIG_START( backfirt, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_24MHz/4)
@@ -772,7 +770,7 @@ static MACHINE_DRIVER_START( backfirt )
/* no MSM on this PCB */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#endif
/***************************************************************************
diff --git a/src/mame/drivers/tecmo16.c b/src/mame/drivers/tecmo16.c
index 7b2984b94e6..bbd56b2234b 100644
--- a/src/mame/drivers/tecmo16.c
+++ b/src/mame/drivers/tecmo16.c
@@ -398,7 +398,7 @@ static const ym2151_interface ym2151_config =
/******************************************************************************/
-static MACHINE_DRIVER_START( fstarfrc )
+static MACHINE_CONFIG_START( fstarfrc, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12MHz */
@@ -435,22 +435,21 @@ static MACHINE_DRIVER_START( fstarfrc )
MDRV_OKIM6295_ADD("oki", 999900, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ginkun )
- MDRV_IMPORT_FROM(fstarfrc)
+static MACHINE_CONFIG_DERIVED( ginkun, fstarfrc )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ginkun_map)
MDRV_VIDEO_START(ginkun)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( riot, ginkun )
-static MACHINE_DRIVER_START( riot )
/* basic machine hardware */
- MDRV_IMPORT_FROM(ginkun)
MDRV_VIDEO_START(riot)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/tecmosys.c b/src/mame/drivers/tecmosys.c
index 006076076b0..09d1e0f46ae 100644
--- a/src/mame/drivers/tecmosys.c
+++ b/src/mame/drivers/tecmosys.c
@@ -876,7 +876,7 @@ static const ymf262_interface tecmosys_ymf262_interface =
};
-static MACHINE_DRIVER_START( deroon )
+static MACHINE_CONFIG_START( deroon, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 16000000)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -921,7 +921,7 @@ static MACHINE_DRIVER_START( deroon )
MDRV_SOUND_ADD("ymz", YMZ280B, 16900000)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.30)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( deroon )
diff --git a/src/mame/drivers/tehkanwc.c b/src/mame/drivers/tehkanwc.c
index 842ea650faa..7381660006b 100644
--- a/src/mame/drivers/tehkanwc.c
+++ b/src/mame/drivers/tehkanwc.c
@@ -657,7 +657,7 @@ static const msm5205_interface msm5205_config =
MSM5205_S48_4B /* 8KHz */
};
-static MACHINE_DRIVER_START( tehkanwc )
+static MACHINE_CONFIG_START( tehkanwc, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/4) /* 18.432000 / 4 */
@@ -703,7 +703,7 @@ static MACHINE_DRIVER_START( tehkanwc )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.45)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static DRIVER_INIT( teedoff )
diff --git a/src/mame/drivers/tempest.c b/src/mame/drivers/tempest.c
index 553757011d5..14aa62e66e3 100644
--- a/src/mame/drivers/tempest.c
+++ b/src/mame/drivers/tempest.c
@@ -570,7 +570,7 @@ static const pokey_interface pokey_interface_2 =
*
*************************************/
-static MACHINE_DRIVER_START( tempest )
+static MACHINE_CONFIG_START( tempest, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK / 8)
@@ -604,7 +604,7 @@ static MACHINE_DRIVER_START( tempest )
MDRV_SOUND_ADD("pokey2", POKEY, MASTER_CLOCK / 8)
MDRV_SOUND_CONFIG(pokey_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/terracre.c b/src/mame/drivers/terracre.c
index 83cea212b7d..667a67241df 100644
--- a/src/mame/drivers/terracre.c
+++ b/src/mame/drivers/terracre.c
@@ -539,7 +539,7 @@ static GFXDECODE_START( terracre )
GFXDECODE_ENTRY( "gfx3", 0, sprite_layout, 1*16+16*16, 256 )
GFXDECODE_END
-static MACHINE_DRIVER_START( amazon )
+static MACHINE_CONFIG_START( amazon, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 8000000 )
MDRV_CPU_PROGRAM_MAP(amazon_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -576,9 +576,9 @@ static MACHINE_DRIVER_START( amazon )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ym3526 )
+static MACHINE_CONFIG_START( ym3526, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 8000000 )
MDRV_CPU_PROGRAM_MAP(terracre_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -613,9 +613,9 @@ static MACHINE_DRIVER_START( ym3526 )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ym2203 )
+static MACHINE_CONFIG_START( ym2203, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz?? */
MDRV_CPU_PROGRAM_MAP(terracre_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -659,7 +659,7 @@ static MACHINE_DRIVER_START( ym2203 )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( terracre )
ROM_REGION( 0x20000, "maincpu", 0 ) /* 128K for 68000 code */
diff --git a/src/mame/drivers/tetrisp2.c b/src/mame/drivers/tetrisp2.c
index bb496df9554..7a33011d0f1 100644
--- a/src/mame/drivers/tetrisp2.c
+++ b/src/mame/drivers/tetrisp2.c
@@ -1106,7 +1106,7 @@ static DRIVER_INIT( rockn3 )
}
-static MACHINE_DRIVER_START( tetrisp2 )
+static MACHINE_CONFIG_START( tetrisp2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -1136,10 +1136,10 @@ static MACHINE_DRIVER_START( tetrisp2 )
MDRV_SOUND_ADD("ymz", YMZ280B, 16934400)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( nndmseal )
+static MACHINE_CONFIG_START( nndmseal, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz)
@@ -1167,10 +1167,10 @@ static MACHINE_DRIVER_START( nndmseal )
MDRV_OKIM6295_ADD("oki", XTAL_2MHz, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rockn )
+static MACHINE_CONFIG_START( rockn, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -1199,10 +1199,10 @@ static MACHINE_DRIVER_START( rockn )
MDRV_SOUND_ADD("ymz", YMZ280B, 16934400)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rockn2 )
+static MACHINE_CONFIG_START( rockn2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -1231,10 +1231,10 @@ static MACHINE_DRIVER_START( rockn2 )
MDRV_SOUND_ADD("ymz", YMZ280B, 16934400)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rocknms )
+static MACHINE_CONFIG_START( rocknms, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -1277,7 +1277,7 @@ static MACHINE_DRIVER_START( rocknms )
MDRV_SOUND_ADD("ymz", YMZ280B, 16934400)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/tgtpanic.c b/src/mame/drivers/tgtpanic.c
index 5d485e9d074..0fa963654af 100644
--- a/src/mame/drivers/tgtpanic.c
+++ b/src/mame/drivers/tgtpanic.c
@@ -117,7 +117,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( tgtpanic )
+static MACHINE_CONFIG_START( tgtpanic, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_4MHz)
@@ -134,7 +134,7 @@ static MACHINE_DRIVER_START( tgtpanic )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 192 - 1, 0, 192 - 1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/thayers.c b/src/mame/drivers/thayers.c
index a6c2b4f79ee..de277235d81 100644
--- a/src/mame/drivers/thayers.c
+++ b/src/mame/drivers/thayers.c
@@ -755,7 +755,7 @@ static COP400_INTERFACE( thayers_cop_intf )
/* Machine Driver */
-static MACHINE_DRIVER_START( thayers )
+static MACHINE_CONFIG_START( thayers, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_4MHz)
MDRV_CPU_PROGRAM_MAP(thayers_map)
@@ -782,7 +782,7 @@ static MACHINE_DRIVER_START( thayers )
MDRV_SOUND_ADD("ldsound", LASERDISC, 0)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/thedeep.c b/src/mame/drivers/thedeep.c
index 8c735802e61..6140b59c846 100644
--- a/src/mame/drivers/thedeep.c
+++ b/src/mame/drivers/thedeep.c
@@ -349,7 +349,7 @@ static INTERRUPT_GEN( thedeep_interrupt )
}
}
-static MACHINE_DRIVER_START( thedeep )
+static MACHINE_CONFIG_START( thedeep, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on pcb */
@@ -385,7 +385,7 @@ static MACHINE_DRIVER_START( thedeep )
MDRV_SOUND_ADD("ymsnd", YM2203, XTAL_12MHz/4) /* verified on pcb */
MDRV_SOUND_CONFIG(thedeep_ym2203_intf)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/thepit.c b/src/mame/drivers/thepit.c
index f608f07758e..e70478529b0 100644
--- a/src/mame/drivers/thepit.c
+++ b/src/mame/drivers/thepit.c
@@ -648,7 +648,7 @@ static const ay8910_interface ay8910_config =
};
-static MACHINE_DRIVER_START( thepit )
+static MACHINE_CONFIG_START( thepit, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, PIXEL_CLOCK/2) /* 3.072 MHz */
@@ -681,30 +681,28 @@ static MACHINE_DRIVER_START( thepit )
MDRV_SOUND_ADD("ay2", AY8910, PIXEL_CLOCK/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( intrepid )
+static MACHINE_CONFIG_DERIVED( intrepid, thepit )
/* basic machine hardware */
- MDRV_IMPORT_FROM(thepit)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(intrepid_main_map)
/* video hardware */
MDRV_GFXDECODE(intrepid)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( suprmous )
+static MACHINE_CONFIG_DERIVED( suprmous, intrepid )
/* basic machine hardware */
- MDRV_IMPORT_FROM(intrepid)
/* video hardware */
MDRV_PALETTE_INIT(suprmous)
MDRV_GFXDECODE(suprmous)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/thief.c b/src/mame/drivers/thief.c
index 3cdb19738e8..6520152a1bb 100644
--- a/src/mame/drivers/thief.c
+++ b/src/mame/drivers/thief.c
@@ -448,7 +448,7 @@ static const tms9927_interface tms9927_intf =
};
-static MACHINE_DRIVER_START( sharkatt )
+static MACHINE_CONFIG_START( sharkatt, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz? */
@@ -483,10 +483,10 @@ static MACHINE_DRIVER_START( sharkatt )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(sharkatt_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( thief )
+static MACHINE_CONFIG_START( thief, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz? */
@@ -521,10 +521,10 @@ static MACHINE_DRIVER_START( thief )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(thief_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( natodef )
+static MACHINE_CONFIG_START( natodef, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz? */
@@ -559,7 +559,7 @@ static MACHINE_DRIVER_START( natodef )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(natodef_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/**********************************************************/
diff --git a/src/mame/drivers/thoop2.c b/src/mame/drivers/thoop2.c
index a84308c2bed..d44c1dafd69 100644
--- a/src/mame/drivers/thoop2.c
+++ b/src/mame/drivers/thoop2.c
@@ -195,7 +195,7 @@ static INPUT_PORTS_START( thoop2 )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( thoop2 )
+static MACHINE_CONFIG_START( thoop2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz */
@@ -221,7 +221,7 @@ static MACHINE_DRIVER_START( thoop2 )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( thoop2 )
diff --git a/src/mame/drivers/thunderj.c b/src/mame/drivers/thunderj.c
index fc743aaef8e..2d0a2746f7b 100644
--- a/src/mame/drivers/thunderj.c
+++ b/src/mame/drivers/thunderj.c
@@ -283,8 +283,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( thunderj )
- MDRV_DRIVER_DATA(thunderj_state)
+static MACHINE_CONFIG_START( thunderj, thunderj_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -315,8 +314,8 @@ static MACHINE_DRIVER_START( thunderj )
MDRV_VIDEO_UPDATE(thunderj)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_ii_mono)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_ii_mono)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/thunderx.c b/src/mame/drivers/thunderx.c
index e9a109463ca..a44430ef45c 100644
--- a/src/mame/drivers/thunderx.c
+++ b/src/mame/drivers/thunderx.c
@@ -679,10 +679,7 @@ static MACHINE_RESET( thunderx )
MACHINE_RESET_CALL(scontra);
}
-static MACHINE_DRIVER_START( scontra )
-
- /* driver data */
- MDRV_DRIVER_DATA(thunderx_state)
+static MACHINE_CONFIG_START( scontra, thunderx_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI, XTAL_24MHz/8) /* Verified on pcb, CPU is 052001 */
@@ -724,13 +721,10 @@ static MACHINE_DRIVER_START( scontra )
MDRV_SOUND_CONFIG(k007232_config)
MDRV_SOUND_ROUTE(0, "mono", 0.20)
MDRV_SOUND_ROUTE(1, "mono", 0.20)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( thunderx )
- /* driver data */
- MDRV_DRIVER_DATA(thunderx_state)
+static MACHINE_CONFIG_START( thunderx, thunderx_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI, 3000000) /* ? */
@@ -767,7 +761,7 @@ static MACHINE_DRIVER_START( thunderx )
MDRV_SOUND_ADD("ymsnd", YM2151, 3579545)
MDRV_SOUND_ROUTE(0, "mono", 1.0)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/tiamc1.c b/src/mame/drivers/tiamc1.c
index b0885912ada..91b866e58b7 100644
--- a/src/mame/drivers/tiamc1.c
+++ b/src/mame/drivers/tiamc1.c
@@ -218,7 +218,7 @@ static GFXDECODE_START( tiamc1 )
GFXDECODE_END
-static MACHINE_DRIVER_START( tiamc1 )
+static MACHINE_CONFIG_START( tiamc1, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080,16000000/9) /* 16 MHz */
MDRV_CPU_PROGRAM_MAP(tiamc1_map)
@@ -248,7 +248,7 @@ static MACHINE_DRIVER_START( tiamc1 )
MDRV_SOUND_ADD("2x8253", TIAMC1, 16000000/9)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( konek )
diff --git a/src/mame/drivers/tickee.c b/src/mame/drivers/tickee.c
index 906445fba88..6cb63b26a2b 100644
--- a/src/mame/drivers/tickee.c
+++ b/src/mame/drivers/tickee.c
@@ -724,7 +724,7 @@ static const tms34010_config rapidfir_tms_config =
*
*************************************/
-static MACHINE_DRIVER_START( tickee )
+static MACHINE_CONFIG_START( tickee, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, XTAL_40MHz)
@@ -757,19 +757,18 @@ static MACHINE_DRIVER_START( tickee )
MDRV_SOUND_ADD("ym2", YM2149, VIDEO_CLOCK/8)
MDRV_SOUND_CONFIG(ay8910_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ghoshunt )
- MDRV_IMPORT_FROM(tickee)
+static MACHINE_CONFIG_DERIVED( ghoshunt, tickee )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(ghoshunt_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rapidfir )
+static MACHINE_CONFIG_START( rapidfir, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, XTAL_50MHz)
@@ -794,10 +793,10 @@ static MACHINE_DRIVER_START( rapidfir )
MDRV_OKIM6295_ADD("oki", OKI_CLOCK, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mouseatk )
+static MACHINE_CONFIG_START( mouseatk, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, XTAL_40MHz)
@@ -828,7 +827,7 @@ static MACHINE_DRIVER_START( mouseatk )
MDRV_OKIM6295_ADD("oki", OKI_CLOCK, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/tigeroad.c b/src/mame/drivers/tigeroad.c
index 9ab996b3056..19923e37119 100644
--- a/src/mame/drivers/tigeroad.c
+++ b/src/mame/drivers/tigeroad.c
@@ -521,7 +521,7 @@ static const msm5205_interface msm5205_config =
};
-static MACHINE_DRIVER_START( tigeroad )
+static MACHINE_CONFIG_START( tigeroad, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz) /* verified on pcb */
@@ -560,14 +560,13 @@ static MACHINE_DRIVER_START( tigeroad )
MDRV_SOUND_ADD("ym2", YM2203, XTAL_3_579545MHz) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* same as above but with additional Z80 for samples playback */
-static MACHINE_DRIVER_START( toramich )
+static MACHINE_CONFIG_DERIVED( toramich, tigeroad )
/* basic machine hardware */
- MDRV_IMPORT_FROM(tigeroad)
MDRV_CPU_ADD("sample", Z80, 3579545) /* ? */
MDRV_CPU_PROGRAM_MAP(sample_map)
@@ -578,7 +577,7 @@ static MACHINE_DRIVER_START( toramich )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/timelimt.c b/src/mame/drivers/timelimt.c
index df47f6633e8..39a0bb9af4d 100644
--- a/src/mame/drivers/timelimt.c
+++ b/src/mame/drivers/timelimt.c
@@ -241,7 +241,7 @@ static INTERRUPT_GEN( timelimt_irq ) {
/***************************************************************************/
-static MACHINE_DRIVER_START( timelimt )
+static MACHINE_CONFIG_START( timelimt, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5.000 MHz */
@@ -283,16 +283,16 @@ static MACHINE_DRIVER_START( timelimt )
MDRV_SOUND_ADD("ay2", AY8910, 18432000/12)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( progress, timelimt )
-static MACHINE_DRIVER_START( progress )
/* basic machine hardware */
- MDRV_IMPORT_FROM(timelimt)
MDRV_GFXDECODE(progress)
MDRV_PALETTE_LENGTH(96)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/timeplt.c b/src/mame/drivers/timeplt.c
index 22c8e2814b5..7cf707a1265 100644
--- a/src/mame/drivers/timeplt.c
+++ b/src/mame/drivers/timeplt.c
@@ -376,10 +376,7 @@ static MACHINE_RESET( timeplt )
state->nmi_enable = 0;
}
-static MACHINE_DRIVER_START( timeplt )
-
- /* driver data */
- MDRV_DRIVER_DATA(timeplt_state)
+static MACHINE_CONFIG_START( timeplt, timeplt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/3/2) /* not confirmed, but common for Konami games of the era */
@@ -406,12 +403,11 @@ static MACHINE_DRIVER_START( timeplt )
MDRV_VIDEO_UPDATE(timeplt)
/* sound hardware */
- MDRV_IMPORT_FROM(timeplt_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(timeplt_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( psurge )
- MDRV_IMPORT_FROM(timeplt)
+static MACHINE_CONFIG_DERIVED( psurge, timeplt )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
@@ -420,17 +416,16 @@ static MACHINE_DRIVER_START( psurge )
MDRV_MACHINE_START(common)
MDRV_MACHINE_RESET(0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( chkun )
- MDRV_IMPORT_FROM(timeplt)
+static MACHINE_CONFIG_DERIVED( chkun, timeplt )
/* basic machine hardware */
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(chkun_main_map)
MDRV_VIDEO_START(chkun)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
*
diff --git a/src/mame/drivers/timetrv.c b/src/mame/drivers/timetrv.c
index 16ea21a0811..4b6f089062e 100644
--- a/src/mame/drivers/timetrv.c
+++ b/src/mame/drivers/timetrv.c
@@ -125,7 +125,7 @@ static INTERRUPT_GEN( ld_irq )
cpu_set_input_line_and_vector(device,0,HOLD_LINE,0x48/4); //ld irq
}
-static MACHINE_DRIVER_START( timetrv )
+static MACHINE_CONFIG_START( timetrv, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",I80188,20000000) //???
@@ -147,7 +147,7 @@ static MACHINE_DRIVER_START( timetrv )
MDRV_VIDEO_UPDATE(timetrv)
/* sound hardware */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/tmaster.c b/src/mame/drivers/tmaster.c
index 7641b29d447..a265307783a 100644
--- a/src/mame/drivers/tmaster.c
+++ b/src/mame/drivers/tmaster.c
@@ -870,7 +870,7 @@ static const duart68681_config tmaster_duart68681_config =
NULL
};
-static MACHINE_DRIVER_START( tm3k )
+static MACHINE_CONFIG_START( tm3k, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz / 2) /* 12MHz */
MDRV_CPU_PROGRAM_MAP(tmaster_map)
MDRV_CPU_VBLANK_INT_HACK(tm3k_interrupt,2+20) // ??
@@ -898,15 +898,14 @@ static MACHINE_DRIVER_START( tm3k )
MDRV_OKIM6295_ADD("oki", XTAL_32MHz / 16, OKIM6295_PIN7_HIGH) /* 2MHz; clock frequency & pin 7 not verified */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tm )
- MDRV_IMPORT_FROM(tm3k)
+static MACHINE_CONFIG_DERIVED( tm, tm3k )
MDRV_OKIM6295_REPLACE("oki", 1122000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INTERRUPT_GEN( galgames_interrupt )
@@ -937,7 +936,7 @@ static MACHINE_RESET( galgames )
machine->device("maincpu")->reset();
}
-static MACHINE_DRIVER_START( galgames )
+static MACHINE_CONFIG_START( galgames, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz / 2)
MDRV_CPU_PROGRAM_MAP(galgames_map)
MDRV_CPU_VBLANK_INT_HACK(galgames_interrupt, 1+20) // ??
@@ -969,7 +968,7 @@ static MACHINE_DRIVER_START( galgames )
MDRV_OKIM6295_ADD("oki", XTAL_24MHz / 8, OKIM6295_PIN7_LOW) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
Each cartridge contains a PIC, that should provide, among other things, the following header:
@@ -977,10 +976,9 @@ MACHINE_DRIVER_END
4345 5331 3939 3700 0c10 ffb3 3c00 0000 "CES1997"
fffe f2f7 8557 c119 0000 0000 2340 188e
*/
-static MACHINE_DRIVER_START( galgame2 )
- MDRV_IMPORT_FROM(galgames)
+static MACHINE_CONFIG_DERIVED( galgame2, galgames )
// MDRV_CPU_ADD("pic", PIC12C508, XTAL_24MHz / 2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/tmmjprd.c b/src/mame/drivers/tmmjprd.c
index 8211e8f33e5..70e2be1c050 100644
--- a/src/mame/drivers/tmmjprd.c
+++ b/src/mame/drivers/tmmjprd.c
@@ -714,7 +714,7 @@ static INTERRUPT_GEN( tmmjprd_interrupt )
cpu_set_input_line(device, intlevel, HOLD_LINE);
}
-static MACHINE_DRIVER_START( tmmjprd )
+static MACHINE_CONFIG_START( tmmjprd, driver_data_t )
MDRV_CPU_ADD("maincpu",M68EC020,24000000) /* 24 MHz */
MDRV_CPU_PROGRAM_MAP(tmmjprd_map)
MDRV_CPU_VBLANK_INT_HACK(tmmjprd_interrupt,2)
@@ -752,12 +752,11 @@ static MACHINE_DRIVER_START( tmmjprd )
MDRV_VIDEO_START(tmmjprd)
MDRV_VIDEO_UPDATE(tmmjprd)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tmpdoki )
- MDRV_IMPORT_FROM(tmmjprd)
+static MACHINE_CONFIG_DERIVED( tmpdoki, tmmjprd )
MDRV_DEFAULT_LAYOUT(layout_horizont)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tmnt.c b/src/mame/drivers/tmnt.c
index 89c397a3a02..b26f81abef0 100644
--- a/src/mame/drivers/tmnt.c
+++ b/src/mame/drivers/tmnt.c
@@ -2274,10 +2274,7 @@ static MACHINE_RESET( common )
}
-static MACHINE_DRIVER_START( cuebrick )
-
- /* driver data */
- MDRV_DRIVER_DATA(tmnt_state)
+static MACHINE_CONFIG_START( cuebrick, tmnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz */
@@ -2313,13 +2310,10 @@ static MACHINE_DRIVER_START( cuebrick )
MDRV_SOUND_CONFIG(ym2151_interface_cbj)
MDRV_SOUND_ROUTE(0, "mono", 1.0)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mia )
- /* driver data */
- MDRV_DRIVER_DATA(tmnt_state)
+static MACHINE_CONFIG_START( mia, tmnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz/3)
@@ -2361,7 +2355,7 @@ static MACHINE_DRIVER_START( mia )
MDRV_SOUND_CONFIG(k007232_config)
MDRV_SOUND_ROUTE(0, "mono", 0.20)
MDRV_SOUND_ROUTE(1, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_RESET( tmnt )
@@ -2373,10 +2367,7 @@ static MACHINE_RESET( tmnt )
upd7759_reset_w(state->upd, 1);
}
-static MACHINE_DRIVER_START( tmnt )
-
- /* driver data */
- MDRV_DRIVER_DATA(tmnt_state)
+static MACHINE_CONFIG_START( tmnt, tmnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz/3)
@@ -2425,13 +2416,10 @@ static MACHINE_DRIVER_START( tmnt )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(tmnt_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( punkshot )
-
- /* driver data */
- MDRV_DRIVER_DATA(tmnt_state)
+static MACHINE_CONFIG_START( punkshot, tmnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz/2)
@@ -2472,13 +2460,10 @@ static MACHINE_DRIVER_START( punkshot )
MDRV_SOUND_ADD("k053260", K053260, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lgtnfght )
- /* driver data */
- MDRV_DRIVER_DATA(tmnt_state)
+static MACHINE_CONFIG_START( lgtnfght, tmnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz/2)
@@ -2520,13 +2505,10 @@ static MACHINE_DRIVER_START( lgtnfght )
MDRV_SOUND_ADD("k053260", K053260, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.70)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.70)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( blswhstl )
- /* driver data */
- MDRV_DRIVER_DATA(tmnt_state)
+static MACHINE_CONFIG_START( blswhstl, tmnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -2573,7 +2555,7 @@ static MACHINE_DRIVER_START( blswhstl )
MDRV_SOUND_ADD("k053260", K053260, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(0, "rspeaker", 0.50) /* fixed inverted stereo channels */
MDRV_SOUND_ROUTE(1, "lspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2593,10 +2575,7 @@ static GFXDECODE_START( glfgreat )
GFXDECODE_ENTRY( "gfx3", 0, zoomlayout, 0x400, 16 )
GFXDECODE_END
-static MACHINE_DRIVER_START( glfgreat )
-
- /* driver data */
- MDRV_DRIVER_DATA(tmnt_state)
+static MACHINE_CONFIG_START( glfgreat, tmnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz/2) /* Confirmed */
@@ -2637,7 +2616,7 @@ static MACHINE_DRIVER_START( glfgreat )
MDRV_SOUND_ADD("k053260", K053260, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static void sound_nmi( running_device *device )
@@ -2660,10 +2639,7 @@ static MACHINE_START( prmrsocr )
memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x4000);
}
-static MACHINE_DRIVER_START( prmrsocr )
-
- /* driver data */
- MDRV_DRIVER_DATA(tmnt_state)
+static MACHINE_CONFIG_START( prmrsocr, tmnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz/2) /* Confirmed */
@@ -2707,13 +2683,10 @@ static MACHINE_DRIVER_START( prmrsocr )
MDRV_SOUND_CONFIG(k054539_config)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tmnt2 )
- /* driver data */
- MDRV_DRIVER_DATA(tmnt_state)
+static MACHINE_CONFIG_START( tmnt2, tmnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz/2)
@@ -2762,13 +2735,10 @@ static MACHINE_DRIVER_START( tmnt2 )
MDRV_SOUND_ADD("k053260", K053260, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.75)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ssriders )
-
- /* driver data */
- MDRV_DRIVER_DATA(tmnt_state)
+static MACHINE_CONFIG_START( ssriders, tmnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz/2)
@@ -2813,13 +2783,10 @@ static MACHINE_DRIVER_START( ssriders )
MDRV_SOUND_ADD("k053260", K053260, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.70)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.70)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sunsetbl )
- /* driver data */
- MDRV_DRIVER_DATA(tmnt_state)
+static MACHINE_CONFIG_START( sunsetbl, tmnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
@@ -2855,12 +2822,9 @@ static MACHINE_DRIVER_START( sunsetbl )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( thndrx2 )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(tmnt_state)
+static MACHINE_CONFIG_START( thndrx2, tmnt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz */
@@ -2905,7 +2869,7 @@ static MACHINE_DRIVER_START( thndrx2 )
MDRV_SOUND_ADD("k053260", K053260, XTAL_3_579545MHz)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.75)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tnzs.c b/src/mame/drivers/tnzs.c
index 3527ca0e15c..d1a44ba3bee 100644
--- a/src/mame/drivers/tnzs.c
+++ b/src/mame/drivers/tnzs.c
@@ -1607,10 +1607,7 @@ static const samples_interface tnzs_samples_interface =
kageki_init_samples
};
-static MACHINE_DRIVER_START( arknoid2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(tnzs_state)
+static MACHINE_CONFIG_START( arknoid2, tnzs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on pcb */
@@ -1647,13 +1644,10 @@ static MACHINE_DRIVER_START( arknoid2 )
MDRV_SOUND_ADD("ymsnd", YM2203, XTAL_12MHz/4) /* verified on pcb */
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( drtoppel )
- /* driver data */
- MDRV_DRIVER_DATA(tnzs_state)
+static MACHINE_CONFIG_START( drtoppel, tnzs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,XTAL_12MHz/2) /* 6.0 MHz ??? - Main board Crystal is 12MHz */
@@ -1690,13 +1684,10 @@ static MACHINE_DRIVER_START( drtoppel )
MDRV_SOUND_ADD("ymsnd", YM2203, XTAL_12MHz/4)
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tnzs )
-
- /* driver data */
- MDRV_DRIVER_DATA(tnzs_state)
+static MACHINE_CONFIG_START( tnzs, tnzs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,XTAL_12MHz/2) /* 6.0 MHz ??? - Main board Crystal is 12MHz */
@@ -1735,13 +1726,10 @@ static MACHINE_DRIVER_START( tnzs )
MDRV_SOUND_ADD("ymsnd", YM2203, XTAL_12MHz/4)
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( insectx )
- /* driver data */
- MDRV_DRIVER_DATA(tnzs_state)
+static MACHINE_CONFIG_START( insectx, tnzs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on pcb */
@@ -1777,13 +1765,10 @@ static MACHINE_DRIVER_START( insectx )
MDRV_SOUND_ADD("ymsnd", YM2203, XTAL_12MHz/4) /* verified on pcb */
MDRV_SOUND_CONFIG(ym2203_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kageki )
-
- /* driver data */
- MDRV_DRIVER_DATA(tnzs_state)
+static MACHINE_CONFIG_START( kageki, tnzs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on pcb */
@@ -1826,13 +1811,10 @@ static MACHINE_DRIVER_START( kageki )
MDRV_SOUND_ADD("samples", SAMPLES, 0)
MDRV_SOUND_CONFIG(tnzs_samples_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tnzsb )
- /* driver data */
- MDRV_DRIVER_DATA(tnzs_state)
+static MACHINE_CONFIG_START( tnzsb, tnzs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on pcb */
@@ -1875,12 +1857,10 @@ static MACHINE_DRIVER_START( tnzsb )
MDRV_SOUND_ROUTE(1, "mono", 1.0)
MDRV_SOUND_ROUTE(2, "mono", 1.0)
MDRV_SOUND_ROUTE(3, "mono", 2.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kabukiz )
-
- MDRV_IMPORT_FROM(tnzsb)
+static MACHINE_CONFIG_DERIVED( kabukiz, tnzsb )
/* basic machine hardware */
MDRV_CPU_MODIFY("sub")
@@ -1898,13 +1878,10 @@ static MACHINE_DRIVER_START( kabukiz )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jpopnics )
- /* driver data */
- MDRV_DRIVER_DATA(tnzs_state)
+static MACHINE_CONFIG_START( jpopnics, tnzs_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,XTAL_12MHz/2) /* Not verified - Main board Crystal is 12MHz */
@@ -1939,7 +1916,7 @@ static MACHINE_DRIVER_START( jpopnics )
MDRV_SOUND_ADD("ymsnd", YM2151, XTAL_12MHz/4) /* Not verified - Main board Crystal is 12MHz */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/toaplan1.c b/src/mame/drivers/toaplan1.c
index bb7439c9c27..fa57a229975 100644
--- a/src/mame/drivers/toaplan1.c
+++ b/src/mame/drivers/toaplan1.c
@@ -1510,9 +1510,7 @@ static const ym3812_interface ym3812_config =
-static MACHINE_DRIVER_START( rallybik )
-
- MDRV_DRIVER_DATA( toaplan1_state )
+static MACHINE_CONFIG_START( rallybik, toaplan1_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz)
@@ -1549,12 +1547,10 @@ static MACHINE_DRIVER_START( rallybik )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_28MHz/8)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( truxton )
- MDRV_DRIVER_DATA( toaplan1_state )
+static MACHINE_CONFIG_START( truxton, toaplan1_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz)
@@ -1591,12 +1587,10 @@ static MACHINE_DRIVER_START( truxton )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_28MHz/8)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( hellfire )
-
- MDRV_DRIVER_DATA( toaplan1_state )
+static MACHINE_CONFIG_START( hellfire, toaplan1_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz)
@@ -1633,12 +1627,10 @@ static MACHINE_DRIVER_START( hellfire )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_28MHz/8)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( zerowing )
- MDRV_DRIVER_DATA( toaplan1_state )
+static MACHINE_CONFIG_START( zerowing, toaplan1_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz)
@@ -1675,12 +1667,10 @@ static MACHINE_DRIVER_START( zerowing )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_28MHz/8)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( demonwld )
-
- MDRV_DRIVER_DATA( toaplan1_state )
+static MACHINE_CONFIG_START( demonwld, toaplan1_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz)
@@ -1721,12 +1711,10 @@ static MACHINE_DRIVER_START( demonwld )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_28MHz/8)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( samesame )
- MDRV_DRIVER_DATA( toaplan1_state )
+static MACHINE_CONFIG_START( samesame, toaplan1_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz)
@@ -1761,12 +1749,10 @@ static MACHINE_DRIVER_START( samesame )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_28MHz/8)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( outzone )
-
- MDRV_DRIVER_DATA( toaplan1_state )
+static MACHINE_CONFIG_START( outzone, toaplan1_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz)
@@ -1803,12 +1789,10 @@ static MACHINE_DRIVER_START( outzone )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_28MHz/8)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vimana )
- MDRV_DRIVER_DATA( toaplan1_state )
+static MACHINE_CONFIG_START( vimana, toaplan1_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz) /* verified on pcb */
@@ -1843,7 +1827,7 @@ static MACHINE_DRIVER_START( vimana )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_28MHz/8) /* verified on pcb */
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/toaplan2.c b/src/mame/drivers/toaplan2.c
index 1476b43267c..5d3b50aad22 100644
--- a/src/mame/drivers/toaplan2.c
+++ b/src/mame/drivers/toaplan2.c
@@ -3766,10 +3766,7 @@ static const ymz280b_interface ymz280b_config =
};
-static MACHINE_DRIVER_START( tekipaki )
-
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( tekipaki, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz) /* 10MHz Oscillator */
@@ -3809,13 +3806,10 @@ static MACHINE_DRIVER_START( tekipaki )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_27MHz/8)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( ghox )
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( ghox, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz) /* verified on pcb */
@@ -3852,7 +3846,7 @@ static MACHINE_DRIVER_START( ghox )
MDRV_SOUND_ADD("ymsnd", YM2151, XTAL_27MHz/8) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* x = modified to match batsugun 'unencrypted' code */
@@ -3880,10 +3874,7 @@ static const UINT8 ts002mach_decryption_table[256] = {
static const nec_config ts002mach_config ={ ts002mach_decryption_table, };
-static MACHINE_DRIVER_START( dogyuun )
-
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( dogyuun, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_25MHz/2) /* verified on pcb */
@@ -3933,7 +3924,7 @@ static MACHINE_DRIVER_START( dogyuun )
MDRV_OKIM6295_ADD("oki", XTAL_25MHz/24, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* x = modified to match batsugun 'unencrypted' code - '?' likewise, but not so sure about them
'!' = code stops being the same as batsugun at this point, might be wrong
@@ -3984,10 +3975,7 @@ static MACHINE_RESET(kbash)
-static MACHINE_DRIVER_START( kbash )
-
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( kbash, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz) /* 16MHz Oscillator */
@@ -4029,13 +4017,10 @@ static MACHINE_DRIVER_START( kbash )
MDRV_OKIM6295_ADD("oki", XTAL_32MHz/32, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kbash2 )
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( kbash2, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz) /* 16MHz Oscillator */
@@ -4070,13 +4055,10 @@ static MACHINE_DRIVER_START( kbash2 )
MDRV_OKIM6295_ADD("oki2", XTAL_16MHz/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( truxton2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( truxton2, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz) /* verified on pcb */
@@ -4111,13 +4093,10 @@ static MACHINE_DRIVER_START( truxton2 )
MDRV_OKIM6295_ADD("oki", XTAL_16MHz/4, OKIM6295_PIN7_LOW) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pipibibs )
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( pipibibs, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz) /* verified on pcb */
@@ -4155,13 +4134,10 @@ static MACHINE_DRIVER_START( pipibibs )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_27MHz/8) /* verified on pcb */
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( whoopee )
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( whoopee, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz) /* 10MHz Oscillator */
@@ -4199,13 +4175,10 @@ static MACHINE_DRIVER_START( whoopee )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_27MHz/8)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pipibibi_bootleg )
-
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( pipibibi_bootleg, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz) /* 10MHz Oscillator */
@@ -4243,7 +4216,7 @@ static MACHINE_DRIVER_START( pipibibi_bootleg )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_27MHz/8)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* x = modified to match batsugun 'unencrypted' code - '?' likewise, but not so sure about them */
/* this one seems more different to the other tables */
@@ -4272,10 +4245,7 @@ static const UINT8 ts001turbo_decryption_table[256] = {
static const nec_config ts001turbo_config ={ ts001turbo_decryption_table, };
-static MACHINE_DRIVER_START( fixeight )
-
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( fixeight, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz) /* verified on pcb */
@@ -4318,13 +4288,10 @@ static MACHINE_DRIVER_START( fixeight )
MDRV_OKIM6295_ADD("oki", XTAL_16MHz/16, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fixeighb )
-
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( fixeighb, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz) /* 10MHz Oscillator */
@@ -4356,7 +4323,7 @@ static MACHINE_DRIVER_START( fixeighb )
MDRV_OKIM6295_ADD("oki", XTAL_14MHz/16, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* according to the comments this chip has the same markings as the Batsugun chip,
maybe they double map some opcodes on it and recycled the chips using unencrypted ones
@@ -4390,10 +4357,7 @@ static const UINT8 ts007spy_vfive_decryption_table[256] = {
static const nec_config ts007spy_vfive_config ={ ts007spy_vfive_decryption_table, };
-static MACHINE_DRIVER_START( vfive )
-
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( vfive, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz/2) /* verified on pcb */
@@ -4429,7 +4393,7 @@ static MACHINE_DRIVER_START( vfive )
MDRV_SOUND_ADD("ymsnd", YM2151, XTAL_27MHz/8) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_RESET(batsugun)
{
@@ -4485,10 +4449,7 @@ static const nmk112_interface batrider_nmk112_intf =
"oki1", "oki2", 0
};
-static MACHINE_DRIVER_START( batsugun )
-
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( batsugun, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz/2) /* 16MHz , 32MHz Oscillator */
@@ -4541,13 +4502,10 @@ static MACHINE_DRIVER_START( batsugun )
MDRV_OKIM6295_ADD("oki", XTAL_32MHz/8, OKIM6295_PIN7_LOW)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( snowbro2 )
-
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( snowbro2, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
@@ -4582,13 +4540,10 @@ static MACHINE_DRIVER_START( snowbro2 )
MDRV_OKIM6295_ADD("oki", XTAL_27MHz/10, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mahoudai )
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( mahoudai, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz/2) /* 16MHz , 32MHz Oscillator */
@@ -4628,13 +4583,10 @@ static MACHINE_DRIVER_START( mahoudai )
MDRV_OKIM6295_ADD("oki", XTAL_32MHz/32, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( shippumd )
-
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( shippumd, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz/2) /* 16MHz , 32MHz Oscillator */
@@ -4674,13 +4626,10 @@ static MACHINE_DRIVER_START( shippumd )
MDRV_OKIM6295_ADD("oki", XTAL_32MHz/32, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bgaregga )
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( bgaregga, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz/2) /* 16MHz , 32MHz Oscillator */
@@ -4722,13 +4671,10 @@ static MACHINE_DRIVER_START( bgaregga )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_NMK112_ADD("nmk112", bgaregga_nmk112_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( batrider )
-
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( batrider, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz/2) /* 16MHz , 32MHz Oscillator */
@@ -4773,12 +4719,9 @@ static MACHINE_DRIVER_START( batrider )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_NMK112_ADD("nmk112", batrider_nmk112_intf)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( bbakraid )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(toaplan2_state)
+static MACHINE_CONFIG_START( bbakraid, toaplan2_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_32MHz/2) /* 16MHz , 32MHz Oscillator */
@@ -4819,15 +4762,14 @@ static MACHINE_DRIVER_START( bbakraid )
MDRV_SOUND_CONFIG(ymz280b_config)
MDRV_SOUND_ROUTE(0, "mono", 1.0)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bbakradu )
- MDRV_IMPORT_FROM(bbakraid)
+static MACHINE_CONFIG_DERIVED( bbakradu, bbakraid )
MDRV_DEVICE_REMOVE("eeprom")
MDRV_EEPROM_ADD("eeprom", bbakraid_93C66_intf)
MDRV_EEPROM_DATA(bbakraid_unlim_default, 512)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/toki.c b/src/mame/drivers/toki.c
index 05a7a279877..657a6008e97 100644
--- a/src/mame/drivers/toki.c
+++ b/src/mame/drivers/toki.c
@@ -427,7 +427,7 @@ static const msm5205_interface msm5205_config =
};
-static MACHINE_DRIVER_START( toki ) /* KOYO 20.000MHz near the cpu */
+static MACHINE_CONFIG_START( toki, driver_data_t ) /* KOYO 20.000MHz near the cpu */
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,XTAL_20MHz /2) /* verified on pcb */
@@ -456,10 +456,10 @@ static MACHINE_DRIVER_START( toki ) /* KOYO 20.000MHz near the cpu */
/* sound hardware */
SEIBU_SOUND_SYSTEM_YM3812_RAIDEN_INTERFACE(XTAL_14_31818MHz/4,XTAL_12MHz/12) /* verifed on pcb */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tokib )
+static MACHINE_CONFIG_START( tokib, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 10MHz causes bad slowdowns with monkey machine rd1 */
@@ -494,7 +494,7 @@ static MACHINE_DRIVER_START( tokib )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tokyocop.c b/src/mame/drivers/tokyocop.c
index 38b6111bc56..cd4d8de53e6 100644
--- a/src/mame/drivers/tokyocop.c
+++ b/src/mame/drivers/tokyocop.c
@@ -36,7 +36,7 @@ static INPUT_PORTS_START( tokyocop )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( tokyocop )
+static MACHINE_CONFIG_START( tokyocop, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PENTIUM, 2000000000) /* Pentium4? */
MDRV_CPU_PROGRAM_MAP(tokyocop_map)
@@ -53,7 +53,7 @@ static MACHINE_DRIVER_START( tokyocop )
MDRV_VIDEO_START(tokyocop)
MDRV_VIDEO_UPDATE(tokyocop)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START(tokyocop)
diff --git a/src/mame/drivers/tomcat.c b/src/mame/drivers/tomcat.c
index 9af922af80a..2bc1968061c 100644
--- a/src/mame/drivers/tomcat.c
+++ b/src/mame/drivers/tomcat.c
@@ -374,7 +374,7 @@ static const riot6532_interface tomcat_riot6532_intf =
DEVCB_NULL // connected to IRQ line of 6502
};
-static MACHINE_DRIVER_START(tomcat)
+static MACHINE_CONFIG_START( tomcat, driver_data_t )
MDRV_CPU_ADD("maincpu", M68010, XTAL_12MHz / 2)
MDRV_CPU_PROGRAM_MAP(tomcat_map)
MDRV_CPU_VBLANK_INT_HACK(irq1_line_assert, 5)
@@ -421,6 +421,6 @@ static MACHINE_DRIVER_START(tomcat)
MDRV_SOUND_ADD("ymsnd", YM2151, XTAL_14_31818MHz / 4)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.60)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
GAME( 1985, tomcat, 0, tomcat, tomcat, 0, ROT0, "Atari", "TomCat (prototype)", GAME_SUPPORTS_SAVE )
diff --git a/src/mame/drivers/toobin.c b/src/mame/drivers/toobin.c
index bb4aa5c788f..a4828654379 100644
--- a/src/mame/drivers/toobin.c
+++ b/src/mame/drivers/toobin.c
@@ -223,8 +223,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( toobin )
- MDRV_DRIVER_DATA(toobin_state)
+static MACHINE_CONFIG_START( toobin, toobin_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68010, MASTER_CLOCK/4)
@@ -249,8 +248,8 @@ static MACHINE_DRIVER_START( toobin )
MDRV_VIDEO_UPDATE(toobin)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_i_stereo_pokey)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_i_stereo_pokey)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/topspeed.c b/src/mame/drivers/topspeed.c
index 8481b142860..ca70419d1e0 100644
--- a/src/mame/drivers/topspeed.c
+++ b/src/mame/drivers/topspeed.c
@@ -693,10 +693,7 @@ static const tc0140syt_interface topspeed_tc0140syt_intf =
"maincpu", "audiocpu"
};
-static MACHINE_DRIVER_START( topspeed )
-
- /* driver data */
- MDRV_DRIVER_DATA(topspeed_state)
+static MACHINE_CONFIG_START( topspeed, topspeed_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ??? */
@@ -744,7 +741,7 @@ static MACHINE_DRIVER_START( topspeed )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
MDRV_TC0140SYT_ADD("tc0140syt", topspeed_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/toratora.c b/src/mame/drivers/toratora.c
index a6ad18f88bf..6a3361f1a5b 100644
--- a/src/mame/drivers/toratora.c
+++ b/src/mame/drivers/toratora.c
@@ -396,10 +396,7 @@ static MACHINE_RESET( toratora )
state->clear_tv = 0;
}
-static MACHINE_DRIVER_START( toratora )
-
- /* driver data */
- MDRV_DRIVER_DATA(toratora_state)
+static MACHINE_CONFIG_START( toratora, toratora_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800,500000) /* ?????? game speed is entirely controlled by this */
@@ -434,7 +431,7 @@ static MACHINE_DRIVER_START( toratora )
MDRV_SOUND_CONFIG(sn76477_intf)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tourtabl.c b/src/mame/drivers/tourtabl.c
index dddd2c477c6..58aee67a6af 100644
--- a/src/mame/drivers/tourtabl.c
+++ b/src/mame/drivers/tourtabl.c
@@ -165,7 +165,7 @@ static INPUT_PORTS_START( tourtabl )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( tourtabl )
+static MACHINE_CONFIG_START( tourtabl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK / 3) /* actually M6507 */
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -191,7 +191,7 @@ static MACHINE_DRIVER_START( tourtabl )
MDRV_SOUND_ADD("tia", TIA, MASTER_CLOCK/114)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( tourtabl )
diff --git a/src/mame/drivers/toypop.c b/src/mame/drivers/toypop.c
index a4b17f02264..5a19670a6c3 100644
--- a/src/mame/drivers/toypop.c
+++ b/src/mame/drivers/toypop.c
@@ -543,9 +543,7 @@ static const namcoio_interface intf2 =
};
-static MACHINE_DRIVER_START( liblrabl )
-
- MDRV_DRIVER_DATA(toypop_state)
+static MACHINE_CONFIG_START( liblrabl, toypop_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 1536000) /* 1.536 MHz (measured on Libble Rabble board) */
@@ -589,18 +587,17 @@ static MACHINE_DRIVER_START( liblrabl )
MDRV_SOUND_ADD("namco", NAMCO_15XX, 24000)
MDRV_SOUND_CONFIG(namco_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( toypop )
+static MACHINE_CONFIG_DERIVED( toypop, liblrabl )
/* basic machine hardware */
- MDRV_IMPORT_FROM(liblrabl)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(toypop_map)
MDRV_DEVICE_REMOVE("58xx")
MDRV_NAMCO58XX_ADD("58xx", intf0_coin)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tp84.c b/src/mame/drivers/tp84.c
index 538f0f55d32..3bc27ae6443 100644
--- a/src/mame/drivers/tp84.c
+++ b/src/mame/drivers/tp84.c
@@ -291,7 +291,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( tp84 )
+static MACHINE_CONFIG_START( tp84, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("cpu1",M6809, XTAL_18_432MHz/12) /* verified on pcb */
@@ -343,13 +343,12 @@ static MACHINE_DRIVER_START( tp84 )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MDRV_SOUND_ADD("filter3", FILTER_RC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tp84b )
- MDRV_IMPORT_FROM(tp84)
+static MACHINE_CONFIG_DERIVED( tp84b, tp84 )
MDRV_CPU_MODIFY("cpu1")
MDRV_CPU_PROGRAM_MAP(tp84b_cpu1_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/trackfld.c b/src/mame/drivers/trackfld.c
index 03842fa8d43..35a9774e883 100644
--- a/src/mame/drivers/trackfld.c
+++ b/src/mame/drivers/trackfld.c
@@ -993,10 +993,7 @@ static MACHINE_RESET( hyprolyb )
state->hyprolyb_vck_ready = 0;
}
-static MACHINE_DRIVER_START( trackfld )
-
- /* driver data */
- MDRV_DRIVER_DATA(trackfld_state)
+static MACHINE_CONFIG_START( trackfld, trackfld_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/6/2) /* a guess for now */
@@ -1036,13 +1033,10 @@ static MACHINE_DRIVER_START( trackfld )
MDRV_SOUND_ADD("vlm", VLM5030, VLM_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( yieartf )
- /* driver data */
- MDRV_DRIVER_DATA(trackfld_state)
+static MACHINE_CONFIG_START( yieartf, trackfld_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/6/2) /* a guess for now */
@@ -1083,12 +1077,11 @@ static MACHINE_DRIVER_START( yieartf )
MDRV_SOUND_ADD("vlm", VLM5030, VLM_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* same as the original, but uses ADPCM instead of VLM5030 */
/* also different memory handlers do handle that */
-static MACHINE_DRIVER_START( hyprolyb )
- MDRV_IMPORT_FROM(trackfld)
+static MACHINE_CONFIG_DERIVED( hyprolyb, trackfld )
MDRV_CPU_MODIFY("audiocpu")
MDRV_CPU_PROGRAM_MAP(hyprolyb_sound_map)
@@ -1105,42 +1098,38 @@ static MACHINE_DRIVER_START( hyprolyb )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(hyprolyb_msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( atlantol )
- MDRV_IMPORT_FROM(hyprolyb)
+static MACHINE_CONFIG_DERIVED( atlantol, hyprolyb )
MDRV_VIDEO_START(atlantol)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mastkin )
+static MACHINE_CONFIG_DERIVED( mastkin, trackfld )
/* basic machine hardware */
- MDRV_IMPORT_FROM(trackfld)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(mastkin_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wizzquiz )
+static MACHINE_CONFIG_DERIVED( wizzquiz, trackfld )
/* basic machine hardware */
- MDRV_IMPORT_FROM(trackfld)
// right cpu?
MDRV_CPU_REPLACE("maincpu",M6800,2048000) /* 1.400 MHz ??? */
MDRV_CPU_PROGRAM_MAP(wizzquiz_map)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( reaktor )
+static MACHINE_CONFIG_DERIVED( reaktor, trackfld )
/* basic machine hardware */
- MDRV_IMPORT_FROM(trackfld)
MDRV_CPU_REPLACE("maincpu",Z80,MASTER_CLOCK/6)
MDRV_CPU_PROGRAM_MAP(reaktor_map)
MDRV_CPU_IO_MAP(reaktor_io_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/travrusa.c b/src/mame/drivers/travrusa.c
index eef27dd295e..e2860643cd2 100644
--- a/src/mame/drivers/travrusa.c
+++ b/src/mame/drivers/travrusa.c
@@ -296,10 +296,7 @@ static MACHINE_RESET( travrusa )
state->scrollx[1] = 0;
}
-static MACHINE_DRIVER_START( travrusa )
-
- /* driver data */
- MDRV_DRIVER_DATA(irem_z80_state)
+static MACHINE_CONFIG_START( travrusa, irem_z80_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz (?) */
@@ -327,17 +324,15 @@ static MACHINE_DRIVER_START( travrusa )
MDRV_VIDEO_UPDATE(travrusa)
/* sound hardware */
- MDRV_IMPORT_FROM(m52_sound_c_audio)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( shtrider )
+ MDRV_FRAGMENT_ADD(m52_sound_c_audio)
+MACHINE_CONFIG_END
- MDRV_IMPORT_FROM(travrusa)
+static MACHINE_CONFIG_DERIVED( shtrider, travrusa )
/* video hardware */
MDRV_GFXDECODE(shtrider)
MDRV_PALETTE_INIT(shtrider)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/triforce.c b/src/mame/drivers/triforce.c
index bc2d00fd4b5..371487d7b91 100644
--- a/src/mame/drivers/triforce.c
+++ b/src/mame/drivers/triforce.c
@@ -418,7 +418,7 @@ static VIDEO_UPDATE(triforce)
static INPUT_PORTS_START( triforce )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( triforce_base )
+static MACHINE_CONFIG_START( triforce_base, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000) /* Wrong! */
@@ -437,12 +437,11 @@ static MACHINE_DRIVER_START( triforce_base )
MDRV_VIDEO_START(triforce)
MDRV_VIDEO_UPDATE(triforce)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( triforcegd )
- MDRV_IMPORT_FROM(triforce_base)
+static MACHINE_CONFIG_DERIVED( triforcegd, triforce_base )
MDRV_NAOMI_DIMM_BOARD_ADD("rom_board", "gdrom", "user1", "picreturn")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
#define ROM_LOAD16_WORD_SWAP_BIOS(bios,name,offset,length,hash) \
ROMX_LOAD(name, offset, length, hash, ROM_GROUPWORD | ROM_BIOS(bios+1)) /* Note '+1' */
diff --git a/src/mame/drivers/triplhnt.c b/src/mame/drivers/triplhnt.c
index 79f44fd3176..3ee66d25285 100644
--- a/src/mame/drivers/triplhnt.c
+++ b/src/mame/drivers/triplhnt.c
@@ -309,7 +309,7 @@ static PALETTE_INIT( triplhnt )
}
-static MACHINE_DRIVER_START( triplhnt )
+static MACHINE_CONFIG_START( triplhnt, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, 800000)
@@ -341,7 +341,7 @@ static MACHINE_DRIVER_START( triplhnt )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(triplhnt)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( triplhnt )
diff --git a/src/mame/drivers/truco.c b/src/mame/drivers/truco.c
index 541f3da9bcc..f7c0647e827 100644
--- a/src/mame/drivers/truco.c
+++ b/src/mame/drivers/truco.c
@@ -135,7 +135,7 @@ static INTERRUPT_GEN( truco_interrupt )
}
-static MACHINE_DRIVER_START( truco )
+static MACHINE_CONFIG_START( truco, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 750000) /* ?? guess */
@@ -163,7 +163,7 @@ static MACHINE_DRIVER_START( truco )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/trucocl.c b/src/mame/drivers/trucocl.c
index 79f1a9a3b12..a00079df2e5 100644
--- a/src/mame/drivers/trucocl.c
+++ b/src/mame/drivers/trucocl.c
@@ -137,7 +137,7 @@ static INTERRUPT_GEN( trucocl_interrupt )
irq0_line_hold(device);
}
-static MACHINE_DRIVER_START( trucocl )
+static MACHINE_CONFIG_START( trucocl, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6)
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -163,7 +163,7 @@ static MACHINE_DRIVER_START( trucocl )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/trvmadns.c b/src/mame/drivers/trvmadns.c
index 7e4ef488841..b06c6ecf132 100644
--- a/src/mame/drivers/trvmadns.c
+++ b/src/mame/drivers/trvmadns.c
@@ -322,7 +322,7 @@ static MACHINE_RESET( trvmadns )
old_data = -1;
}
-static MACHINE_DRIVER_START( trvmadns )
+static MACHINE_CONFIG_START( trvmadns, driver_data_t )
MDRV_CPU_ADD("maincpu", Z80,10000000/2) // ?
MDRV_CPU_PROGRAM_MAP(cpu_map)
MDRV_CPU_IO_MAP(io_map)
@@ -349,7 +349,7 @@ static MACHINE_DRIVER_START( trvmadns )
MDRV_SOUND_ADD("aysnd", AY8910, 10000000/2/4) //?
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( trvmadns )
diff --git a/src/mame/drivers/trvquest.c b/src/mame/drivers/trvquest.c
index 50ae77db259..8b9b7277a9e 100644
--- a/src/mame/drivers/trvquest.c
+++ b/src/mame/drivers/trvquest.c
@@ -215,9 +215,7 @@ static INTERRUPT_GEN( trvquest_interrupt )
via_ca1_w(state->via_2, 0);
}
-static MACHINE_DRIVER_START( trvquest )
-
- MDRV_DRIVER_DATA(gameplan_state)
+static MACHINE_CONFIG_START( trvquest, gameplan_state )
MDRV_CPU_ADD("maincpu", M6809,XTAL_6MHz/4)
MDRV_CPU_PROGRAM_MAP(cpu_map)
@@ -228,7 +226,7 @@ static MACHINE_DRIVER_START( trvquest )
MDRV_MACHINE_RESET(trvquest)
/* video hardware */
- MDRV_IMPORT_FROM(trvquest_video)
+ MDRV_FRAGMENT_ADD(trvquest_video)
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -243,7 +241,7 @@ static MACHINE_DRIVER_START( trvquest )
MDRV_VIA6522_ADD("via6522_0", 0, trvquest_via_0_interface)
MDRV_VIA6522_ADD("via6522_1", 0, via_1_interface)
MDRV_VIA6522_ADD("via6522_2", 0, via_2_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( trvquest )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/tryout.c b/src/mame/drivers/tryout.c
index 5c5642f08c8..15431efe336 100644
--- a/src/mame/drivers/tryout.c
+++ b/src/mame/drivers/tryout.c
@@ -196,7 +196,7 @@ static GFXDECODE_START( tryout )
GFXDECODE_ENTRY( NULL, 0, vramlayout, 0, 4 )
GFXDECODE_END
-static MACHINE_DRIVER_START( tryout )
+static MACHINE_CONFIG_START( tryout, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 2000000) /* ? */
MDRV_CPU_PROGRAM_MAP(main_cpu)
@@ -225,7 +225,7 @@ static MACHINE_DRIVER_START( tryout )
MDRV_SOUND_ADD("ymsnd", YM2203, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( tryout )
ROM_REGION( 0x14000, "maincpu", 0 )
diff --git a/src/mame/drivers/tsamurai.c b/src/mame/drivers/tsamurai.c
index 20e5cea2d4b..8831087b848 100644
--- a/src/mame/drivers/tsamurai.c
+++ b/src/mame/drivers/tsamurai.c
@@ -661,7 +661,7 @@ GFXDECODE_END
/*******************************************************************************/
-static MACHINE_DRIVER_START( tsamurai )
+static MACHINE_CONFIG_START( tsamurai, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000)
@@ -701,10 +701,10 @@ static MACHINE_DRIVER_START( tsamurai )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( m660 )
+static MACHINE_CONFIG_START( m660, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000)
@@ -749,10 +749,10 @@ static MACHINE_DRIVER_START( m660 )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vsgongf )
+static MACHINE_CONFIG_START( vsgongf, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000)
@@ -787,7 +787,7 @@ static MACHINE_DRIVER_START( vsgongf )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************************************/
diff --git a/src/mame/drivers/ttchamp.c b/src/mame/drivers/ttchamp.c
index f3ec70b9281..907cf224036 100644
--- a/src/mame/drivers/ttchamp.c
+++ b/src/mame/drivers/ttchamp.c
@@ -222,7 +222,7 @@ static INTERRUPT_GEN( ttchamp_irq ) /* right? */
cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
}
-static MACHINE_DRIVER_START( ttchamp )
+static MACHINE_CONFIG_START( ttchamp, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, 8000000)
MDRV_CPU_PROGRAM_MAP(ttchamp_map)
@@ -241,7 +241,7 @@ static MACHINE_DRIVER_START( ttchamp )
MDRV_VIDEO_START(ttchamp)
MDRV_VIDEO_UPDATE(ttchamp)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ttchamp )
diff --git a/src/mame/drivers/tubep.c b/src/mame/drivers/tubep.c
index 9c057ab8c05..775a23c7782 100644
--- a/src/mame/drivers/tubep.c
+++ b/src/mame/drivers/tubep.c
@@ -892,7 +892,7 @@ static const msm5205_interface msm5205_config =
*
*************************************/
-static MACHINE_DRIVER_START( tubep )
+static MACHINE_CONFIG_START( tubep, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,16000000 / 4) /* 4 MHz */
@@ -943,19 +943,18 @@ static MACHINE_DRIVER_START( tubep )
MDRV_SOUND_ADD("ay3", AY8910, 19968000 / 8 / 2)
MDRV_SOUND_CONFIG(ay8910_interface_3)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tubepb )
- MDRV_IMPORT_FROM( tubep )
+static MACHINE_CONFIG_DERIVED( tubepb, tubep )
MDRV_CPU_REPLACE("mcu", M6802,6000000) /* ? MHz Xtal */
MDRV_CPU_PROGRAM_MAP(nsc_map)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( rjammer )
+static MACHINE_CONFIG_START( rjammer, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,16000000 / 4) /* 4 MHz */
@@ -1009,7 +1008,7 @@ static MACHINE_DRIVER_START( rjammer )
MDRV_SOUND_ADD("msm", MSM5205, 384000)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tugboat.c b/src/mame/drivers/tugboat.c
index 0acc9d057cd..61834094545 100644
--- a/src/mame/drivers/tugboat.c
+++ b/src/mame/drivers/tugboat.c
@@ -313,7 +313,7 @@ static GFXDECODE_START( tugboat )
GFXDECODE_END
-static MACHINE_DRIVER_START( tugboat )
+static MACHINE_CONFIG_START( tugboat, driver_data_t )
MDRV_CPU_ADD("maincpu", M6502, 2000000) /* 2 MHz ???? */
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
@@ -340,7 +340,7 @@ static MACHINE_DRIVER_START( tugboat )
MDRV_SOUND_ADD("aysnd", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( tugboat )
diff --git a/src/mame/drivers/tumbleb.c b/src/mame/drivers/tumbleb.c
index cf0b0945fb9..e2e1b42c1e4 100644
--- a/src/mame/drivers/tumbleb.c
+++ b/src/mame/drivers/tumbleb.c
@@ -2012,10 +2012,7 @@ static MACHINE_RESET( tumbleb )
memset(state->control_0, 0, ARRAY_LENGTH(state->control_0));
}
-static MACHINE_DRIVER_START( tumblepb )
-
- /* driver data */
- MDRV_DRIVER_DATA(tumbleb_state)
+static MACHINE_CONFIG_START( tumblepb, tumbleb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -2044,13 +2041,10 @@ static MACHINE_DRIVER_START( tumblepb )
MDRV_OKIM6295_ADD("oki", 8000000/10, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tumbleb2 )
- /* driver data */
- MDRV_DRIVER_DATA(tumbleb_state)
+static MACHINE_CONFIG_START( tumbleb2, tumbleb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -2079,12 +2073,9 @@ static MACHINE_DRIVER_START( tumbleb2 )
MDRV_OKIM6295_ADD("oki", 8000000/10, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jumpkids )
-
- /* driver data */
- MDRV_DRIVER_DATA(tumbleb_state)
+static MACHINE_CONFIG_START( jumpkids, tumbleb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -2117,12 +2108,9 @@ static MACHINE_DRIVER_START( jumpkids )
MDRV_OKIM6295_ADD("oki", 8000000/8, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( fncywld )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(tumbleb_state)
+static MACHINE_CONFIG_START( fncywld, tumbleb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -2156,7 +2144,7 @@ static MACHINE_DRIVER_START( fncywld )
MDRV_OKIM6295_ADD("oki", 1023924, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2186,10 +2174,7 @@ static MACHINE_RESET (htchctch)
MACHINE_RESET_CALL(tumbleb);
}
-static MACHINE_DRIVER_START( htchctch )
-
- /* driver data */
- MDRV_DRIVER_DATA(tumbleb_state)
+static MACHINE_CONFIG_START( htchctch, tumbleb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 15000000) /* verified */
@@ -2227,48 +2212,40 @@ static MACHINE_DRIVER_START( htchctch )
MDRV_OKIM6295_ADD("oki", 1024000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cookbib )
- MDRV_IMPORT_FROM(htchctch)
+static MACHINE_CONFIG_DERIVED( cookbib, htchctch )
MDRV_VIDEO_UPDATE( semicom_altoffsets )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bcstory )
- MDRV_IMPORT_FROM(htchctch)
+static MACHINE_CONFIG_DERIVED( bcstory, htchctch )
MDRV_VIDEO_UPDATE(bcstory)
MDRV_SOUND_REPLACE("ymsnd", YM2151, 3427190)
MDRV_SOUND_CONFIG(semicom_ym2151_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.10)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( semibase )
- MDRV_IMPORT_FROM(bcstory)
+static MACHINE_CONFIG_DERIVED( semibase, bcstory )
MDRV_VIDEO_UPDATE(semibase )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sdfight )
- MDRV_IMPORT_FROM(bcstory)
+static MACHINE_CONFIG_DERIVED( sdfight, bcstory )
MDRV_VIDEO_START(sdfight)
MDRV_VIDEO_UPDATE(sdfight)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( metlsavr )
- MDRV_IMPORT_FROM(cookbib)
+static MACHINE_CONFIG_DERIVED( metlsavr, cookbib )
MDRV_SOUND_REPLACE("ymsnd", YM2151, 3427190)
MDRV_SOUND_CONFIG(semicom_ym2151_interface)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.10)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.10)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( jumppop )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(tumbleb_state)
+static MACHINE_CONFIG_START( jumppop, tumbleb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -2306,12 +2283,9 @@ static MACHINE_DRIVER_START( jumppop )
MDRV_OKIM6295_ADD("oki", 875000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( suprtrio )
-
- /* driver data */
- MDRV_DRIVER_DATA(tumbleb_state)
+static MACHINE_CONFIG_START( suprtrio, tumbleb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000) /* 14mhz should be correct, but lots of sprite flicker later in game */
@@ -2344,12 +2318,9 @@ static MACHINE_DRIVER_START( suprtrio )
MDRV_OKIM6295_ADD("oki", 875000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
-
-static MACHINE_DRIVER_START( pangpang )
+MACHINE_CONFIG_END
- /* driver data */
- MDRV_DRIVER_DATA(tumbleb_state)
+static MACHINE_CONFIG_START( pangpang, tumbleb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -2378,7 +2349,7 @@ static MACHINE_DRIVER_START( pangpang )
MDRV_OKIM6295_ADD("oki", 8000000/10, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/tumblep.c b/src/mame/drivers/tumblep.c
index 23fc17e70a1..de66df126cd 100644
--- a/src/mame/drivers/tumblep.c
+++ b/src/mame/drivers/tumblep.c
@@ -302,10 +302,7 @@ static MACHINE_START( tumblep )
state->deco16ic = machine->device("deco_custom");
}
-static MACHINE_DRIVER_START( tumblep )
-
- /* driver data */
- MDRV_DRIVER_DATA(tumblep_state)
+static MACHINE_CONFIG_START( tumblep, tumblep_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000)
@@ -343,7 +340,7 @@ static MACHINE_DRIVER_START( tumblep )
MDRV_OKIM6295_ADD("oki", 1023924, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/tunhunt.c b/src/mame/drivers/tunhunt.c
index adc1c1dbfd1..b570d689eb0 100644
--- a/src/mame/drivers/tunhunt.c
+++ b/src/mame/drivers/tunhunt.c
@@ -301,9 +301,7 @@ static const pokey_interface pokey_interface_2 =
*
*************************************/
-static MACHINE_DRIVER_START( tunhunt )
-
- MDRV_DRIVER_DATA( tunhunt_state )
+static MACHINE_CONFIG_START( tunhunt, tunhunt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,2000000) /* ??? */
@@ -335,7 +333,7 @@ static MACHINE_DRIVER_START( tunhunt )
MDRV_SOUND_ADD("pokey2", POKEY, 1209600)
MDRV_SOUND_CONFIG(pokey_interface_2)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/turbo.c b/src/mame/drivers/turbo.c
index 31230b74640..3149448022f 100644
--- a/src/mame/drivers/turbo.c
+++ b/src/mame/drivers/turbo.c
@@ -1074,8 +1074,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( turbo )
- MDRV_DRIVER_DATA(turbo_state)
+static MACHINE_CONFIG_START( turbo, turbo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/4)
@@ -1101,12 +1100,11 @@ static MACHINE_DRIVER_START( turbo )
MDRV_VIDEO_UPDATE(turbo)
/* sound hardware */
- MDRV_IMPORT_FROM(turbo_samples)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(turbo_samples)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( subroc3d )
- MDRV_DRIVER_DATA(turbo_state)
+static MACHINE_CONFIG_START( subroc3d, turbo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/4)
@@ -1130,12 +1128,11 @@ static MACHINE_DRIVER_START( subroc3d )
MDRV_VIDEO_UPDATE(subroc3d)
/* sound hardware */
- MDRV_IMPORT_FROM(subroc3d_samples)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(subroc3d_samples)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( buckrog )
- MDRV_DRIVER_DATA(turbo_state)
+static MACHINE_CONFIG_START( buckrog, turbo_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/4)
@@ -1166,8 +1163,8 @@ static MACHINE_DRIVER_START( buckrog )
MDRV_VIDEO_UPDATE(buckrog)
/* sound hardware */
- MDRV_IMPORT_FROM(buckrog_samples)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(buckrog_samples)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/turrett.c b/src/mame/drivers/turrett.c
index d10c99b2206..435d6d3de62 100644
--- a/src/mame/drivers/turrett.c
+++ b/src/mame/drivers/turrett.c
@@ -103,7 +103,7 @@ static const r3000_cpu_core r3000_config =
};
-static MACHINE_DRIVER_START( turrett )
+static MACHINE_CONFIG_START( turrett, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R3041BE, R3041_CLOCK)
MDRV_CPU_PROGRAM_MAP(cpu_map)
@@ -121,7 +121,7 @@ static MACHINE_DRIVER_START( turrett )
MDRV_VIDEO_START(turrett)
MDRV_VIDEO_UPDATE(turrett)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( turrett )
diff --git a/src/mame/drivers/tutankhm.c b/src/mame/drivers/tutankhm.c
index c691895adbe..1bd4efbaa06 100644
--- a/src/mame/drivers/tutankhm.c
+++ b/src/mame/drivers/tutankhm.c
@@ -218,10 +218,7 @@ static MACHINE_RESET( tutankhm )
state->flip_y = 0;
}
-static MACHINE_DRIVER_START( tutankhm )
-
- /* driver data */
- MDRV_DRIVER_DATA(timeplt_state)
+static MACHINE_CONFIG_START( tutankhm, timeplt_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, XTAL_18_432MHz/12) /* 1.5 MHz ??? */
@@ -242,8 +239,8 @@ static MACHINE_DRIVER_START( tutankhm )
MDRV_VIDEO_UPDATE(tutankhm)
/* sound hardware */
- MDRV_IMPORT_FROM(timeplt_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(timeplt_sound)
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/twin16.c b/src/mame/drivers/twin16.c
index 43b3c761d3d..2ecd6ac1a4e 100644
--- a/src/mame/drivers/twin16.c
+++ b/src/mame/drivers/twin16.c
@@ -714,7 +714,7 @@ static MACHINE_START( twin16 )
state_save_register_global_array(machine, cuebrickj_nvram);
}
-static MACHINE_DRIVER_START( twin16 )
+static MACHINE_CONFIG_START( twin16, driver_data_t )
// basic machine hardware
MDRV_CPU_ADD("maincpu", M68000, XTAL_18_432MHz/2)
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -766,14 +766,13 @@ static MACHINE_DRIVER_START( twin16 )
MDRV_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.20)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( devilw )
- MDRV_IMPORT_FROM(twin16)
+static MACHINE_CONFIG_DERIVED( devilw, twin16 )
MDRV_QUANTUM_TIME(HZ(60000)) // watchdog reset otherwise
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fround )
+static MACHINE_CONFIG_START( fround, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
MDRV_CPU_PROGRAM_MAP(fround_map)
@@ -821,20 +820,18 @@ static MACHINE_DRIVER_START( fround )
MDRV_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.20)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( miaj )
- MDRV_IMPORT_FROM(twin16)
+static MACHINE_CONFIG_DERIVED( miaj, twin16 )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(1*8, 39*8-1, 2*8, 30*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cuebrickj )
- MDRV_IMPORT_FROM(twin16)
+static MACHINE_CONFIG_DERIVED( cuebrickj, twin16 )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(1*8, 39*8-1, 2*8, 30*8-1)
MDRV_NVRAM_HANDLER(generic_0fill)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/twincobr.c b/src/mame/drivers/twincobr.c
index d218e1df558..bc1c534d2f2 100644
--- a/src/mame/drivers/twincobr.c
+++ b/src/mame/drivers/twincobr.c
@@ -556,7 +556,7 @@ static const ym3812_interface ym3812_config =
-static MACHINE_DRIVER_START( twincobr )
+static MACHINE_CONFIG_START( twincobr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_28MHz/4) /* 7MHz - Main board Crystal is 28MHz */
@@ -601,11 +601,10 @@ static MACHINE_DRIVER_START( twincobr )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_28MHz/8)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fsharkbt )
- MDRV_IMPORT_FROM( twincobr )
+static MACHINE_CONFIG_DERIVED( fsharkbt, twincobr )
MDRV_CPU_ADD("mcu", I8741, XTAL_28MHz/16)
/* Program Map is internal to the CPU */
@@ -613,7 +612,7 @@ static MACHINE_DRIVER_START( fsharkbt )
MDRV_DEVICE_DISABLE() /* Internal program code is not dumped */
MDRV_MACHINE_RESET(fsharkbt) /* Reset fshark bootleg 8741 MCU data */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/twinkle.c b/src/mame/drivers/twinkle.c
index 983d9bd3d2c..16fea0c3df0 100644
--- a/src/mame/drivers/twinkle.c
+++ b/src/mame/drivers/twinkle.c
@@ -896,7 +896,7 @@ static const i2cmem_interface i2cmem_interface =
I2CMEM_SLAVE_ADDRESS, 0, 0x100
};
-static MACHINE_DRIVER_START( twinkle )
+static MACHINE_CONFIG_START( twinkle, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PSXCPU, XTAL_67_7376MHz )
MDRV_CPU_PROGRAM_MAP( main_map )
@@ -942,7 +942,7 @@ static MACHINE_DRIVER_START( twinkle )
MDRV_SOUND_ADD( "cdda", CDDA, 0 )
MDRV_SOUND_ROUTE( 0, "speakerleft", 1.0 )
MDRV_SOUND_ROUTE( 1, "speakerright", 1.0 )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( twinkle )
diff --git a/src/mame/drivers/twins.c b/src/mame/drivers/twins.c
index d3a452c13a8..6ca5bef0875 100644
--- a/src/mame/drivers/twins.c
+++ b/src/mame/drivers/twins.c
@@ -166,7 +166,7 @@ static const ay8910_interface ay8910_config =
DEVCB_INPUT_PORT("P2")
};
-static MACHINE_DRIVER_START( twins )
+static MACHINE_CONFIG_START( twins, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, 8000000)
MDRV_CPU_PROGRAM_MAP(twins_map)
@@ -192,7 +192,7 @@ static MACHINE_DRIVER_START( twins )
MDRV_SOUND_ADD("aysnd", AY8910, 2000000)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* The second set has different palette hardware and a different port map */
@@ -254,7 +254,7 @@ static ADDRESS_MAP_START( twinsa_io, ADDRESS_SPACE_IO, 16 )
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( twinsa )
+static MACHINE_CONFIG_START( twinsa, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, XTAL_16MHz/2) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(twins_map)
@@ -280,7 +280,7 @@ static MACHINE_DRIVER_START( twinsa )
MDRV_SOUND_ADD("aysnd", AY8910, XTAL_16MHz/8) /* verified on pcb */
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( twins )
diff --git a/src/mame/drivers/tx1.c b/src/mame/drivers/tx1.c
index 6e398b588a2..3e78393e545 100644
--- a/src/mame/drivers/tx1.c
+++ b/src/mame/drivers/tx1.c
@@ -700,7 +700,7 @@ static const ay8910_interface buggybjr_ym2149_interface_2 =
*
*************************************/
-static MACHINE_DRIVER_START( tx1 )
+static MACHINE_CONFIG_START( tx1, driver_data_t )
MDRV_CPU_ADD("main_cpu", I8086, CPU_MASTER_CLOCK / 3)
MDRV_CPU_PROGRAM_MAP(tx1_main)
// MDRV_WATCHDOG_TIME_INIT(5)
@@ -750,10 +750,10 @@ static MACHINE_DRIVER_START( tx1 )
MDRV_SOUND_ADD("tx1", TX1, 0)
MDRV_SOUND_ROUTE(0, "frontleft", 0.2)
MDRV_SOUND_ROUTE(1, "frontright", 0.2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( buggyboy )
+static MACHINE_CONFIG_START( buggyboy, driver_data_t )
MDRV_CPU_ADD("main_cpu", I8086, CPU_MASTER_CLOCK / 3)
MDRV_CPU_PROGRAM_MAP(buggyboy_main)
// MDRV_WATCHDOG_TIME_INIT(5)
@@ -805,10 +805,10 @@ static MACHINE_DRIVER_START( buggyboy )
MDRV_SOUND_ADD("buggyboy", BUGGYBOY, 0)
MDRV_SOUND_ROUTE(0, "frontleft", 0.2)
MDRV_SOUND_ROUTE(1, "frontright", 0.2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( buggybjr )
+static MACHINE_CONFIG_START( buggybjr, driver_data_t )
MDRV_CPU_ADD("main_cpu", I8086, CPU_MASTER_CLOCK / 3)
MDRV_CPU_PROGRAM_MAP(buggybjr_main)
// MDRV_WATCHDOG_TIME_INIT(5)
@@ -849,7 +849,7 @@ static MACHINE_DRIVER_START( buggybjr )
MDRV_SOUND_ADD("buggyboy", BUGGYBOY, 0)
MDRV_SOUND_ROUTE(0, "frontleft", 0.2)
MDRV_SOUND_ROUTE(1, "frontright", 0.2)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
diff --git a/src/mame/drivers/uapce.c b/src/mame/drivers/uapce.c
index 858db579bfe..4a78f764eed 100644
--- a/src/mame/drivers/uapce.c
+++ b/src/mame/drivers/uapce.c
@@ -183,7 +183,7 @@ static const c6280_interface c6280_config =
"maincpu"
};
-static MACHINE_DRIVER_START( uapce )
+static MACHINE_CONFIG_START( uapce, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H6280, PCE_MAIN_CLOCK/3)
MDRV_CPU_PROGRAM_MAP(pce_mem)
@@ -216,7 +216,7 @@ static MACHINE_DRIVER_START( uapce )
MDRV_SOUND_ROUTE(0, "lspeaker", 1.00)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START(blazlaz)
ROM_REGION( 0x0a0000, "maincpu", 0 )
diff --git a/src/mame/drivers/ultraman.c b/src/mame/drivers/ultraman.c
index 92e265a0cf9..fcd676372fb 100644
--- a/src/mame/drivers/ultraman.c
+++ b/src/mame/drivers/ultraman.c
@@ -216,10 +216,7 @@ static MACHINE_RESET( ultraman )
state->bank2 = -1;
}
-static MACHINE_DRIVER_START( ultraman )
-
- /* driver data */
- MDRV_DRIVER_DATA(ultraman_state)
+static MACHINE_CONFIG_START( ultraman, ultraman_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz? */
@@ -265,7 +262,7 @@ static MACHINE_DRIVER_START( ultraman )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ultratnk.c b/src/mame/drivers/ultratnk.c
index 1228865de7c..d2c7261c367 100644
--- a/src/mame/drivers/ultratnk.c
+++ b/src/mame/drivers/ultratnk.c
@@ -287,7 +287,7 @@ static GFXDECODE_START( ultratnk )
GFXDECODE_END
-static MACHINE_DRIVER_START( ultratnk )
+static MACHINE_CONFIG_START( ultratnk, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, PIXEL_CLOCK / 8)
@@ -316,7 +316,7 @@ static MACHINE_DRIVER_START( ultratnk )
MDRV_SOUND_CONFIG_DISCRETE(ultratnk)
MDRV_SOUND_ROUTE(0, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( ultratnk )
diff --git a/src/mame/drivers/ultrsprt.c b/src/mame/drivers/ultrsprt.c
index d03e256c17f..bec4fd46f3d 100644
--- a/src/mame/drivers/ultrsprt.c
+++ b/src/mame/drivers/ultrsprt.c
@@ -201,7 +201,7 @@ static const k056800_interface ultrsprt_k056800_interface =
};
-static MACHINE_DRIVER_START( ultrsprt )
+static MACHINE_CONFIG_START( ultrsprt, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 25000000) /* PowerPC 403GA 25MHz */
MDRV_CPU_PROGRAM_MAP(ultrsprt_map)
@@ -236,7 +236,7 @@ static MACHINE_DRIVER_START( ultrsprt )
MDRV_SOUND_ADD("konami", K054539, 48000)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*****************************************************************************/
diff --git a/src/mame/drivers/undrfire.c b/src/mame/drivers/undrfire.c
index a97227fb3f0..46282c9869e 100644
--- a/src/mame/drivers/undrfire.c
+++ b/src/mame/drivers/undrfire.c
@@ -718,7 +718,7 @@ static const tc0480scp_interface undrfire_tc0480scp_intf =
0 /* col_base */
};
-static MACHINE_DRIVER_START( undrfire )
+static MACHINE_CONFIG_START( undrfire, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz */
@@ -745,11 +745,11 @@ static MACHINE_DRIVER_START( undrfire )
MDRV_TC0480SCP_ADD("tc0480scp", undrfire_tc0480scp_intf)
/* sound hardware */
- MDRV_IMPORT_FROM(taito_f3_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(taito_f3_sound)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( cbombers )
+static MACHINE_CONFIG_START( cbombers, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz */
@@ -782,8 +782,8 @@ static MACHINE_DRIVER_START( cbombers )
MDRV_TC0480SCP_ADD("tc0480scp", undrfire_tc0480scp_intf)
/* sound hardware */
- MDRV_IMPORT_FROM(taito_f3_sound)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(taito_f3_sound)
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/unico.c b/src/mame/drivers/unico.c
index 2ab32a00711..f110c90ce4e 100644
--- a/src/mame/drivers/unico.c
+++ b/src/mame/drivers/unico.c
@@ -601,7 +601,7 @@ static const eeprom_interface zeropnt2_eeprom_interface =
Burglar X
***************************************************************************/
-static MACHINE_DRIVER_START( burglarx )
+static MACHINE_CONFIG_START( burglarx, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -634,7 +634,7 @@ static MACHINE_DRIVER_START( burglarx )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -647,7 +647,7 @@ static MACHINE_RESET( zeropt )
MACHINE_RESET_CALL(unico);
}
-static MACHINE_DRIVER_START( zeropnt )
+static MACHINE_CONFIG_START( zeropnt, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -680,7 +680,7 @@ static MACHINE_DRIVER_START( zeropnt )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -688,7 +688,7 @@ MACHINE_DRIVER_END
Zero Point 2
***************************************************************************/
-static MACHINE_DRIVER_START( zeropnt2 )
+static MACHINE_CONFIG_START( zeropnt2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000)
@@ -725,7 +725,7 @@ static MACHINE_DRIVER_START( zeropnt2 )
MDRV_OKIM6295_ADD("oki2", 3960000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/upscope.c b/src/mame/drivers/upscope.c
index 740c05401ad..29cd194cc4c 100644
--- a/src/mame/drivers/upscope.c
+++ b/src/mame/drivers/upscope.c
@@ -300,7 +300,7 @@ static const mos6526_interface cia_1_intf =
DEVCB_NULL
};
-static MACHINE_DRIVER_START( upscope )
+static MACHINE_CONFIG_START( upscope, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, AMIGA_68000_NTSC_CLOCK)
@@ -337,7 +337,7 @@ static MACHINE_DRIVER_START( upscope )
/* cia */
MDRV_MOS8520_ADD("cia_0", AMIGA_68000_NTSC_CLOCK / 10, cia_0_intf)
MDRV_MOS8520_ADD("cia_1", AMIGA_68000_NTSC_CLOCK / 10, cia_1_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/usgames.c b/src/mame/drivers/usgames.c
index 9f13b414abe..ce4756730bb 100644
--- a/src/mame/drivers/usgames.c
+++ b/src/mame/drivers/usgames.c
@@ -237,7 +237,7 @@ static const mc6845_interface mc6845_intf =
};
-static MACHINE_DRIVER_START( usg32 )
+static MACHINE_CONFIG_START( usg32, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2000000) /* ?? */
@@ -268,13 +268,12 @@ static MACHINE_DRIVER_START( usg32 )
MDRV_SOUND_ADD("aysnd", AY8910, 2000000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( usg185 )
- MDRV_IMPORT_FROM(usg32)
+static MACHINE_CONFIG_DERIVED( usg185, usg32 )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(usg185_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/vamphalf.c b/src/mame/drivers/vamphalf.c
index 61ac0028d18..895c863844a 100644
--- a/src/mame/drivers/vamphalf.c
+++ b/src/mame/drivers/vamphalf.c
@@ -673,7 +673,7 @@ static ADDRESS_MAP_START( qs1000_io_map, ADDRESS_SPACE_IO, 8 )
AM_RANGE( 0x0000, 0x007f) AM_RAM // RAM? wavetable registers? not sure.
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( common )
+static MACHINE_CONFIG_START( common, driver_data_t )
MDRV_CPU_ADD("maincpu", E116T, 50000000) /* 50 MHz */
MDRV_CPU_PROGRAM_MAP(common_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -692,9 +692,9 @@ static MACHINE_DRIVER_START( common )
MDRV_GFXDECODE(vamphalf)
MDRV_VIDEO_UPDATE(common)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sound_ym_oki )
+static MACHINE_CONFIG_FRAGMENT( sound_ym_oki )
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MDRV_SOUND_ADD("ymsnd", YM2151, 28000000/8)
@@ -704,9 +704,9 @@ static MACHINE_DRIVER_START( sound_ym_oki )
MDRV_OKIM6295_ADD("oki", 28000000/16 , OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sound_suplup )
+static MACHINE_CONFIG_FRAGMENT( sound_suplup )
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MDRV_SOUND_ADD("ymsnd", YM2151, 14318180/4)
@@ -716,59 +716,53 @@ static MACHINE_DRIVER_START( sound_suplup )
MDRV_OKIM6295_ADD("oki", 1789772.5 , OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sound_qs1000 )
+static MACHINE_CONFIG_FRAGMENT( sound_qs1000 )
MDRV_CPU_ADD("audiocpu", I8052, 24000000/4) /* 6 MHz? */
MDRV_CPU_PROGRAM_MAP(qs1000_prg_map)
MDRV_CPU_IO_MAP( qs1000_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vamphalf )
- MDRV_IMPORT_FROM(common)
+static MACHINE_CONFIG_DERIVED( vamphalf, common )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(vamphalf_io)
- MDRV_IMPORT_FROM(sound_ym_oki)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sound_ym_oki)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( misncrft )
- MDRV_IMPORT_FROM(common)
+static MACHINE_CONFIG_DERIVED( misncrft, common )
MDRV_CPU_REPLACE("maincpu", GMS30C2116, 50000000) /* 50 MHz */
MDRV_CPU_PROGRAM_MAP(common_map)
MDRV_CPU_IO_MAP(misncrft_io)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
- MDRV_IMPORT_FROM(sound_qs1000)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sound_qs1000)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( coolmini )
- MDRV_IMPORT_FROM(common)
+static MACHINE_CONFIG_DERIVED( coolmini, common )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(coolmini_io)
- MDRV_IMPORT_FROM(sound_ym_oki)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sound_ym_oki)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( suplup )
- MDRV_IMPORT_FROM(common)
+static MACHINE_CONFIG_DERIVED( suplup, common )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(suplup_io)
- MDRV_IMPORT_FROM(sound_suplup)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sound_suplup)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jmpbreak )
- MDRV_IMPORT_FROM(common)
+static MACHINE_CONFIG_DERIVED( jmpbreak, common )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(jmpbreak_io)
- MDRV_IMPORT_FROM(sound_ym_oki)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sound_ym_oki)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mrdig )
- MDRV_IMPORT_FROM(common)
+static MACHINE_CONFIG_DERIVED( mrdig, common )
MDRV_CPU_REPLACE("maincpu", GMS30C2116, 50000000) /* 50 MHz */
MDRV_CPU_PROGRAM_MAP(common_map)
@@ -776,21 +770,19 @@ static MACHINE_DRIVER_START( mrdig )
MDRV_CPU_IO_MAP(mrdig_io)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
- MDRV_IMPORT_FROM(sound_ym_oki)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sound_ym_oki)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wyvernwg )
- MDRV_IMPORT_FROM(common)
+static MACHINE_CONFIG_DERIVED( wyvernwg, common )
MDRV_CPU_REPLACE("maincpu", E132T, 50000000) /* 50 MHz */
MDRV_CPU_PROGRAM_MAP(common_32bit_map)
MDRV_CPU_IO_MAP(wyvernwg_io)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
- MDRV_IMPORT_FROM(sound_qs1000)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sound_qs1000)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( finalgdr )
- MDRV_IMPORT_FROM(common)
+static MACHINE_CONFIG_DERIVED( finalgdr, common )
MDRV_CPU_REPLACE("maincpu", E132T, 50000000) /* 50 MHz */
MDRV_CPU_PROGRAM_MAP(common_32bit_map)
MDRV_CPU_IO_MAP(finalgdr_io)
@@ -798,21 +790,20 @@ static MACHINE_DRIVER_START( finalgdr )
MDRV_NVRAM_HANDLER(finalgdr)
- MDRV_IMPORT_FROM(sound_ym_oki)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sound_ym_oki)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mrkicker )
- MDRV_IMPORT_FROM(common)
+static MACHINE_CONFIG_DERIVED( mrkicker, common )
MDRV_CPU_REPLACE("maincpu", E132T, 50000000) /* 50 MHz */
MDRV_CPU_PROGRAM_MAP(common_32bit_map)
MDRV_CPU_IO_MAP(mrkicker_io)
MDRV_NVRAM_HANDLER(finalgdr)
- MDRV_IMPORT_FROM(sound_ym_oki)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sound_ym_oki)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( aoh )
+static MACHINE_CONFIG_START( aoh, driver_data_t )
MDRV_CPU_ADD("maincpu", E132XN, 20000000*4) /* 4x internal multiplier */
MDRV_CPU_PROGRAM_MAP(aoh_map)
MDRV_CPU_IO_MAP(aoh_io)
@@ -847,7 +838,7 @@ static MACHINE_DRIVER_START( aoh )
MDRV_OKIM6295_ADD("oki_2", 32000000/32, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/vaportra.c b/src/mame/drivers/vaportra.c
index b7d38f6af31..3336603cbd4 100644
--- a/src/mame/drivers/vaportra.c
+++ b/src/mame/drivers/vaportra.c
@@ -249,10 +249,7 @@ static MACHINE_RESET( vaportra )
state->priority[1] = 0;
}
-static MACHINE_DRIVER_START( vaportra )
-
- /* driver data */
- MDRV_DRIVER_DATA(vaportra_state)
+static MACHINE_CONFIG_START( vaportra, vaportra_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000) /* Custom chip 59 */
@@ -297,7 +294,7 @@ static MACHINE_DRIVER_START( vaportra )
MDRV_OKIM6295_ADD("oki2", 32220000/16, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/vastar.c b/src/mame/drivers/vastar.c
index 8f71509c236..c9f2059c206 100644
--- a/src/mame/drivers/vastar.c
+++ b/src/mame/drivers/vastar.c
@@ -292,9 +292,7 @@ static const ay8910_interface ay8910_config =
-static MACHINE_DRIVER_START( vastar )
-
- MDRV_DRIVER_DATA(vastar_state)
+static MACHINE_CONFIG_START( vastar, vastar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3072000) /* 3.072 MHz ???? */
@@ -332,7 +330,7 @@ static MACHINE_DRIVER_START( vastar )
MDRV_SOUND_ADD("aysnd", AY8910, 1500000)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/vball.c b/src/mame/drivers/vball.c
index 1aca94ebc8b..42866241b80 100644
--- a/src/mame/drivers/vball.c
+++ b/src/mame/drivers/vball.c
@@ -415,7 +415,7 @@ static const ym2151_interface ym2151_config =
};
-static MACHINE_DRIVER_START( vball )
+static MACHINE_CONFIG_START( vball, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, CPU_CLOCK) /* 2 MHz - measured by guru but it makes the game far far too slow ?! */
@@ -448,7 +448,7 @@ static MACHINE_DRIVER_START( vball )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/vcombat.c b/src/mame/drivers/vcombat.c
index 2fc4d2d33fb..c370ebdb877 100644
--- a/src/mame/drivers/vcombat.c
+++ b/src/mame/drivers/vcombat.c
@@ -546,7 +546,7 @@ static const mc6845_interface mc6845_intf =
};
-static MACHINE_DRIVER_START( vcombat )
+static MACHINE_CONFIG_START( vcombat, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_assert)
@@ -593,10 +593,10 @@ static MACHINE_DRIVER_START( vcombat )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( shadfgtr )
+static MACHINE_CONFIG_START( shadfgtr, driver_data_t )
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_assert)
@@ -626,7 +626,7 @@ static MACHINE_DRIVER_START( shadfgtr )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( vcombat )
diff --git a/src/mame/drivers/vega.c b/src/mame/drivers/vega.c
index 1d9b22233d9..88c03a3ee39 100644
--- a/src/mame/drivers/vega.c
+++ b/src/mame/drivers/vega.c
@@ -35,7 +35,7 @@ static VIDEO_UPDATE(vega)
return 0;
}
-static MACHINE_DRIVER_START( vega )
+static MACHINE_CONFIG_START( vega, driver_data_t )
MDRV_CPU_ADD("maincpu", I8035, 6000000) // what CPU? what speed?
MDRV_CPU_PROGRAM_MAP(vega_map)
@@ -51,7 +51,7 @@ static MACHINE_DRIVER_START( vega )
MDRV_PALETTE_INIT(vega)
MDRV_VIDEO_UPDATE(vega)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( vega )
ROM_REGION( 0x10000, "maincpu", 0 )
diff --git a/src/mame/drivers/vegaeo.c b/src/mame/drivers/vegaeo.c
index 654224d3aac..f115efd6a39 100644
--- a/src/mame/drivers/vegaeo.c
+++ b/src/mame/drivers/vegaeo.c
@@ -162,7 +162,7 @@ static VIDEO_UPDATE( vega )
}
-static MACHINE_DRIVER_START( vega )
+static MACHINE_CONFIG_START( vega, driver_data_t )
MDRV_CPU_ADD("maincpu", GMS30C2132, 55000000) /* 55 MHz */
MDRV_CPU_PROGRAM_MAP(vega_map)
MDRV_CPU_VBLANK_INT_HACK(eolith_speedup,262)
@@ -184,7 +184,7 @@ static MACHINE_DRIVER_START( vega )
/* sound hardware */
MDRV_AT28C16_ADD( "at28c16", NULL )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
Crazy Wars
diff --git a/src/mame/drivers/vegas.c b/src/mame/drivers/vegas.c
index 028e276ae9f..2c8a610cebb 100644
--- a/src/mame/drivers/vegas.c
+++ b/src/mame/drivers/vegas.c
@@ -2220,7 +2220,7 @@ static const mips3_config r5000_config =
SYSTEM_CLOCK /* system clock rate */
};
-static MACHINE_DRIVER_START( vegascore )
+static MACHINE_CONFIG_START( vegascore, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R5000LE, SYSTEM_CLOCK*2)
@@ -2250,36 +2250,32 @@ static MACHINE_DRIVER_START( vegascore )
MDRV_SCREEN_VISIBLE_AREA(0, 639, 0, 479)
MDRV_VIDEO_UPDATE(vegas)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vegas )
- MDRV_IMPORT_FROM(vegascore)
- MDRV_IMPORT_FROM(dcs2_audio_2104)
-MACHINE_DRIVER_END
+static MACHINE_CONFIG_DERIVED( vegas, vegascore )
+ MDRV_FRAGMENT_ADD(dcs2_audio_2104)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vegas250 )
- MDRV_IMPORT_FROM(vegascore)
- MDRV_IMPORT_FROM(dcs2_audio_2104)
+static MACHINE_CONFIG_DERIVED( vegas250, vegascore )
+ MDRV_FRAGMENT_ADD(dcs2_audio_2104)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(SYSTEM_CLOCK*2.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vegas32m )
- MDRV_IMPORT_FROM(vegascore)
- MDRV_IMPORT_FROM(dcs2_audio_dsio)
+static MACHINE_CONFIG_DERIVED( vegas32m, vegascore )
+ MDRV_FRAGMENT_ADD(dcs2_audio_dsio)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(vegas_map_32mb)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vegasban )
- MDRV_IMPORT_FROM(vegascore)
- MDRV_IMPORT_FROM(dcs2_audio_2104)
+static MACHINE_CONFIG_DERIVED( vegasban, vegascore )
+ MDRV_FRAGMENT_ADD(dcs2_audio_2104)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(vegas_map_32mb)
@@ -2288,11 +2284,10 @@ static MACHINE_DRIVER_START( vegasban )
MDRV_3DFX_VOODOO_BANSHEE_ADD("voodoo", STD_VOODOO_BANSHEE_CLOCK, 16, "screen")
MDRV_3DFX_VOODOO_CPU("maincpu")
MDRV_3DFX_VOODOO_VBLANK(vblank_assert)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vegasv3 )
- MDRV_IMPORT_FROM(vegas32m)
+static MACHINE_CONFIG_DERIVED( vegasv3, vegas32m )
MDRV_CPU_REPLACE("maincpu", RM7000LE, SYSTEM_CLOCK*2.5)
MDRV_CPU_CONFIG(r5000_config)
MDRV_CPU_PROGRAM_MAP(vegas_map_8mb)
@@ -2301,12 +2296,11 @@ static MACHINE_DRIVER_START( vegasv3 )
MDRV_3DFX_VOODOO_3_ADD("voodoo", STD_VOODOO_3_CLOCK, 16, "screen")
MDRV_3DFX_VOODOO_CPU("maincpu")
MDRV_3DFX_VOODOO_VBLANK(vblank_assert)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( denver )
- MDRV_IMPORT_FROM(vegascore)
- MDRV_IMPORT_FROM(dcs2_audio_denver)
+static MACHINE_CONFIG_DERIVED( denver, vegascore )
+ MDRV_FRAGMENT_ADD(dcs2_audio_denver)
MDRV_CPU_REPLACE("maincpu", RM7000LE, SYSTEM_CLOCK*2.5)
MDRV_CPU_CONFIG(r5000_config)
@@ -2316,7 +2310,7 @@ static MACHINE_DRIVER_START( denver )
MDRV_3DFX_VOODOO_3_ADD("voodoo", STD_VOODOO_3_CLOCK, 16, "screen")
MDRV_3DFX_VOODOO_CPU("maincpu")
MDRV_3DFX_VOODOO_VBLANK(vblank_assert)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/vendetta.c b/src/mame/drivers/vendetta.c
index 49f4f2e792a..8b43e3ba7bf 100644
--- a/src/mame/drivers/vendetta.c
+++ b/src/mame/drivers/vendetta.c
@@ -497,10 +497,7 @@ static MACHINE_RESET( vendetta )
vendetta_video_banking(machine, 0);
}
-static MACHINE_DRIVER_START( vendetta )
-
- /* driver data */
- MDRV_DRIVER_DATA(vendetta_state)
+static MACHINE_CONFIG_START( vendetta, vendetta_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", KONAMI, 6000000) /* this is strange, seems an overclock but */
@@ -546,13 +543,12 @@ static MACHINE_DRIVER_START( vendetta )
MDRV_SOUND_ADD("k053260", K053260, 3579545) /* verified with PCB */
MDRV_SOUND_ROUTE(0, "lspeaker", 0.75)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( esckids )
+static MACHINE_CONFIG_DERIVED( esckids, vendetta )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vendetta)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(esckids_map)
@@ -565,7 +561,7 @@ static MACHINE_DRIVER_START( esckids )
MDRV_K052109_ADD("k052109", esckids_k052109_intf)
MDRV_DEVICE_REMOVE("k053246")
MDRV_K053246_ADD("k053246", esckids_k053246_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/vertigo.c b/src/mame/drivers/vertigo.c
index 2174ed7ee8b..4a39e81541e 100644
--- a/src/mame/drivers/vertigo.c
+++ b/src/mame/drivers/vertigo.c
@@ -104,14 +104,14 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( vertigo )
+static MACHINE_CONFIG_START( vertigo, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(vertigo_map)
MDRV_CPU_PERIODIC_INT(vertigo_interrupt,60)
- MDRV_IMPORT_FROM(exidy440_audio)
+ MDRV_FRAGMENT_ADD(exidy440_audio)
MDRV_PIT8254_ADD( "pit8254", vertigo_pit8254_config )
@@ -134,7 +134,7 @@ static MACHINE_DRIVER_START( vertigo )
MDRV_VIDEO_START(vector)
MDRV_VIDEO_UPDATE(vector)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/vicdual.c b/src/mame/drivers/vicdual.c
index 44e0f727e0b..e5a55b37628 100644
--- a/src/mame/drivers/vicdual.c
+++ b/src/mame/drivers/vicdual.c
@@ -226,7 +226,7 @@ UINT8 vicdual_characterram_r(offs_t offset)
*
*************************************/
-static MACHINE_DRIVER_START( vicdual_root )
+static MACHINE_CONFIG_START( vicdual_root, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, VICDUAL_MAIN_CPU_CLOCK)
@@ -236,7 +236,7 @@ static MACHINE_DRIVER_START( vicdual_root )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(VICDUAL_PIXEL_CLOCK, VICDUAL_HTOTAL, VICDUAL_HBEND, VICDUAL_HBSTART, VICDUAL_VTOTAL, VICDUAL_VBEND, VICDUAL_VBSTART)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -303,10 +303,9 @@ static INPUT_PORTS_START( depthch )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( depthch )
+static MACHINE_CONFIG_DERIVED( depthch, vicdual_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_root)
MDRV_CPU_REPLACE("maincpu", I8080, VICDUAL_MAIN_CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(depthch_map)
MDRV_CPU_IO_MAP(depthch_io_map)
@@ -316,9 +315,9 @@ static MACHINE_DRIVER_START( depthch )
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(depthch_audio)
+ MDRV_FRAGMENT_ADD(depthch_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -391,10 +390,9 @@ static INPUT_PORTS_START( safari )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( safari )
+static MACHINE_CONFIG_DERIVED( safari, vicdual_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(safari_map)
MDRV_CPU_IO_MAP(safari_io_map)
@@ -402,7 +400,7 @@ static MACHINE_DRIVER_START( safari )
/* video hardware */
MDRV_VIDEO_UPDATE(vicdual_bw)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -493,10 +491,9 @@ static INPUT_PORTS_START( frogs )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( frogs )
+static MACHINE_CONFIG_DERIVED( frogs, vicdual_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(frogs_map)
MDRV_CPU_IO_MAP(frogs_io_map)
@@ -507,9 +504,9 @@ static MACHINE_DRIVER_START( frogs )
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(frogs_audio)
+ MDRV_FRAGMENT_ADD(frogs_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -682,10 +679,9 @@ static INPUT_PORTS_START( sspaceat )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( headon )
+static MACHINE_CONFIG_DERIVED( headon, vicdual_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(headon_map)
MDRV_CPU_IO_MAP(headon_io_map)
@@ -695,23 +691,21 @@ static MACHINE_DRIVER_START( headon )
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(headon_audio)
+ MDRV_FRAGMENT_ADD(headon_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( headons )
- MDRV_IMPORT_FROM(headon)
+static MACHINE_CONFIG_DERIVED( headons, headon )
/* video hardware */
MDRV_VIDEO_UPDATE(vicdual_bw) // no colour prom on PCB, must be bw?
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sspaceat )
+static MACHINE_CONFIG_DERIVED( sspaceat, vicdual_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(headon_map)
MDRV_CPU_IO_MAP(sspaceat_io_map)
@@ -719,7 +713,7 @@ static MACHINE_DRIVER_START( sspaceat )
/* video hardware */
MDRV_VIDEO_UPDATE(vicdual_bw_or_color)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -902,10 +896,9 @@ static INPUT_PORTS_START( digger )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( headon2 )
+static MACHINE_CONFIG_DERIVED( headon2, vicdual_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(headon2_map)
MDRV_CPU_IO_MAP(headon2_io_map)
@@ -915,22 +908,21 @@ static MACHINE_DRIVER_START( headon2 )
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(headon_audio)
+ MDRV_FRAGMENT_ADD(headon_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
+
+static MACHINE_CONFIG_DERIVED( headon2bw, headon2 )
-static MACHINE_DRIVER_START( headon2bw )
/* basic machine hardware */
- MDRV_IMPORT_FROM(headon2)
/* video hardware */
MDRV_VIDEO_UPDATE(vicdual_bw)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( digger )
+static MACHINE_CONFIG_DERIVED( digger, vicdual_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(headon2_map)
MDRV_CPU_IO_MAP(digger_io_map)
@@ -938,7 +930,7 @@ static MACHINE_DRIVER_START( digger )
/* video hardware */
MDRV_VIDEO_UPDATE(vicdual_color)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -1848,151 +1840,139 @@ static INPUT_PORTS_START( alphaho )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( vicdual_dualgame_root )
+static MACHINE_CONFIG_DERIVED( vicdual_dualgame_root, vicdual_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(vicdual_dualgame_map)
/* video hardware */
MDRV_VIDEO_UPDATE(vicdual_color)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( invho2 )
+static MACHINE_CONFIG_DERIVED( invho2, vicdual_dualgame_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_dualgame_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(invho2_io_map)
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(invinco_audio)
- MDRV_IMPORT_FROM(headon_audio)
+ MDRV_FRAGMENT_ADD(invinco_audio)
+ MDRV_FRAGMENT_ADD(headon_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( invds )
+static MACHINE_CONFIG_DERIVED( invds, vicdual_dualgame_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_dualgame_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(invds_io_map)
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(invinco_audio)
+ MDRV_FRAGMENT_ADD(invinco_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sspacaho )
+static MACHINE_CONFIG_DERIVED( sspacaho, vicdual_dualgame_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_dualgame_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(sspacaho_io_map)
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(headon_audio)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(headon_audio)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spacetrk )
+static MACHINE_CONFIG_DERIVED( spacetrk, vicdual_dualgame_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_dualgame_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(spacetrk_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( carnival )
+static MACHINE_CONFIG_DERIVED( carnival, vicdual_dualgame_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_dualgame_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(carnival_io_map)
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(carnival_audio)
+ MDRV_FRAGMENT_ADD(carnival_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( carnivalh )
+static MACHINE_CONFIG_DERIVED( carnivalh, vicdual_dualgame_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_dualgame_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(headon_io_map)
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(carnival_audio)
+ MDRV_FRAGMENT_ADD(carnival_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tranqgun )
+static MACHINE_CONFIG_DERIVED( tranqgun, vicdual_dualgame_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_dualgame_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(tranqgun_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( brdrline )
+static MACHINE_CONFIG_DERIVED( brdrline, vicdual_dualgame_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_dualgame_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(brdrline_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( pulsar )
+static MACHINE_CONFIG_DERIVED( pulsar, vicdual_dualgame_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_dualgame_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(pulsar_io_map)
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(pulsar_audio)
+ MDRV_FRAGMENT_ADD(pulsar_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( heiankyo )
+static MACHINE_CONFIG_DERIVED( heiankyo, vicdual_dualgame_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_dualgame_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(heiankyo_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( alphaho )
+static MACHINE_CONFIG_DERIVED( alphaho, vicdual_dualgame_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_dualgame_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_IO_MAP(alphaho_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2107,10 +2087,9 @@ static INPUT_PORTS_START( samurai )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( samurai )
+static MACHINE_CONFIG_DERIVED( samurai, vicdual_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(samurai_map)
MDRV_CPU_IO_MAP(samurai_io_map)
@@ -2118,7 +2097,7 @@ static MACHINE_DRIVER_START( samurai )
/* video hardware */
MDRV_VIDEO_UPDATE(vicdual_color)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2206,10 +2185,9 @@ static INPUT_PORTS_START( nsub )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( nsub )
+static MACHINE_CONFIG_DERIVED( nsub, vicdual_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(nsub_map)
MDRV_CPU_IO_MAP(nsub_io_map)
@@ -2217,7 +2195,7 @@ static MACHINE_DRIVER_START( nsub )
/* video hardware */
MDRV_VIDEO_UPDATE(vicdual_color)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
@@ -2305,10 +2283,9 @@ static INPUT_PORTS_START( invinco )
INPUT_PORTS_END
-static MACHINE_DRIVER_START( invinco )
+static MACHINE_CONFIG_DERIVED( invinco, vicdual_root )
/* basic machine hardware */
- MDRV_IMPORT_FROM(vicdual_root)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(invinco_map)
MDRV_CPU_IO_MAP(invinco_io_map)
@@ -2318,9 +2295,9 @@ static MACHINE_DRIVER_START( invinco )
/* audio hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(invinco_audio)
+ MDRV_FRAGMENT_ADD(invinco_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/victory.c b/src/mame/drivers/victory.c
index 93b23175da1..48b5dda2d16 100644
--- a/src/mame/drivers/victory.c
+++ b/src/mame/drivers/victory.c
@@ -207,7 +207,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( victory )
+static MACHINE_CONFIG_START( victory, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, VICTORY_MAIN_CPU_CLOCK)
@@ -231,9 +231,9 @@ static MACHINE_DRIVER_START( victory )
MDRV_VIDEO_UPDATE(victory)
/* audio hardware */
- MDRV_IMPORT_FROM(victory_audio)
+ MDRV_FRAGMENT_ADD(victory_audio)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/videopin.c b/src/mame/drivers/videopin.c
index 77c25d485a8..0affa758020 100644
--- a/src/mame/drivers/videopin.c
+++ b/src/mame/drivers/videopin.c
@@ -321,7 +321,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( videopin )
+static MACHINE_CONFIG_START( videopin, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12096000 / 16)
@@ -349,7 +349,7 @@ static MACHINE_DRIVER_START( videopin )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(videopin)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/videopkr.c b/src/mame/drivers/videopkr.c
index 7565a165652..db7f6eeb77b 100644
--- a/src/mame/drivers/videopkr.c
+++ b/src/mame/drivers/videopkr.c
@@ -1208,7 +1208,7 @@ static const ay8910_interface ay8910_config =
* Machine Drivers *
************************/
-static MACHINE_DRIVER_START( videopkr )
+static MACHINE_CONFIG_START( videopkr, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8039, CPU_CLOCK)
@@ -1244,25 +1244,23 @@ static MACHINE_DRIVER_START( videopkr )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.55)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( blckjack )
+static MACHINE_CONFIG_DERIVED( blckjack, videopkr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(videopkr)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(4*8, 31*8-1, 2*8, 30*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( videodad )
+static MACHINE_CONFIG_DERIVED( videodad, videopkr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(videopkr)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(CPU_CLOCK_ALT)
@@ -1273,13 +1271,12 @@ static MACHINE_DRIVER_START( videodad )
MDRV_GFXDECODE(videodad)
MDRV_VIDEO_START(vidadcba)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( babypkr )
+static MACHINE_CONFIG_DERIVED( babypkr, videopkr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(videopkr)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(CPU_CLOCK_ALT)
/* most likely romless or eprom */
@@ -1299,17 +1296,16 @@ static MACHINE_DRIVER_START( babypkr )
MDRV_SOUND_ADD("aysnd", AY8910, CPU_CLOCK / 6)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( fortune1 )
+static MACHINE_CONFIG_DERIVED( fortune1, videopkr )
/* basic machine hardware */
- MDRV_IMPORT_FROM(videopkr)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_CLOCK(CPU_CLOCK_ALT)
MDRV_PALETTE_INIT(fortune1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************
* Rom Load *
diff --git a/src/mame/drivers/vigilant.c b/src/mame/drivers/vigilant.c
index 41742cd01d1..c0bfeec5ce4 100644
--- a/src/mame/drivers/vigilant.c
+++ b/src/mame/drivers/vigilant.c
@@ -523,7 +523,7 @@ static const ym2203_interface ym2203_config =
};
-static MACHINE_DRIVER_START( vigilant )
+static MACHINE_CONFIG_START( vigilant, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3579645) /* 3.579645 MHz */
@@ -565,9 +565,9 @@ static MACHINE_DRIVER_START( vigilant )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( buccanrs )
+static MACHINE_CONFIG_START( buccanrs, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5688800) /* 5.688800 MHz */
@@ -625,9 +625,9 @@ static MACHINE_DRIVER_START( buccanrs )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.35)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.35)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kikcubic )
+static MACHINE_CONFIG_START( kikcubic, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3579645) /* 3.579645 MHz */
@@ -669,7 +669,7 @@ static MACHINE_DRIVER_START( kikcubic )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/vindictr.c b/src/mame/drivers/vindictr.c
index f79f04fdaaa..d478af5c84b 100644
--- a/src/mame/drivers/vindictr.c
+++ b/src/mame/drivers/vindictr.c
@@ -193,8 +193,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( vindictr )
- MDRV_DRIVER_DATA(vindictr_state)
+static MACHINE_CONFIG_START( vindictr, vindictr_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68010, ATARI_CLOCK_14MHz/2)
@@ -219,8 +218,8 @@ static MACHINE_DRIVER_START( vindictr )
MDRV_VIDEO_UPDATE(vindictr)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_i_stereo_pokey)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_i_stereo_pokey)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/viper.c b/src/mame/drivers/viper.c
index 3bd333099b4..d1459cd1272 100644
--- a/src/mame/drivers/viper.c
+++ b/src/mame/drivers/viper.c
@@ -614,7 +614,7 @@ static MACHINE_RESET(viper)
devtag_reset(machine, "ide");
}
-static MACHINE_DRIVER_START(viper)
+static MACHINE_CONFIG_START( viper, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", MPC8240, 200000000)
@@ -647,7 +647,7 @@ static MACHINE_DRIVER_START(viper)
MDRV_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
MDRV_M48T58_ADD( "m48t58" )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*****************************************************************************/
diff --git a/src/mame/drivers/vmetal.c b/src/mame/drivers/vmetal.c
index 58d13abc801..bf5b41364a6 100644
--- a/src/mame/drivers/vmetal.c
+++ b/src/mame/drivers/vmetal.c
@@ -421,10 +421,7 @@ static VIDEO_UPDATE(varia)
}
-static MACHINE_DRIVER_START( varia )
-
- /* driver data */
- MDRV_DRIVER_DATA(metro_state)
+static MACHINE_CONFIG_START( varia, metro_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -455,7 +452,7 @@ static MACHINE_DRIVER_START( varia )
MDRV_SOUND_ADD("essnd", ES8712, 12000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( vmetal )
diff --git a/src/mame/drivers/volfied.c b/src/mame/drivers/volfied.c
index 0b116dc867f..edfa2b83693 100644
--- a/src/mame/drivers/volfied.c
+++ b/src/mame/drivers/volfied.c
@@ -257,10 +257,7 @@ static const tc0140syt_interface volfied_tc0140syt_intf =
"maincpu", "audiocpu"
};
-static MACHINE_DRIVER_START( volfied )
-
- /* driver data */
- MDRV_DRIVER_DATA(volfied_state)
+static MACHINE_CONFIG_START( volfied, volfied_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CPU_CLOCK) /* 8MHz */
@@ -302,7 +299,7 @@ static MACHINE_DRIVER_START( volfied )
MDRV_SOUND_ROUTE(3, "mono", 0.60)
MDRV_TC0140SYT_ADD("tc0140syt", volfied_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/vp101.c b/src/mame/drivers/vp101.c
index 8a1035a46ed..5eb587f00c3 100644
--- a/src/mame/drivers/vp101.c
+++ b/src/mame/drivers/vp101.c
@@ -55,7 +55,7 @@ static const mips3_config r5000_config =
100000000 /* system (bus) clock */
};
-static MACHINE_DRIVER_START( vp101 )
+static MACHINE_CONFIG_START( vp101, driver_data_t )
MDRV_CPU_ADD("maincpu", R5000LE, 300000000) /* actually VR5500 with added NEC VR-series custom instructions */
MDRV_CPU_CONFIG(r5000_config)
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -70,7 +70,7 @@ static MACHINE_DRIVER_START( vp101 )
MDRV_VIDEO_START(vp101)
MDRV_VIDEO_UPDATE(vp101)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START(jnero)
ROM_REGION(0x100000, "maincpu", 0) /* Boot ROM */
diff --git a/src/mame/drivers/vpoker.c b/src/mame/drivers/vpoker.c
index f0a9f21c66a..23b1ce79de5 100644
--- a/src/mame/drivers/vpoker.c
+++ b/src/mame/drivers/vpoker.c
@@ -394,7 +394,7 @@ static const ptm6840_interface ptm_intf =
DEVCB_LINE(ptm_irq)
};
-static MACHINE_DRIVER_START( vpoker )
+static MACHINE_CONFIG_START( vpoker, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M6809,XTAL_4MHz)
@@ -422,7 +422,7 @@ static MACHINE_DRIVER_START( vpoker )
MDRV_SPEAKER_STANDARD_MONO("mono")
// MDRV_SOUND_ADD("aysnd", AY8910, 8000000/4 /* guess */)
// MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/vroulet.c b/src/mame/drivers/vroulet.c
index dd9bf49b0a6..de51085a5d0 100644
--- a/src/mame/drivers/vroulet.c
+++ b/src/mame/drivers/vroulet.c
@@ -259,7 +259,7 @@ static const ppi8255_interface ppi8255_intf[2] =
/* Machine Driver */
-static MACHINE_DRIVER_START( vroulet )
+static MACHINE_CONFIG_START( vroulet, driver_data_t )
// basic machine hardware
MDRV_CPU_ADD("maincpu", Z80, 4000000) //???
MDRV_CPU_PROGRAM_MAP(vroulet_map)
@@ -293,7 +293,7 @@ static MACHINE_DRIVER_START( vroulet )
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/vsnes.c b/src/mame/drivers/vsnes.c
index c8208aa49c8..e5072291768 100644
--- a/src/mame/drivers/vsnes.c
+++ b/src/mame/drivers/vsnes.c
@@ -1645,7 +1645,7 @@ static const nes_interface nes_interface_2 =
"sub"
};
-static MACHINE_DRIVER_START( vsnes )
+static MACHINE_CONFIG_START( vsnes, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", N2A03,N2A03_DEFAULTCLOCK)
@@ -1678,37 +1678,33 @@ static MACHINE_DRIVER_START( vsnes )
MDRV_SOUND_ADD("dac1", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jajamaru )
- MDRV_IMPORT_FROM( vsnes )
+static MACHINE_CONFIG_DERIVED( jajamaru, vsnes )
MDRV_DEVICE_REMOVE( "ppu1" )
MDRV_PPU2C05_01_ADD("ppu1", vsnes_ppu_interface_1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mightybj )
- MDRV_IMPORT_FROM( vsnes )
+static MACHINE_CONFIG_DERIVED( mightybj, vsnes )
MDRV_DEVICE_REMOVE( "ppu1" )
MDRV_PPU2C05_02_ADD("ppu1", vsnes_ppu_interface_1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vsgshoe )
- MDRV_IMPORT_FROM( vsnes )
+static MACHINE_CONFIG_DERIVED( vsgshoe, vsnes )
MDRV_DEVICE_REMOVE( "ppu1" )
MDRV_PPU2C05_03_ADD("ppu1", vsnes_ppu_interface_1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( topgun )
- MDRV_IMPORT_FROM( vsnes )
+static MACHINE_CONFIG_DERIVED( topgun, vsnes )
MDRV_DEVICE_REMOVE( "ppu1" )
MDRV_PPU2C05_04_ADD("ppu1", vsnes_ppu_interface_1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( vsdual )
+static MACHINE_CONFIG_START( vsdual, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", N2A03,N2A03_DEFAULTCLOCK)
@@ -1759,7 +1755,7 @@ static MACHINE_DRIVER_START( vsdual )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/******************************************************************************/
diff --git a/src/mame/drivers/vulgus.c b/src/mame/drivers/vulgus.c
index cce3585b53c..76972f9b0bf 100644
--- a/src/mame/drivers/vulgus.c
+++ b/src/mame/drivers/vulgus.c
@@ -230,7 +230,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( vulgus )
+static MACHINE_CONFIG_START( vulgus, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz (?) */
@@ -264,7 +264,7 @@ static MACHINE_DRIVER_START( vulgus )
MDRV_SOUND_ADD("ay2", AY8910, 1500000)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/wallc.c b/src/mame/drivers/wallc.c
index 108c8ced897..de3cafd3200 100644
--- a/src/mame/drivers/wallc.c
+++ b/src/mame/drivers/wallc.c
@@ -275,7 +275,7 @@ static DRIVER_INIT( wallca )
-static MACHINE_DRIVER_START( wallc )
+static MACHINE_CONFIG_START( wallc, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 12288000 / 4) /* 3.072 MHz ? */
MDRV_CPU_PROGRAM_MAP(wallc_map)
@@ -300,7 +300,7 @@ static MACHINE_DRIVER_START( wallc )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("aysnd", AY8910, 12288000 / 8)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/wardner.c b/src/mame/drivers/wardner.c
index 3275b07a118..8febb9aa22b 100644
--- a/src/mame/drivers/wardner.c
+++ b/src/mame/drivers/wardner.c
@@ -392,7 +392,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( wardner )
+static MACHINE_CONFIG_START( wardner, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_24MHz/4) /* 6MHz */
@@ -438,7 +438,7 @@ static MACHINE_DRIVER_START( wardner )
MDRV_SOUND_ADD("ymsnd", YM3812, XTAL_14MHz/4)
MDRV_SOUND_CONFIG(ym3812_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/warpwarp.c b/src/mame/drivers/warpwarp.c
index d4968e18086..0ea8972c104 100644
--- a/src/mame/drivers/warpwarp.c
+++ b/src/mame/drivers/warpwarp.c
@@ -722,7 +722,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( geebee )
+static MACHINE_CONFIG_START( geebee, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, MASTER_CLOCK/9) /* verified on pcb */
@@ -747,12 +747,11 @@ static MACHINE_DRIVER_START( geebee )
MDRV_SOUND_ADD("geebee", GEEBEE, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( navarone )
+static MACHINE_CONFIG_DERIVED( navarone, geebee )
/* basic machine hardware */
- MDRV_IMPORT_FROM(geebee)
MDRV_GFXDECODE(2k)
MDRV_PALETTE_LENGTH(2*2+1)
@@ -760,9 +759,9 @@ static MACHINE_DRIVER_START( navarone )
MDRV_PALETTE_INIT(navarone)
MDRV_VIDEO_START(navarone)
MDRV_VIDEO_UPDATE(navarone)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( bombbee )
+static MACHINE_CONFIG_START( bombbee, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, MASTER_CLOCK/9) /* 18.432 MHz / 9 */
@@ -786,15 +785,14 @@ static MACHINE_DRIVER_START( bombbee )
MDRV_SOUND_ADD("warpwarp", WARPWARP, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( warpwarp )
+static MACHINE_CONFIG_DERIVED( warpwarp, bombbee )
/* basic machine hardware */
- MDRV_IMPORT_FROM(bombbee)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(warpwarp_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/warriorb.c b/src/mame/drivers/warriorb.c
index e74e3d918a9..c64e94e7aef 100644
--- a/src/mame/drivers/warriorb.c
+++ b/src/mame/drivers/warriorb.c
@@ -571,10 +571,7 @@ static MACHINE_RESET( taito_dualscreen )
sound_global_enable(machine, 1); /* mixer enabled */
}
-static MACHINE_DRIVER_START( darius2d )
-
- /* driver data */
- MDRV_DRIVER_DATA(warriorb_state)
+static MACHINE_CONFIG_START( darius2d, warriorb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ??? (Might well be 16!) */
@@ -638,13 +635,10 @@ static MACHINE_DRIVER_START( darius2d )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", warriorb_tc0140syt_intf)
-MACHINE_DRIVER_END
-
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( warriorb )
- /* driver data */
- MDRV_DRIVER_DATA(warriorb_state)
+static MACHINE_CONFIG_START( warriorb, warriorb_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz ? */
@@ -708,7 +702,7 @@ static MACHINE_DRIVER_START( warriorb )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", warriorb_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/wc90.c b/src/mame/drivers/wc90.c
index 502ff07baae..aeefdcee853 100644
--- a/src/mame/drivers/wc90.c
+++ b/src/mame/drivers/wc90.c
@@ -306,7 +306,7 @@ static const ym2608_interface ym2608_config =
irqhandler
};
-static MACHINE_DRIVER_START( wc90 )
+static MACHINE_CONFIG_START( wc90, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_8MHz) /* verified on pcb */
@@ -343,13 +343,11 @@ static MACHINE_DRIVER_START( wc90 )
MDRV_SOUND_ROUTE(0, "mono", 0.50)
MDRV_SOUND_ROUTE(1, "mono", 1.0)
MDRV_SOUND_ROUTE(2, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wc90t )
-
- MDRV_IMPORT_FROM( wc90 )
+static MACHINE_CONFIG_DERIVED( wc90t, wc90 )
MDRV_VIDEO_START( wc90t )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( wc90 )
ROM_REGION( 0x20000, "maincpu", 0 )
diff --git a/src/mame/drivers/wc90b.c b/src/mame/drivers/wc90b.c
index c15ac087d8c..d8df08dd55b 100644
--- a/src/mame/drivers/wc90b.c
+++ b/src/mame/drivers/wc90b.c
@@ -376,7 +376,7 @@ static const msm5205_interface msm5205_config =
MSM5205_S96_4B /* 4KHz 4-bit */
};
-static MACHINE_DRIVER_START( wc90b )
+static MACHINE_CONFIG_START( wc90b, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK)
@@ -415,7 +415,7 @@ static MACHINE_DRIVER_START( wc90b )
MDRV_SOUND_ADD("msm", MSM5205, MSM5205_CLOCK)
MDRV_SOUND_CONFIG(msm5205_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( wc90b1 )
ROM_REGION( 0x20000, "maincpu", 0 )
diff --git a/src/mame/drivers/wecleman.c b/src/mame/drivers/wecleman.c
index cbbce1b1a09..c26dd2eda5f 100644
--- a/src/mame/drivers/wecleman.c
+++ b/src/mame/drivers/wecleman.c
@@ -1052,7 +1052,7 @@ static MACHINE_RESET( wecleman )
k007232_set_bank( machine->device("konami"), 0, 1 );
}
-static MACHINE_DRIVER_START( wecleman )
+static MACHINE_CONFIG_START( wecleman, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* Schems show 10MHz */
@@ -1095,7 +1095,7 @@ static MACHINE_DRIVER_START( wecleman )
MDRV_SOUND_ADD("konami", K007232, 3579545)
MDRV_SOUND_ROUTE(0, "mono", 0.20)
MDRV_SOUND_ROUTE(1, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
@@ -1123,7 +1123,7 @@ static const k051316_interface hotchase_k051316_intf_1 =
hotchase_zoom_callback_1
};
-static MACHINE_DRIVER_START( hotchase )
+static MACHINE_CONFIG_START( hotchase, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz - PCB is drawn in one set's readme */
@@ -1172,7 +1172,7 @@ static MACHINE_DRIVER_START( hotchase )
MDRV_SOUND_ADD("konami3", K007232, 3579545)
MDRV_SOUND_ROUTE(0, "mono", 0.20)
MDRV_SOUND_ROUTE(1, "mono", 0.20)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/welltris.c b/src/mame/drivers/welltris.c
index ad8a7fe3ccc..4a1e57d4a58 100644
--- a/src/mame/drivers/welltris.c
+++ b/src/mame/drivers/welltris.c
@@ -705,9 +705,7 @@ static DRIVER_INIT( quiz18k )
-static MACHINE_DRIVER_START( welltris )
-
- MDRV_DRIVER_DATA( welltris_state )
+static MACHINE_CONFIG_START( welltris, welltris_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,20000000/2) /* 10 MHz */
@@ -740,16 +738,15 @@ static MACHINE_DRIVER_START( welltris )
MDRV_SOUND_ROUTE(0, "mono", 0.25)
MDRV_SOUND_ROUTE(1, "mono", 0.75)
MDRV_SOUND_ROUTE(2, "mono", 0.75)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( quiz18k )
+static MACHINE_CONFIG_DERIVED( quiz18k, welltris )
/* basic machine hardware */
- MDRV_IMPORT_FROM( welltris )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(15, 335-1, 0, 224-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/wgp.c b/src/mame/drivers/wgp.c
index 7c899cee814..fc23c9cd952 100644
--- a/src/mame/drivers/wgp.c
+++ b/src/mame/drivers/wgp.c
@@ -998,10 +998,7 @@ static const tc0140syt_interface wgp_tc0140syt_intf =
"sub", "audiocpu"
};
-static MACHINE_DRIVER_START( wgp )
-
- /* driver data */
- MDRV_DRIVER_DATA(wgp_state)
+static MACHINE_CONFIG_START( wgp, wgp_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ??? */
@@ -1049,11 +1046,10 @@ static MACHINE_DRIVER_START( wgp )
MDRV_SOUND_ROUTE(2, "rspeaker", 1.0)
MDRV_TC0140SYT_ADD("tc0140syt", wgp_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wgp2 )
- MDRV_IMPORT_FROM(wgp)
+static MACHINE_CONFIG_DERIVED( wgp2, wgp )
MDRV_QUANTUM_TIME(HZ(12000))
/* video hardware */
@@ -1061,7 +1057,7 @@ static MACHINE_DRIVER_START( wgp2 )
MDRV_DEVICE_REMOVE("tc0100scn")
MDRV_TC0100SCN_ADD("tc0100scn", wgp2_tc0100scn_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/wheelfir.c b/src/mame/drivers/wheelfir.c
index 6404915d9f7..8aa82200a0a 100644
--- a/src/mame/drivers/wheelfir.c
+++ b/src/mame/drivers/wheelfir.c
@@ -809,8 +809,7 @@ static MACHINE_START( wheelfir )
}
-static MACHINE_DRIVER_START( wheelfir )
- MDRV_DRIVER_DATA(wheelfir_state)
+static MACHINE_CONFIG_START( wheelfir, wheelfir_state )
MDRV_CPU_ADD("maincpu", M68000, 32000000/2)
MDRV_CPU_PROGRAM_MAP(wheelfir_main)
@@ -850,7 +849,7 @@ static MACHINE_DRIVER_START( wheelfir )
MDRV_SOUND_ADD("dac2", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( wheelfir )
diff --git a/src/mame/drivers/williams.c b/src/mame/drivers/williams.c
index 1de72f3cf85..38bba18a142 100644
--- a/src/mame/drivers/williams.c
+++ b/src/mame/drivers/williams.c
@@ -1426,7 +1426,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( defender )
+static MACHINE_CONFIG_START( defender, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/3/4)
@@ -1462,21 +1462,19 @@ static MACHINE_DRIVER_START( defender )
MDRV_PIA6821_ADD("pia_0", williams_pia_0_intf)
MDRV_PIA6821_ADD("pia_1", williams_pia_1_intf)
MDRV_PIA6821_ADD("pia_2", williams_snd_pia_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( jin ) // needs a different screen size or the credit text is clipped
+static MACHINE_CONFIG_DERIVED( jin, defender ) // needs a different screen size or the credit text is clipped
/* basic machine hardware */
- MDRV_IMPORT_FROM(defender)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(0, 315, 7, 245)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( williams )
+static MACHINE_CONFIG_DERIVED( williams, defender )
/* basic machine hardware */
- MDRV_IMPORT_FROM(defender)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(williams_map)
@@ -1488,54 +1486,49 @@ static MACHINE_DRIVER_START( williams )
MDRV_MACHINE_RESET(williams)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(6, 298-1, 7, 247-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( williams_muxed )
+static MACHINE_CONFIG_DERIVED( williams_muxed, williams )
/* basic machine hardware */
- MDRV_IMPORT_FROM(williams)
/* pia */
MDRV_PIA6821_MODIFY("pia_0", williams_muxed_pia_0_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( williams_extra_ram )
+static MACHINE_CONFIG_DERIVED( williams_extra_ram, williams )
/* basic machine hardware */
- MDRV_IMPORT_FROM(williams)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(williams_extra_ram_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( spdball )
+static MACHINE_CONFIG_DERIVED( spdball, williams )
/* basic machine hardware */
- MDRV_IMPORT_FROM(williams)
/* pia */
MDRV_PIA6821_ADD("pia_3", spdball_pia_3_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( lottofun )
+static MACHINE_CONFIG_DERIVED( lottofun, williams )
/* basic machine hardware */
- MDRV_IMPORT_FROM(williams)
/* pia */
MDRV_PIA6821_MODIFY("pia_0", lottofun_pia_0_intf)
MDRV_TICKET_DISPENSER_ADD("ticket", 70, TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_HIGH)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( alienar )
+static MACHINE_CONFIG_DERIVED( alienar, defender )
/* basic machine hardware */
- MDRV_IMPORT_FROM(defender)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(williams_map)
@@ -1547,13 +1540,12 @@ static MACHINE_DRIVER_START( alienar )
/* pia */
MDRV_PIA6821_MODIFY("pia_0", williams_muxed_pia_0_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( sinistar )
+static MACHINE_CONFIG_DERIVED( sinistar, williams_extra_ram )
/* basic machine hardware */
- MDRV_IMPORT_FROM(williams_extra_ram)
/* sound hardware */
MDRV_SOUND_ADD("cvsd", HC55516, 0)
@@ -1562,13 +1554,12 @@ static MACHINE_DRIVER_START( sinistar )
/* pia */
MDRV_PIA6821_MODIFY("pia_0", williams_49way_pia_0_intf)
MDRV_PIA6821_MODIFY("pia_2", sinistar_snd_pia_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( playball )
+static MACHINE_CONFIG_DERIVED( playball, williams )
/* basic machine hardware */
- MDRV_IMPORT_FROM(williams)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
@@ -1581,13 +1572,12 @@ static MACHINE_DRIVER_START( playball )
/* pia */
MDRV_PIA6821_MODIFY("pia_1", playball_pia_1_intf)
MDRV_PIA6821_MODIFY("pia_2", sinistar_snd_pia_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( blaster )
+static MACHINE_CONFIG_DERIVED( blaster, williams )
/* basic machine hardware */
- MDRV_IMPORT_FROM(williams)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(blaster_map)
@@ -1601,20 +1591,19 @@ static MACHINE_DRIVER_START( blaster )
/* pia */
MDRV_PIA6821_MODIFY("pia_0", williams_49way_pia_0_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( blastkit )
+static MACHINE_CONFIG_DERIVED( blastkit, blaster )
/* basic machine hardware */
- MDRV_IMPORT_FROM(blaster)
/* pia */
MDRV_PIA6821_MODIFY("pia_0", williams_49way_muxed_pia_0_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( williams2 )
+static MACHINE_CONFIG_START( williams2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/3/4)
@@ -1652,55 +1641,51 @@ static MACHINE_DRIVER_START( williams2 )
MDRV_PIA6821_ADD("pia_0", williams2_muxed_pia_0_intf)
MDRV_PIA6821_ADD("pia_1", williams2_pia_1_intf)
MDRV_PIA6821_ADD("pia_2", williams2_snd_pia_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( williams2_extra_ram )
+static MACHINE_CONFIG_DERIVED( williams2_extra_ram, williams2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(williams2)
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(williams2_extra_ram_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( mysticm )
+static MACHINE_CONFIG_DERIVED( mysticm, williams2_extra_ram )
/* basic machine hardware */
- MDRV_IMPORT_FROM(williams2_extra_ram)
/* pia */
MDRV_PIA6821_MODIFY("pia_0", mysticm_pia_0_intf)
MDRV_PIA6821_MODIFY("pia_1", mysticm_pia_1_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( tshoot )
+static MACHINE_CONFIG_DERIVED( tshoot, williams2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(williams2)
/* pia */
MDRV_PIA6821_MODIFY("pia_0", tshoot_pia_0_intf)
MDRV_PIA6821_MODIFY("pia_1", tshoot_pia_1_intf)
MDRV_PIA6821_MODIFY("pia_2", tshoot_snd_pia_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( joust2 )
+static MACHINE_CONFIG_DERIVED( joust2, williams2 )
/* basic machine hardware */
- MDRV_IMPORT_FROM(williams2)
MDRV_DEVICE_REMOVE("mono")
- MDRV_IMPORT_FROM(williams_cvsd_sound)
+ MDRV_FRAGMENT_ADD(williams_cvsd_sound)
MDRV_MACHINE_START(joust2)
MDRV_MACHINE_RESET(joust2)
/* pia */
MDRV_PIA6821_MODIFY("pia_1", joust2_pia_1_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/wink.c b/src/mame/drivers/wink.c
index d0e82b192a1..739f53afed6 100644
--- a/src/mame/drivers/wink.c
+++ b/src/mame/drivers/wink.c
@@ -311,7 +311,7 @@ static MACHINE_RESET( wink )
sound_flag = 0;
}
-static MACHINE_DRIVER_START( wink )
+static MACHINE_CONFIG_START( wink, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 12000000 / 4)
MDRV_CPU_PROGRAM_MAP(wink_map)
@@ -345,7 +345,7 @@ static MACHINE_DRIVER_START( wink )
MDRV_SOUND_ADD("aysnd", AY8912, 12000000 / 8)
MDRV_SOUND_CONFIG(ay8912_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/wiping.c b/src/mame/drivers/wiping.c
index 2fca11bb10b..5f8946fb702 100644
--- a/src/mame/drivers/wiping.c
+++ b/src/mame/drivers/wiping.c
@@ -278,7 +278,7 @@ GFXDECODE_END
-static MACHINE_DRIVER_START( wiping )
+static MACHINE_CONFIG_START( wiping, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,18432000/6) /* 3.072 MHz */
@@ -308,7 +308,7 @@ static MACHINE_DRIVER_START( wiping )
MDRV_SOUND_ADD("wiping", WIPING, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/witch.c b/src/mame/drivers/witch.c
index 65878dbbe25..22c3829215e 100644
--- a/src/mame/drivers/witch.c
+++ b/src/mame/drivers/witch.c
@@ -756,7 +756,7 @@ static INTERRUPT_GEN( witch_sub_interrupt )
cpu_set_input_line(device,0,ASSERT_LINE);
}
-static MACHINE_DRIVER_START( witch )
+static MACHINE_CONFIG_START( witch, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(map_main)
@@ -797,7 +797,7 @@ static MACHINE_DRIVER_START( witch )
MDRV_SOUND_CONFIG(ym2203_interface_1)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* this set has (c)1992 Sega / Vic Tokai in the roms? */
ROM_START( witch )
diff --git a/src/mame/drivers/wiz.c b/src/mame/drivers/wiz.c
index 13d2f0f6e2b..eca9dc5eabd 100644
--- a/src/mame/drivers/wiz.c
+++ b/src/mame/drivers/wiz.c
@@ -695,7 +695,7 @@ static MACHINE_RESET( wiz )
dsc0 = dsc1 = 1;
}
-static MACHINE_DRIVER_START( wiz )
+static MACHINE_CONFIG_START( wiz, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz ??? */
@@ -734,13 +734,12 @@ static MACHINE_DRIVER_START( wiz )
MDRV_SOUND_ADD("8910.3", AY8910, 18432000/12)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( stinger )
+static MACHINE_CONFIG_DERIVED( stinger, wiz )
/* basic machine hardware */
- MDRV_IMPORT_FROM(wiz)
MDRV_CPU_MODIFY("audiocpu")
MDRV_CPU_PROGRAM_MAP(stinger_sound_map)
@@ -761,31 +760,29 @@ static MACHINE_DRIVER_START( stinger )
MDRV_SOUND_ADD("discrete", DISCRETE, 0)
MDRV_SOUND_CONFIG_DISCRETE(stinger)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( scion )
+static MACHINE_CONFIG_DERIVED( scion, stinger )
/* basic machine hardware */
- MDRV_IMPORT_FROM(stinger)
/* video hardware */
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_VISIBLE_AREA(2*8, 32*8-1, 2*8, 30*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( kungfut )
+static MACHINE_CONFIG_DERIVED( kungfut, wiz )
/* basic machine hardware */
- MDRV_IMPORT_FROM(wiz)
/* video hardware */
MDRV_GFXDECODE(stinger)
MDRV_VIDEO_UPDATE(kungfut)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/wldarrow.c b/src/mame/drivers/wldarrow.c
index 07aefeb371d..f541618c7ae 100644
--- a/src/mame/drivers/wldarrow.c
+++ b/src/mame/drivers/wldarrow.c
@@ -344,7 +344,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_DRIVER_START( wldarrow )
+static MACHINE_CONFIG_START( wldarrow, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, 2000000)
@@ -367,7 +367,7 @@ static MACHINE_DRIVER_START( wldarrow )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/wolfpack.c b/src/mame/drivers/wolfpack.c
index faa095d5b02..a637d3a8ae4 100644
--- a/src/mame/drivers/wolfpack.c
+++ b/src/mame/drivers/wolfpack.c
@@ -306,7 +306,7 @@ static GFXDECODE_START( wolfpack )
GFXDECODE_END
-static MACHINE_DRIVER_START(wolfpack)
+static MACHINE_CONFIG_START( wolfpack, driver_data_t )
MDRV_SPEAKER_STANDARD_MONO("mono")
/* basic machine hardware */
@@ -333,7 +333,7 @@ static MACHINE_DRIVER_START(wolfpack)
/* sound hardware */
MDRV_SOUND_ADD("speech", S14001A, 20000) /* RC Clock (C=100pf, R=470K-670K ohms, adjustable) ranging from 14925.37313hz to 21276.59574hz, likely factory set to 20000hz since anything below 19500 is too slow */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( wolfpack )
diff --git a/src/mame/drivers/wrally.c b/src/mame/drivers/wrally.c
index 9f00a5b6351..07d8892ea1a 100644
--- a/src/mame/drivers/wrally.c
+++ b/src/mame/drivers/wrally.c
@@ -245,7 +245,7 @@ static GFXDECODE_START( wrally )
GFXDECODE_END
-static MACHINE_DRIVER_START( wrally )
+static MACHINE_CONFIG_START( wrally, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,XTAL_24MHz/2) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(wrally_map)
@@ -277,7 +277,7 @@ static MACHINE_DRIVER_START( wrally )
MDRV_OKIM6295_ADD("oki", XTAL_1MHz, OKIM6295_PIN7_HIGH) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( wrally )
diff --git a/src/mame/drivers/wwfsstar.c b/src/mame/drivers/wwfsstar.c
index a54aad75e33..fd819c1b92e 100644
--- a/src/mame/drivers/wwfsstar.c
+++ b/src/mame/drivers/wwfsstar.c
@@ -427,9 +427,7 @@ static const ym2151_interface ym2151_config =
Machine Driver(s)
*******************************************************************************/
-static MACHINE_DRIVER_START( wwfsstar )
-
- MDRV_DRIVER_DATA( wwfsstar_state )
+static MACHINE_CONFIG_START( wwfsstar, wwfsstar_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CPU_CLOCK)
@@ -461,7 +459,7 @@ static MACHINE_DRIVER_START( wwfsstar )
MDRV_OKIM6295_ADD("oki", XTAL_1_056MHz, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.47)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.47)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************************************
Rom Loaders / Game Drivers
diff --git a/src/mame/drivers/wwfwfest.c b/src/mame/drivers/wwfwfest.c
index d816460593b..9ff25031b96 100644
--- a/src/mame/drivers/wwfwfest.c
+++ b/src/mame/drivers/wwfwfest.c
@@ -390,7 +390,7 @@ static VIDEO_EOF( wwfwfest )
Machine Driver(s)
*******************************************************************************/
-static MACHINE_DRIVER_START( wwfwfest )
+static MACHINE_CONFIG_START( wwfwfest, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CPU_CLOCK) /* 24 crystal, 12 rated chip */
@@ -424,12 +424,11 @@ static MACHINE_DRIVER_START( wwfwfest )
MDRV_OKIM6295_ADD("oki", 1024188, OKIM6295_PIN7_HIGH) /* Verified - Pin 7 tied to +5VDC */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( wwfwfstb )
- MDRV_IMPORT_FROM(wwfwfest)
+static MACHINE_CONFIG_DERIVED( wwfwfstb, wwfwfest )
MDRV_VIDEO_START(wwfwfstb)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*******************************************************************************
Rom Loaders / Game Drivers
diff --git a/src/mame/drivers/xain.c b/src/mame/drivers/xain.c
index b9da7452268..65361f86fa1 100644
--- a/src/mame/drivers/xain.c
+++ b/src/mame/drivers/xain.c
@@ -595,7 +595,7 @@ static MACHINE_START( xsleena )
memory_set_bank(machine, "bank2", 0);
}
-static MACHINE_DRIVER_START( xsleena )
+static MACHINE_CONFIG_START( xsleena, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, CPU_CLOCK)
@@ -641,13 +641,12 @@ static MACHINE_DRIVER_START( xsleena )
MDRV_SOUND_ROUTE(1, "mono", 0.50)
MDRV_SOUND_ROUTE(2, "mono", 0.50)
MDRV_SOUND_ROUTE(3, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( xsleenab )
- MDRV_IMPORT_FROM(xsleena)
+static MACHINE_CONFIG_DERIVED( xsleenab, xsleena )
MDRV_DEVICE_REMOVE("mcu")
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/xexex.c b/src/mame/drivers/xexex.c
index 6cbe755bc72..b22c708b9c7 100644
--- a/src/mame/drivers/xexex.c
+++ b/src/mame/drivers/xexex.c
@@ -519,10 +519,7 @@ static MACHINE_RESET( xexex )
k054539_init_flags(machine->device("k054539"), K054539_REVERSE_STEREO);
}
-static MACHINE_DRIVER_START( xexex )
-
- /* driver data */
- MDRV_DRIVER_DATA(xexex_state)
+static MACHINE_CONFIG_START( xexex, xexex_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) // 16MHz (32MHz xtal)
@@ -588,7 +585,7 @@ static MACHINE_DRIVER_START( xexex )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ADD("filter2r", FILTER_VOLUME, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( xexex ) /* Europe, Version AA */
diff --git a/src/mame/drivers/xmen.c b/src/mame/drivers/xmen.c
index 752f3e840a0..ffeee993334 100644
--- a/src/mame/drivers/xmen.c
+++ b/src/mame/drivers/xmen.c
@@ -366,10 +366,7 @@ static const k053247_interface xmen_k053246_intf =
xmen_sprite_callback
};
-static MACHINE_DRIVER_START( xmen )
-
- /* driver data */
- MDRV_DRIVER_DATA(xmen_state)
+static MACHINE_CONFIG_START( xmen, xmen_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz) /* verified on pcb */
@@ -411,7 +408,7 @@ static MACHINE_DRIVER_START( xmen )
MDRV_SOUND_ADD("k054539", K054539, 48000)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static MACHINE_START( xmen6p )
@@ -458,10 +455,7 @@ static const k053247_interface xmen6p_k053246_intf =
xmen_sprite_callback
};
-static MACHINE_DRIVER_START( xmen6p )
-
- /* driver data */
- MDRV_DRIVER_DATA(xmen_state)
+static MACHINE_CONFIG_START( xmen6p, xmen_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* ? */
@@ -513,7 +507,7 @@ static MACHINE_DRIVER_START( xmen6p )
MDRV_SOUND_ADD("k054539", K054539, 48000)
MDRV_SOUND_ROUTE(0, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/xorworld.c b/src/mame/drivers/xorworld.c
index 5e0c431833d..553503a5e0f 100644
--- a/src/mame/drivers/xorworld.c
+++ b/src/mame/drivers/xorworld.c
@@ -179,7 +179,7 @@ static INTERRUPT_GEN( xorworld_interrupt )
}
-static MACHINE_DRIVER_START( xorworld )
+static MACHINE_CONFIG_START( xorworld, driver_data_t )
// basic machine hardware
MDRV_CPU_ADD("maincpu", M68000, 10000000) // 10 MHz
MDRV_CPU_PROGRAM_MAP(xorworld_map)
@@ -209,7 +209,7 @@ static MACHINE_DRIVER_START( xorworld )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD("saa", SAA1099, 8000000 /* guess */)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( xorworld )
diff --git a/src/mame/drivers/xtheball.c b/src/mame/drivers/xtheball.c
index f05bfdfdfad..165575655a7 100644
--- a/src/mame/drivers/xtheball.c
+++ b/src/mame/drivers/xtheball.c
@@ -320,7 +320,7 @@ static const tms34010_config tms_config =
*
*************************************/
-static MACHINE_DRIVER_START( xtheball )
+static MACHINE_CONFIG_START( xtheball, driver_data_t )
MDRV_CPU_ADD("maincpu", TMS34010, 40000000)
MDRV_CPU_CONFIG(tms_config)
@@ -345,7 +345,7 @@ static MACHINE_DRIVER_START( xtheball )
MDRV_SOUND_ADD("dac", DAC, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/xxmissio.c b/src/mame/drivers/xxmissio.c
index 4845b0be5a1..ae03f8574b2 100644
--- a/src/mame/drivers/xxmissio.c
+++ b/src/mame/drivers/xxmissio.c
@@ -303,7 +303,7 @@ static const ym2203_interface ym2203_interface_2 =
NULL
};
-static MACHINE_DRIVER_START( xxmissio )
+static MACHINE_CONFIG_START( xxmissio, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/4) /* 3.0MHz */
@@ -348,7 +348,7 @@ static MACHINE_DRIVER_START( xxmissio )
MDRV_SOUND_ROUTE(1, "mono", 0.15)
MDRV_SOUND_ROUTE(2, "mono", 0.15)
MDRV_SOUND_ROUTE(3, "mono", 0.40)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/****************************************************************************/
diff --git a/src/mame/drivers/xybots.c b/src/mame/drivers/xybots.c
index d849c3980f9..f549c550629 100644
--- a/src/mame/drivers/xybots.c
+++ b/src/mame/drivers/xybots.c
@@ -191,8 +191,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( xybots )
- MDRV_DRIVER_DATA(xybots_state)
+static MACHINE_CONFIG_START( xybots, xybots_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
@@ -218,8 +217,8 @@ static MACHINE_DRIVER_START( xybots )
MDRV_VIDEO_UPDATE(xybots)
/* sound hardware */
- MDRV_IMPORT_FROM(jsa_i_stereo_swapped)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(jsa_i_stereo_swapped)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/xyonix.c b/src/mame/drivers/xyonix.c
index a117a499c36..e0c6af61f6a 100644
--- a/src/mame/drivers/xyonix.c
+++ b/src/mame/drivers/xyonix.c
@@ -214,9 +214,7 @@ GFXDECODE_END
/* MACHINE driver *************************************************************/
-static MACHINE_DRIVER_START( xyonix )
-
- MDRV_DRIVER_DATA( xyonix_state )
+static MACHINE_CONFIG_START( xyonix, xyonix_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,16000000 / 4) /* 4 MHz ? */
@@ -248,7 +246,7 @@ static MACHINE_DRIVER_START( xyonix )
MDRV_SOUND_ADD("sn2", SN76496, 16000000/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/* ROM Loading ***************************************************************/
diff --git a/src/mame/drivers/yiear.c b/src/mame/drivers/yiear.c
index 01ae18c0553..38e90bfe25b 100644
--- a/src/mame/drivers/yiear.c
+++ b/src/mame/drivers/yiear.c
@@ -214,10 +214,7 @@ static MACHINE_RESET( yiear )
state->last_irq = 0;
}
-static MACHINE_DRIVER_START( yiear )
-
- /* driver data */
- MDRV_DRIVER_DATA(trackfld_state)
+static MACHINE_CONFIG_START( yiear, trackfld_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809,XTAL_18_432MHz/12) /* verified on pcb */
@@ -251,7 +248,7 @@ static MACHINE_DRIVER_START( yiear )
MDRV_SOUND_ADD("vlm", VLM5030, XTAL_3_579545MHz) /* verified on pcb */
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/yunsun16.c b/src/mame/drivers/yunsun16.c
index d0418e9dc9c..775c762d939 100644
--- a/src/mame/drivers/yunsun16.c
+++ b/src/mame/drivers/yunsun16.c
@@ -588,10 +588,7 @@ static const ym3812_interface magicbub_ym3812_intf =
soundirq /* IRQ Line */
};
-static MACHINE_DRIVER_START( magicbub )
-
- /* driver data */
- MDRV_DRIVER_DATA(yunsun16_state)
+static MACHINE_CONFIG_START( magicbub, yunsun16_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -630,17 +627,14 @@ static MACHINE_DRIVER_START( magicbub )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
Shocking
***************************************************************************/
-static MACHINE_DRIVER_START( shocking )
-
- /* driver data */
- MDRV_DRIVER_DATA(yunsun16_state)
+static MACHINE_CONFIG_START( shocking, yunsun16_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -670,7 +664,7 @@ static MACHINE_DRIVER_START( shocking )
MDRV_OKIM6295_ADD("oki", 1000000, OKIM6295_PIN7_HIGH)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/yunsung8.c b/src/mame/drivers/yunsung8.c
index beda2214424..92341772b50 100644
--- a/src/mame/drivers/yunsung8.c
+++ b/src/mame/drivers/yunsung8.c
@@ -500,10 +500,7 @@ static MACHINE_RESET( yunsung8 )
}
-static MACHINE_DRIVER_START( yunsung8 )
-
- /* driver data */
- MDRV_DRIVER_DATA(yunsung8_state)
+static MACHINE_CONFIG_START( yunsung8, yunsung8_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* Z80B */
@@ -543,7 +540,7 @@ static MACHINE_DRIVER_START( yunsung8 )
MDRV_SOUND_CONFIG(yunsung8_msm5205_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.80)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/zac2650.c b/src/mame/drivers/zac2650.c
index 51a5dc47686..b1bdf2fec1a 100644
--- a/src/mame/drivers/zac2650.c
+++ b/src/mame/drivers/zac2650.c
@@ -238,7 +238,7 @@ static GFXDECODE_START( tinvader )
GFXDECODE_SCALE( NULL, 0x1F00, s2636_character, 0, 2, 8, 6 ) /* dynamic */
GFXDECODE_END
-static MACHINE_DRIVER_START( tinvader )
+static MACHINE_CONFIG_START( tinvader, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, 3800000/4)
@@ -265,7 +265,7 @@ static MACHINE_DRIVER_START( tinvader )
MDRV_SOUND_ADD("s2636snd", S2636, 0)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static WRITE8_HANDLER( tinvader_sound_w )
{
diff --git a/src/mame/drivers/zaccaria.c b/src/mame/drivers/zaccaria.c
index efdc005878d..078f56dc466 100644
--- a/src/mame/drivers/zaccaria.c
+++ b/src/mame/drivers/zaccaria.c
@@ -586,7 +586,7 @@ static const tms5220_interface tms5220_config =
-static MACHINE_DRIVER_START( zaccaria )
+static MACHINE_CONFIG_START( zaccaria, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,XTAL_18_432MHz/6) /* verified on pcb */
@@ -640,7 +640,7 @@ static MACHINE_DRIVER_START( zaccaria )
MDRV_SOUND_ADD("tms", TMS5200, 649200) /* ROMCLK pin measured at 162.3Khz, OSC is exactly *4 of that) */
MDRV_SOUND_CONFIG(tms5220_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/zaxxon.c b/src/mame/drivers/zaxxon.c
index 31c95fae3d0..95dee84c21b 100644
--- a/src/mame/drivers/zaxxon.c
+++ b/src/mame/drivers/zaxxon.c
@@ -934,9 +934,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_DRIVER_START( root )
-
- MDRV_DRIVER_DATA(zaxxon_state)
+static MACHINE_CONFIG_START( root, zaxxon_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/16)
@@ -958,32 +956,29 @@ static MACHINE_DRIVER_START( root )
MDRV_PALETTE_INIT(zaxxon)
MDRV_VIDEO_START(zaxxon)
MDRV_VIDEO_UPDATE(zaxxon)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( zaxxon )
- MDRV_IMPORT_FROM(root)
+static MACHINE_CONFIG_DERIVED( zaxxon, root )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(zaxxon_samples)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(zaxxon_samples)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( futspy )
- MDRV_IMPORT_FROM(root)
+static MACHINE_CONFIG_DERIVED( futspy, root )
/* video hardware */
MDRV_VIDEO_UPDATE(futspy)
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(zaxxon_samples)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(zaxxon_samples)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( razmataz )
- MDRV_IMPORT_FROM(root)
+static MACHINE_CONFIG_DERIVED( razmataz, root )
MDRV_MACHINE_RESET(razmataz)
@@ -993,12 +988,11 @@ static MACHINE_DRIVER_START( razmataz )
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
- MDRV_IMPORT_FROM(sega_universal_sound_board_rom)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(sega_universal_sound_board_rom)
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( congo )
- MDRV_IMPORT_FROM(root)
+static MACHINE_CONFIG_DERIVED( congo, root )
MDRV_CPU_MODIFY("maincpu")
MDRV_CPU_PROGRAM_MAP(congo_map)
@@ -1023,8 +1017,8 @@ static MACHINE_DRIVER_START( congo )
MDRV_SOUND_ADD("sn2", SN76496, SOUND_CLOCK/4)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MDRV_IMPORT_FROM(congo_samples)
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD(congo_samples)
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/zerozone.c b/src/mame/drivers/zerozone.c
index 0d5964971df..53f284fbb56 100644
--- a/src/mame/drivers/zerozone.c
+++ b/src/mame/drivers/zerozone.c
@@ -184,10 +184,7 @@ static MACHINE_RESET( zerozone )
state->tilebank = 0;
}
-static MACHINE_DRIVER_START( zerozone )
-
- /* driver data */
- MDRV_DRIVER_DATA(zerozone_state)
+static MACHINE_CONFIG_START( zerozone, zerozone_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz */
@@ -221,7 +218,7 @@ static MACHINE_DRIVER_START( zerozone )
MDRV_OKIM6295_ADD("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/drivers/zn.c b/src/mame/drivers/zn.c
index e5c5cabd1b7..f0ca5b9c440 100644
--- a/src/mame/drivers/zn.c
+++ b/src/mame/drivers/zn.c
@@ -466,7 +466,7 @@ static void zn_machine_init( running_machine *machine )
psx_machine_init(machine);
}
-static MACHINE_DRIVER_START( zn1_1mb_vram )
+static MACHINE_CONFIG_START( zn1_1mb_vram, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD( "maincpu", PSXCPU, XTAL_67_7376MHz )
MDRV_CPU_PROGRAM_MAP( zn_map)
@@ -495,16 +495,15 @@ static MACHINE_DRIVER_START( zn1_1mb_vram )
MDRV_SOUND_ROUTE(1, "rspeaker", 0.35)
MDRV_AT28C16_ADD( "at28c16", NULL )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( zn1_2mb_vram )
- MDRV_IMPORT_FROM( zn1_1mb_vram )
+static MACHINE_CONFIG_DERIVED( zn1_2mb_vram, zn1_1mb_vram )
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_SIZE( 1024, 1024 )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( zn2 )
+static MACHINE_CONFIG_START( zn2, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD( "maincpu", PSXCPU, XTAL_100MHz )
MDRV_CPU_PROGRAM_MAP( zn_map)
@@ -533,7 +532,7 @@ static MACHINE_DRIVER_START( zn2 )
MDRV_SOUND_ROUTE(1, "rspeaker", 0.35)
MDRV_AT28C16_ADD( "at28c16", NULL )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
Capcom ZN1 generic PCB Layout
@@ -720,8 +719,7 @@ static ADDRESS_MAP_START( qsound_portmap, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r)
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( coh1000c )
- MDRV_IMPORT_FROM( zn1_1mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1000c, zn1_1mb_vram )
MDRV_CPU_ADD("audiocpu", Z80, 8000000 ) /* 8MHz ?? */
MDRV_CPU_PROGRAM_MAP( qsound_map)
@@ -733,10 +731,9 @@ static MACHINE_DRIVER_START( coh1000c )
MDRV_SOUND_ADD( "qsound", QSOUND, QSOUND_CLOCK )
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( coh1002c )
- MDRV_IMPORT_FROM( zn1_2mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1002c, zn1_2mb_vram )
MDRV_CPU_ADD("audiocpu", Z80, 8000000 ) /* 8MHz ?? */
MDRV_CPU_PROGRAM_MAP( qsound_map)
@@ -748,7 +745,7 @@ static MACHINE_DRIVER_START( coh1002c )
MDRV_SOUND_ADD( "qsound", QSOUND, QSOUND_CLOCK )
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -916,8 +913,7 @@ static MACHINE_RESET( coh3002c )
zn_machine_init(machine);
}
-static MACHINE_DRIVER_START( coh3002c )
- MDRV_IMPORT_FROM( zn2 )
+static MACHINE_CONFIG_DERIVED( coh3002c, zn2 )
MDRV_CPU_ADD("audiocpu", Z80, 8000000 ) /* 8MHz ?? */
MDRV_CPU_PROGRAM_MAP( qsound_map)
@@ -929,7 +925,7 @@ static MACHINE_DRIVER_START( coh3002c )
MDRV_SOUND_ADD( "qsound", QSOUND, QSOUND_CLOCK )
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -1251,8 +1247,7 @@ static const tc0140syt_interface coh1000ta_tc0140syt_intf =
"maincpu", "audiocpu"
};
-static MACHINE_DRIVER_START( coh1000ta )
- MDRV_IMPORT_FROM( zn1_1mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1000ta, zn1_1mb_vram )
MDRV_CPU_ADD("audiocpu", Z80, 16000000 / 4 ) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP( fx1a_sound_map)
@@ -1269,7 +1264,7 @@ static MACHINE_DRIVER_START( coh1000ta )
MDRV_MB3773_ADD("mb3773")
MDRV_TC0140SYT_ADD("tc0140syt", coh1000ta_tc0140syt_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static WRITE32_HANDLER( taitofx1b_volume_w )
{
@@ -1332,16 +1327,15 @@ static NVRAM_HANDLER( coh1000tb )
}
-static MACHINE_DRIVER_START( coh1000tb )
- MDRV_IMPORT_FROM( zn1_2mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1000tb, zn1_2mb_vram )
MDRV_MACHINE_RESET( coh1000tb )
MDRV_NVRAM_HANDLER( coh1000tb )
MDRV_MB3773_ADD("mb3773")
- MDRV_IMPORT_FROM( taito_zoom_sound )
-MACHINE_DRIVER_END
+ MDRV_FRAGMENT_ADD( taito_zoom_sound )
+MACHINE_CONFIG_END
/*
@@ -1518,13 +1512,12 @@ static MACHINE_RESET( coh1000w )
psx_dma_install_write_handler(5, atpsx_dma_write);
}
-static MACHINE_DRIVER_START( coh1000w )
- MDRV_IMPORT_FROM( zn1_2mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1000w, zn1_2mb_vram )
MDRV_MACHINE_RESET( coh1000w )
MDRV_IDE_CONTROLLER_ADD("ide", atpsx_interrupt)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -1712,8 +1705,7 @@ static ADDRESS_MAP_START( psarc_snd_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x100020, 0xffffff) AM_WRITENOP
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( coh1002e )
- MDRV_IMPORT_FROM( zn1_2mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1002e, zn1_2mb_vram )
MDRV_CPU_ADD("audiocpu", M68000, 12000000 )
MDRV_CPU_PROGRAM_MAP( psarc_snd_map)
@@ -1723,7 +1715,7 @@ static MACHINE_DRIVER_START( coh1002e )
MDRV_SOUND_ADD( "ymf", YMF271, 16934400 )
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -1850,11 +1842,10 @@ static MACHINE_RESET( bam2 )
zn_machine_init(machine);
}
-static MACHINE_DRIVER_START( bam2 )
- MDRV_IMPORT_FROM( zn1_2mb_vram )
+static MACHINE_CONFIG_DERIVED( bam2, zn1_2mb_vram )
MDRV_MACHINE_RESET( bam2 )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -2191,14 +2182,12 @@ static MACHINE_RESET( coh1000a )
}
}
-static MACHINE_DRIVER_START( coh1000a )
- MDRV_IMPORT_FROM( zn1_2mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1000a, zn1_2mb_vram )
MDRV_MACHINE_RESET( coh1000a )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( coh1000a_ide )
- MDRV_IMPORT_FROM( zn1_2mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1000a_ide, zn1_2mb_vram )
MDRV_CPU_MODIFY( "maincpu" )
MDRV_CPU_VBLANK_INT("screen", jdredd_vblank)
@@ -2206,7 +2195,7 @@ static MACHINE_DRIVER_START( coh1000a_ide )
MDRV_MACHINE_RESET( coh1000a )
MDRV_IDE_CONTROLLER_ADD("ide", jdredd_ide_interrupt)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -2343,8 +2332,7 @@ static MACHINE_RESET( coh1001l )
zn_machine_init(machine);
}
-static MACHINE_DRIVER_START( coh1001l )
- MDRV_IMPORT_FROM( zn1_2mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1001l, zn1_2mb_vram )
// MDRV_CPU_ADD("audiocpu", M68000, 10000000 )
// MDRV_CPU_PROGRAM_MAP( atlus_snd_map)
@@ -2352,7 +2340,7 @@ static MACHINE_DRIVER_START( coh1001l )
MDRV_MACHINE_RESET( coh1001l )
// MDRV_SOUND_ADD( "ymz", wYMZ280B, ymz280b_intf )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -2388,11 +2376,10 @@ static MACHINE_RESET( coh1002v )
zn_machine_init(machine);
}
-static MACHINE_DRIVER_START( coh1002v )
- MDRV_IMPORT_FROM( zn1_2mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1002v, zn1_2mb_vram )
MDRV_MACHINE_RESET( coh1002v )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*
@@ -2624,14 +2611,12 @@ static ADDRESS_MAP_START( cbaj_z80_port_map, ADDRESS_SPACE_IO, 8)
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( coh1002m )
- MDRV_IMPORT_FROM( zn1_2mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1002m, zn1_2mb_vram )
MDRV_MACHINE_RESET( coh1002m )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( coh1002msnd )
- MDRV_IMPORT_FROM( zn1_2mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1002msnd, zn1_2mb_vram )
MDRV_CPU_ADD("audiocpu", Z80, 32000000/8 )
MDRV_CPU_PROGRAM_MAP( cbaj_z80_map)
@@ -2642,16 +2627,15 @@ static MACHINE_DRIVER_START( coh1002msnd )
MDRV_SOUND_ADD("ymz", YMZ280B, 16934400)
MDRV_SOUND_ROUTE(0, "lspeaker", 1.0)
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( coh1002ml )
- MDRV_IMPORT_FROM( zn1_2mb_vram )
+static MACHINE_CONFIG_DERIVED( coh1002ml, zn1_2mb_vram )
MDRV_CPU_ADD("link", Z80, 8000000 )
MDRV_CPU_PROGRAM_MAP( link_map)
MDRV_MACHINE_RESET( coh1002m )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static INPUT_PORTS_START( zn )
PORT_START("P1")
diff --git a/src/mame/drivers/zodiack.c b/src/mame/drivers/zodiack.c
index 9b075f24831..e203f69468d 100644
--- a/src/mame/drivers/zodiack.c
+++ b/src/mame/drivers/zodiack.c
@@ -523,10 +523,7 @@ static GFXDECODE_START( zodiack )
GFXDECODE_END
-static MACHINE_DRIVER_START( zodiack )
-
- /* driver data */
- MDRV_DRIVER_DATA(espial_state)
+static MACHINE_CONFIG_START( zodiack, espial_state )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4.00 MHz??? */
@@ -561,12 +558,11 @@ static MACHINE_DRIVER_START( zodiack )
MDRV_SOUND_ADD("aysnd", AY8910, 1789750)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-static MACHINE_DRIVER_START( percuss )
- MDRV_IMPORT_FROM(zodiack)
+static MACHINE_CONFIG_DERIVED( percuss, zodiack )
MDRV_MACHINE_RESET(percuss)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/***************************************************************************
diff --git a/src/mame/drivers/zr107.c b/src/mame/drivers/zr107.c
index e6e1365bbd2..4b457080015 100644
--- a/src/mame/drivers/zr107.c
+++ b/src/mame/drivers/zr107.c
@@ -709,7 +709,7 @@ static MACHINE_RESET( zr107 )
cputag_set_input_line(machine, "dsp", INPUT_LINE_RESET, ASSERT_LINE);
}
-static MACHINE_DRIVER_START( zr107 )
+static MACHINE_CONFIG_START( zr107, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000/2) /* PowerPC 403GA 32MHz */
@@ -760,7 +760,7 @@ static MACHINE_DRIVER_START( zr107 )
MDRV_SOUND_ROUTE(1, "rspeaker", 0.75)
MDRV_ADC0838_ADD("adc0838", zr107_adc_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
static const k001604_interface jetwave_k001604_intf =
@@ -770,7 +770,7 @@ static const k001604_interface jetwave_k001604_intf =
0 /* slrasslt hack */
};
-static MACHINE_DRIVER_START( jetwave )
+static MACHINE_CONFIG_START( jetwave, driver_data_t )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000/2) /* PowerPC 403GA 32MHz */
@@ -821,7 +821,7 @@ static MACHINE_DRIVER_START( jetwave )
MDRV_SOUND_ROUTE(1, "rspeaker", 0.75)
MDRV_ADC0838_ADD("adc0838", zr107_adc_interface)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*****************************************************************************/
diff --git a/src/mame/includes/20pacgal.h b/src/mame/includes/20pacgal.h
index 4d97640d178..81a0a625b59 100644
--- a/src/mame/includes/20pacgal.h
+++ b/src/mame/includes/20pacgal.h
@@ -43,4 +43,4 @@ public:
/*----------- defined in video/20pacgal.c -----------*/
-MACHINE_DRIVER_EXTERN( 20pacgal_video );
+MACHINE_CONFIG_EXTERN( 20pacgal_video );
diff --git a/src/mame/includes/astrof.h b/src/mame/includes/astrof.h
index 10743618815..8ea4232b741 100644
--- a/src/mame/includes/astrof.h
+++ b/src/mame/includes/astrof.h
@@ -41,12 +41,12 @@ public:
/*----------- defined in audio/astrof.c -----------*/
-MACHINE_DRIVER_EXTERN( astrof_audio );
+MACHINE_CONFIG_EXTERN( astrof_audio );
WRITE8_HANDLER( astrof_audio_1_w );
WRITE8_HANDLER( astrof_audio_2_w );
-MACHINE_DRIVER_EXTERN( spfghmk2_audio );
+MACHINE_CONFIG_EXTERN( spfghmk2_audio );
WRITE8_HANDLER( spfghmk2_audio_w );
-MACHINE_DRIVER_EXTERN( tomahawk_audio );
+MACHINE_CONFIG_EXTERN( tomahawk_audio );
WRITE8_HANDLER( tomahawk_audio_w );
diff --git a/src/mame/includes/bzone.h b/src/mame/includes/bzone.h
index 1f3e3b2104e..0dd12640014 100644
--- a/src/mame/includes/bzone.h
+++ b/src/mame/includes/bzone.h
@@ -19,7 +19,7 @@ extern UINT8 rb_input_select;
WRITE8_DEVICE_HANDLER( bzone_sounds_w );
-MACHINE_DRIVER_EXTERN( bzone_audio );
+MACHINE_CONFIG_EXTERN( bzone_audio );
/*----------- defined in audio/redbaron.c -----------*/
diff --git a/src/mame/includes/cidelsa.h b/src/mame/includes/cidelsa.h
index 4cfdd0db4cb..3b11c24e8ee 100644
--- a/src/mame/includes/cidelsa.h
+++ b/src/mame/includes/cidelsa.h
@@ -55,8 +55,8 @@ public:
/*----------- defined in video/cidelsa.c -----------*/
-MACHINE_DRIVER_EXTERN( destryer_video );
-MACHINE_DRIVER_EXTERN( altair_video );
-MACHINE_DRIVER_EXTERN( draco_video );
+MACHINE_CONFIG_EXTERN( destryer_video );
+MACHINE_CONFIG_EXTERN( altair_video );
+MACHINE_CONFIG_EXTERN( draco_video );
#endif
diff --git a/src/mame/includes/cinemat.h b/src/mame/includes/cinemat.h
index 0432999d6b0..925ead45a27 100644
--- a/src/mame/includes/cinemat.h
+++ b/src/mame/includes/cinemat.h
@@ -14,22 +14,22 @@ MACHINE_RESET( cinemat );
WRITE8_HANDLER( cinemat_sound_control_w );
-MACHINE_DRIVER_EXTERN( spacewar_sound );
-MACHINE_DRIVER_EXTERN( barrier_sound );
-MACHINE_DRIVER_EXTERN( speedfrk_sound );
-MACHINE_DRIVER_EXTERN( starhawk_sound );
-MACHINE_DRIVER_EXTERN( sundance_sound );
-MACHINE_DRIVER_EXTERN( tailg_sound );
-MACHINE_DRIVER_EXTERN( warrior_sound );
-MACHINE_DRIVER_EXTERN( armora_sound );
-MACHINE_DRIVER_EXTERN( ripoff_sound );
-MACHINE_DRIVER_EXTERN( starcas_sound );
-MACHINE_DRIVER_EXTERN( solarq_sound );
-MACHINE_DRIVER_EXTERN( boxingb_sound );
-MACHINE_DRIVER_EXTERN( wotw_sound );
-MACHINE_DRIVER_EXTERN( wotwc_sound );
-MACHINE_DRIVER_EXTERN( demon_sound );
-MACHINE_DRIVER_EXTERN( qb3_sound );
+MACHINE_CONFIG_EXTERN( spacewar_sound );
+MACHINE_CONFIG_EXTERN( barrier_sound );
+MACHINE_CONFIG_EXTERN( speedfrk_sound );
+MACHINE_CONFIG_EXTERN( starhawk_sound );
+MACHINE_CONFIG_EXTERN( sundance_sound );
+MACHINE_CONFIG_EXTERN( tailg_sound );
+MACHINE_CONFIG_EXTERN( warrior_sound );
+MACHINE_CONFIG_EXTERN( armora_sound );
+MACHINE_CONFIG_EXTERN( ripoff_sound );
+MACHINE_CONFIG_EXTERN( starcas_sound );
+MACHINE_CONFIG_EXTERN( solarq_sound );
+MACHINE_CONFIG_EXTERN( boxingb_sound );
+MACHINE_CONFIG_EXTERN( wotw_sound );
+MACHINE_CONFIG_EXTERN( wotwc_sound );
+MACHINE_CONFIG_EXTERN( demon_sound );
+MACHINE_CONFIG_EXTERN( qb3_sound );
/*----------- defined in video/cinemat.c -----------*/
diff --git a/src/mame/includes/crbaloon.h b/src/mame/includes/crbaloon.h
index 3476d9b06ad..ccac5d0ff7d 100644
--- a/src/mame/includes/crbaloon.h
+++ b/src/mame/includes/crbaloon.h
@@ -17,7 +17,7 @@ void crbaloon_audio_set_breath_enable(running_device *sn, int enabled);
void crbaloon_audio_set_appear_enable(running_device *sn, int enabled);
WRITE8_DEVICE_HANDLER( crbaloon_audio_set_laugh_enable );
-MACHINE_DRIVER_EXTERN( crbaloon_audio );
+MACHINE_CONFIG_EXTERN( crbaloon_audio );
/*----------- defined in video/crbaloon.c -----------*/
diff --git a/src/mame/includes/crgolf.h b/src/mame/includes/crgolf.h
index 54f9a3e4738..fa0281519d1 100644
--- a/src/mame/includes/crgolf.h
+++ b/src/mame/includes/crgolf.h
@@ -40,4 +40,4 @@ public:
WRITE8_HANDLER( crgolf_videoram_w );
READ8_HANDLER( crgolf_videoram_r );
-MACHINE_DRIVER_EXTERN( crgolf_video );
+MACHINE_CONFIG_EXTERN( crgolf_video );
diff --git a/src/mame/includes/dkong.h b/src/mame/includes/dkong.h
index 63fc335f709..7015e25abbc 100644
--- a/src/mame/includes/dkong.h
+++ b/src/mame/includes/dkong.h
@@ -212,9 +212,9 @@ VIDEO_UPDATE( spclforc );
WRITE8_HANDLER( dkong_audio_irq_w );
-MACHINE_DRIVER_EXTERN( radarscp_audio );
-MACHINE_DRIVER_EXTERN( dkong2b_audio );
-MACHINE_DRIVER_EXTERN( dkongjr_audio );
-MACHINE_DRIVER_EXTERN( dkong3_audio );
-MACHINE_DRIVER_EXTERN( radarscp1_audio );
+MACHINE_CONFIG_EXTERN( radarscp_audio );
+MACHINE_CONFIG_EXTERN( dkong2b_audio );
+MACHINE_CONFIG_EXTERN( dkongjr_audio );
+MACHINE_CONFIG_EXTERN( dkong3_audio );
+MACHINE_CONFIG_EXTERN( radarscp1_audio );
diff --git a/src/mame/includes/exidy.h b/src/mame/includes/exidy.h
index 6eef3e28004..30d7dc3e780 100644
--- a/src/mame/includes/exidy.h
+++ b/src/mame/includes/exidy.h
@@ -29,11 +29,11 @@ READ8_HANDLER( exidy_sh6840_r );
WRITE8_HANDLER( exidy_sh6840_w );
WRITE8_HANDLER( exidy_sfxctrl_w );
-MACHINE_DRIVER_EXTERN( venture_audio );
+MACHINE_CONFIG_EXTERN( venture_audio );
-MACHINE_DRIVER_EXTERN( mtrap_cvsd_audio );
+MACHINE_CONFIG_EXTERN( mtrap_cvsd_audio );
-MACHINE_DRIVER_EXTERN( victory_audio );
+MACHINE_CONFIG_EXTERN( victory_audio );
READ8_HANDLER( victory_sound_response_r );
READ8_HANDLER( victory_sound_status_r );
WRITE8_HANDLER( victory_sound_command_w );
diff --git a/src/mame/includes/exidy440.h b/src/mame/includes/exidy440.h
index bd249360b7c..fe9da2bb3c6 100644
--- a/src/mame/includes/exidy440.h
+++ b/src/mame/includes/exidy440.h
@@ -17,7 +17,7 @@ void exidy440_bank_select(running_machine *machine, UINT8 bank);
extern UINT8 exidy440_sound_command;
extern UINT8 exidy440_sound_command_ack;
-MACHINE_DRIVER_EXTERN( exidy440_audio );
+MACHINE_CONFIG_EXTERN( exidy440_audio );
/*----------- defined in video/exidy440.c -----------*/
@@ -40,5 +40,5 @@ READ8_HANDLER( exidy440_vertical_pos_r );
READ8_HANDLER( exidy440_horizontal_pos_r );
WRITE8_HANDLER( exidy440_interrupt_clear_w );
-MACHINE_DRIVER_EXTERN( exidy440_video );
-MACHINE_DRIVER_EXTERN( topsecex_video );
+MACHINE_CONFIG_EXTERN( exidy440_video );
+MACHINE_CONFIG_EXTERN( topsecex_video );
diff --git a/src/mame/includes/galaxian.h b/src/mame/includes/galaxian.h
index cc067785b00..2f46a5997d1 100644
--- a/src/mame/includes/galaxian.h
+++ b/src/mame/includes/galaxian.h
@@ -128,8 +128,8 @@ void tenspot_set_game_bank(running_machine *machine, int bank, int from_game);
/*----------- defined in audio/galaxian.c -----------*/
-MACHINE_DRIVER_EXTERN( mooncrst_audio );
-MACHINE_DRIVER_EXTERN( galaxian_audio );
+MACHINE_CONFIG_EXTERN( mooncrst_audio );
+MACHINE_CONFIG_EXTERN( galaxian_audio );
WRITE8_DEVICE_HANDLER( galaxian_sound_w );
WRITE8_DEVICE_HANDLER( galaxian_pitch_w );
diff --git a/src/mame/includes/galaxold.h b/src/mame/includes/galaxold.h
index e03a0dd23ee..b4546255deb 100644
--- a/src/mame/includes/galaxold.h
+++ b/src/mame/includes/galaxold.h
@@ -187,5 +187,5 @@ WRITE8_DEVICE_HANDLER( scramble_sh_irqtrigger_w );
WRITE8_DEVICE_HANDLER( mrkougar_sh_irqtrigger_w );
WRITE8_HANDLER( hotshock_sh_irqtrigger_w );
-MACHINE_DRIVER_EXTERN( ad2083_audio );
+MACHINE_CONFIG_EXTERN( ad2083_audio );
diff --git a/src/mame/includes/gameplan.h b/src/mame/includes/gameplan.h
index 9c10cb348be..ab9c583c0fd 100644
--- a/src/mame/includes/gameplan.h
+++ b/src/mame/includes/gameplan.h
@@ -58,6 +58,6 @@ extern const via6522_interface gameplan_via_0_interface;
extern const via6522_interface leprechn_via_0_interface;
extern const via6522_interface trvquest_via_0_interface;
-MACHINE_DRIVER_EXTERN( gameplan_video );
-MACHINE_DRIVER_EXTERN( leprechn_video );
-MACHINE_DRIVER_EXTERN( trvquest_video );
+MACHINE_CONFIG_EXTERN( gameplan_video );
+MACHINE_CONFIG_EXTERN( leprechn_video );
+MACHINE_CONFIG_EXTERN( trvquest_video );
diff --git a/src/mame/includes/gottlieb.h b/src/mame/includes/gottlieb.h
index 5144adeae3c..fce5c9cb967 100644
--- a/src/mame/includes/gottlieb.h
+++ b/src/mame/includes/gottlieb.h
@@ -17,8 +17,8 @@
WRITE8_HANDLER( gottlieb_sh_w );
-MACHINE_DRIVER_EXTERN( gottlieb_soundrev1 );
-MACHINE_DRIVER_EXTERN( gottlieb_soundrev2 );
+MACHINE_CONFIG_EXTERN( gottlieb_soundrev1 );
+MACHINE_CONFIG_EXTERN( gottlieb_soundrev2 );
INPUT_PORTS_EXTERN( gottlieb1_sound );
INPUT_PORTS_EXTERN( gottlieb2_sound );
diff --git a/src/mame/includes/iremz80.h b/src/mame/includes/iremz80.h
index 96d59879cb1..68763a04e8a 100644
--- a/src/mame/includes/iremz80.h
+++ b/src/mame/includes/iremz80.h
@@ -70,9 +70,9 @@ public:
/*----------- defined in audio/irem.c -----------*/
-MACHINE_DRIVER_EXTERN( m52_sound_c_audio );
-MACHINE_DRIVER_EXTERN( m52_large_audio );
-MACHINE_DRIVER_EXTERN( m62_audio );
+MACHINE_CONFIG_EXTERN( m52_sound_c_audio );
+MACHINE_CONFIG_EXTERN( m52_large_audio );
+MACHINE_CONFIG_EXTERN( m62_audio );
WRITE8_HANDLER( irem_sound_cmd_w );
diff --git a/src/mame/includes/jedi.h b/src/mame/includes/jedi.h
index 5cc30f46c5d..4e132c4f6ac 100644
--- a/src/mame/includes/jedi.h
+++ b/src/mame/includes/jedi.h
@@ -49,7 +49,7 @@ public:
/*----------- defined in audio/jedi.c -----------*/
-MACHINE_DRIVER_EXTERN( jedi_audio );
+MACHINE_CONFIG_EXTERN( jedi_audio );
WRITE8_HANDLER( jedi_audio_reset_w );
WRITE8_HANDLER( jedi_audio_latch_w );
@@ -59,7 +59,7 @@ CUSTOM_INPUT( jedi_audio_comm_stat_r );
/*----------- defined in video/jedi.c -----------*/
-MACHINE_DRIVER_EXTERN( jedi_video );
+MACHINE_CONFIG_EXTERN( jedi_video );
WRITE8_HANDLER( jedi_vscroll_w );
WRITE8_HANDLER( jedi_hscroll_w );
diff --git a/src/mame/includes/leland.h b/src/mame/includes/leland.h
index f45d218efe5..3203c7be74b 100644
--- a/src/mame/includes/leland.h
+++ b/src/mame/includes/leland.h
@@ -141,5 +141,5 @@ WRITE8_HANDLER( ataxx_svram_port_w );
READ8_HANDLER( ataxx_mvram_port_r );
READ8_HANDLER( ataxx_svram_port_r );
-MACHINE_DRIVER_EXTERN( leland_video );
-MACHINE_DRIVER_EXTERN( ataxx_video );
+MACHINE_CONFIG_EXTERN( leland_video );
+MACHINE_CONFIG_EXTERN( ataxx_video );
diff --git a/src/mame/includes/madalien.h b/src/mame/includes/madalien.h
index d4e838f72b4..50b5b5ed3b7 100644
--- a/src/mame/includes/madalien.h
+++ b/src/mame/includes/madalien.h
@@ -24,7 +24,7 @@ extern UINT8 *madalien_edge1_pos;
extern UINT8 *madalien_edge2_pos;
extern UINT8 *madalien_headlight_pos;
-MACHINE_DRIVER_EXTERN( madalien_video );
+MACHINE_CONFIG_EXTERN( madalien_video );
WRITE8_HANDLER( madalien_videoram_w );
WRITE8_HANDLER( madalien_charram_w );
diff --git a/src/mame/includes/mario.h b/src/mame/includes/mario.h
index ba26b2c8464..d8a630dc6d3 100644
--- a/src/mame/includes/mario.h
+++ b/src/mame/includes/mario.h
@@ -84,7 +84,7 @@ WRITE8_HANDLER( mario_sh3_w );
WRITE8_HANDLER( mario_sh_tuneselect_w );
WRITE8_HANDLER( masao_sh_irqtrigger_w );
-MACHINE_DRIVER_EXTERN( mario_audio );
-MACHINE_DRIVER_EXTERN( masao_audio );
+MACHINE_CONFIG_EXTERN( mario_audio );
+MACHINE_CONFIG_EXTERN( masao_audio );
#endif /*MARIO_H_*/
diff --git a/src/mame/includes/megadriv.h b/src/mame/includes/megadriv.h
index 036fd83e749..3b6146f3341 100644
--- a/src/mame/includes/megadriv.h
+++ b/src/mame/includes/megadriv.h
@@ -19,17 +19,17 @@ INPUT_PORTS_EXTERN( ssf2ghw );
INPUT_PORTS_EXTERN( mk3ghw );
INPUT_PORTS_EXTERN( megdsvp );
-MACHINE_DRIVER_EXTERN( megadriv_timers );
-
-MACHINE_DRIVER_EXTERN( megdsvppal );
-MACHINE_DRIVER_EXTERN( megadriv );
-MACHINE_DRIVER_EXTERN( megadpal );
-MACHINE_DRIVER_EXTERN( megdsvp );
-MACHINE_DRIVER_EXTERN( genesis_32x );
-MACHINE_DRIVER_EXTERN( genesis_32x_pal );
-MACHINE_DRIVER_EXTERN( genesis_scd );
-MACHINE_DRIVER_EXTERN( genesis_32x_scd );
-MACHINE_DRIVER_EXTERN( md_bootleg ); // for topshoot.c & hshavoc.c
+MACHINE_CONFIG_EXTERN( megadriv_timers );
+
+MACHINE_CONFIG_EXTERN( megdsvppal );
+MACHINE_CONFIG_EXTERN( megadriv );
+MACHINE_CONFIG_EXTERN( megadpal );
+MACHINE_CONFIG_EXTERN( megdsvp );
+MACHINE_CONFIG_EXTERN( genesis_32x );
+MACHINE_CONFIG_EXTERN( genesis_32x_pal );
+MACHINE_CONFIG_EXTERN( genesis_scd );
+MACHINE_CONFIG_EXTERN( genesis_32x_scd );
+MACHINE_CONFIG_EXTERN( md_bootleg ); // for topshoot.c & hshavoc.c
extern UINT16* megadriv_backupram;
extern int megadriv_backupram_length;
diff --git a/src/mame/includes/mw8080bw.h b/src/mame/includes/mw8080bw.h
index d672bf40da5..de8179e0ba8 100644
--- a/src/mame/includes/mw8080bw.h
+++ b/src/mame/includes/mw8080bw.h
@@ -98,8 +98,8 @@ public:
/*----------- defined in drivers/mw8080bw.c -----------*/
-MACHINE_DRIVER_EXTERN( mw8080bw_root );
-MACHINE_DRIVER_EXTERN( invaders );
+MACHINE_CONFIG_EXTERN( mw8080bw_root );
+MACHINE_CONFIG_EXTERN( invaders );
extern const char layout_invaders[];
#define SEAWOLF_GUN_PORT_TAG ("GUN")
@@ -159,69 +159,69 @@ MACHINE_RESET( mw8080bw );
WRITE8_DEVICE_HANDLER( midway_tone_generator_lo_w );
WRITE8_DEVICE_HANDLER( midway_tone_generator_hi_w );
-MACHINE_DRIVER_EXTERN( seawolf_audio );
+MACHINE_CONFIG_EXTERN( seawolf_audio );
WRITE8_HANDLER( seawolf_audio_w );
-MACHINE_DRIVER_EXTERN( gunfight_audio );
+MACHINE_CONFIG_EXTERN( gunfight_audio );
WRITE8_HANDLER( gunfight_audio_w );
-MACHINE_DRIVER_EXTERN( tornbase_audio );
+MACHINE_CONFIG_EXTERN( tornbase_audio );
WRITE8_DEVICE_HANDLER( tornbase_audio_w );
-MACHINE_DRIVER_EXTERN( zzzap_audio );
+MACHINE_CONFIG_EXTERN( zzzap_audio );
WRITE8_HANDLER( zzzap_audio_1_w );
WRITE8_HANDLER( zzzap_audio_2_w );
-MACHINE_DRIVER_EXTERN( maze_audio );
+MACHINE_CONFIG_EXTERN( maze_audio );
void maze_write_discrete(running_device *device, UINT8 maze_tone_timing_state);
-MACHINE_DRIVER_EXTERN( boothill_audio );
+MACHINE_CONFIG_EXTERN( boothill_audio );
WRITE8_DEVICE_HANDLER( boothill_audio_w );
-MACHINE_DRIVER_EXTERN( checkmat_audio );
+MACHINE_CONFIG_EXTERN( checkmat_audio );
WRITE8_DEVICE_HANDLER( checkmat_audio_w );
-MACHINE_DRIVER_EXTERN( desertgu_audio );
+MACHINE_CONFIG_EXTERN( desertgu_audio );
WRITE8_DEVICE_HANDLER( desertgu_audio_1_w );
WRITE8_DEVICE_HANDLER( desertgu_audio_2_w );
-MACHINE_DRIVER_EXTERN( dplay_audio );
+MACHINE_CONFIG_EXTERN( dplay_audio );
WRITE8_DEVICE_HANDLER( dplay_audio_w );
-MACHINE_DRIVER_EXTERN( gmissile_audio );
+MACHINE_CONFIG_EXTERN( gmissile_audio );
WRITE8_HANDLER( gmissile_audio_1_w );
WRITE8_HANDLER( gmissile_audio_2_w );
WRITE8_HANDLER( gmissile_audio_3_w );
-MACHINE_DRIVER_EXTERN( m4_audio );
+MACHINE_CONFIG_EXTERN( m4_audio );
WRITE8_HANDLER( m4_audio_1_w );
WRITE8_HANDLER( m4_audio_2_w );
-MACHINE_DRIVER_EXTERN( clowns_audio );
+MACHINE_CONFIG_EXTERN( clowns_audio );
WRITE8_HANDLER( clowns_audio_1_w );
WRITE8_DEVICE_HANDLER( clowns_audio_2_w );
-MACHINE_DRIVER_EXTERN( spacwalk_audio );
+MACHINE_CONFIG_EXTERN( spacwalk_audio );
WRITE8_DEVICE_HANDLER( spacwalk_audio_1_w );
WRITE8_DEVICE_HANDLER( spacwalk_audio_2_w );
-MACHINE_DRIVER_EXTERN( shuffle_audio );
+MACHINE_CONFIG_EXTERN( shuffle_audio );
WRITE8_DEVICE_HANDLER( shuffle_audio_1_w );
WRITE8_DEVICE_HANDLER( shuffle_audio_2_w );
-MACHINE_DRIVER_EXTERN( dogpatch_audio );
+MACHINE_CONFIG_EXTERN( dogpatch_audio );
WRITE8_HANDLER( dogpatch_audio_w );
-MACHINE_DRIVER_EXTERN( spcenctr_audio );
+MACHINE_CONFIG_EXTERN( spcenctr_audio );
WRITE8_DEVICE_HANDLER( spcenctr_audio_1_w );
WRITE8_DEVICE_HANDLER( spcenctr_audio_2_w );
WRITE8_DEVICE_HANDLER( spcenctr_audio_3_w );
-MACHINE_DRIVER_EXTERN( phantom2_audio );
+MACHINE_CONFIG_EXTERN( phantom2_audio );
WRITE8_HANDLER( phantom2_audio_1_w );
WRITE8_HANDLER( phantom2_audio_2_w );
-MACHINE_DRIVER_EXTERN( bowler_audio );
+MACHINE_CONFIG_EXTERN( bowler_audio );
WRITE8_DEVICE_HANDLER( bowler_audio_1_w );
WRITE8_HANDLER( bowler_audio_2_w );
WRITE8_HANDLER( bowler_audio_3_w );
@@ -229,15 +229,15 @@ WRITE8_HANDLER( bowler_audio_4_w );
WRITE8_HANDLER( bowler_audio_5_w );
WRITE8_HANDLER( bowler_audio_6_w );
-MACHINE_DRIVER_EXTERN( invaders_samples_audio );
-MACHINE_DRIVER_EXTERN( invaders_audio );
+MACHINE_CONFIG_EXTERN( invaders_samples_audio );
+MACHINE_CONFIG_EXTERN( invaders_audio );
WRITE8_DEVICE_HANDLER( invaders_audio_1_w );
WRITE8_DEVICE_HANDLER( invaders_audio_2_w );
-MACHINE_DRIVER_EXTERN( blueshrk_audio );
+MACHINE_CONFIG_EXTERN( blueshrk_audio );
WRITE8_DEVICE_HANDLER( blueshrk_audio_w );
-MACHINE_DRIVER_EXTERN( invad2ct_audio );
+MACHINE_CONFIG_EXTERN( invad2ct_audio );
WRITE8_DEVICE_HANDLER( invad2ct_audio_1_w );
WRITE8_DEVICE_HANDLER( invad2ct_audio_2_w );
WRITE8_DEVICE_HANDLER( invad2ct_audio_3_w );
diff --git a/src/mame/includes/mystston.h b/src/mame/includes/mystston.h
index 5c885d3dbae..24eb316aa94 100644
--- a/src/mame/includes/mystston.h
+++ b/src/mame/includes/mystston.h
@@ -42,5 +42,5 @@ void mystston_on_scanline_interrupt(running_machine *machine);
/*----------- defined in video/mystston.c -----------*/
-MACHINE_DRIVER_EXTERN( mystston_video );
+MACHINE_CONFIG_EXTERN( mystston_video );
WRITE8_HANDLER( mystston_video_control_w );
diff --git a/src/mame/includes/n8080.h b/src/mame/includes/n8080.h
index b0233494692..8a9eaff9773 100644
--- a/src/mame/includes/n8080.h
+++ b/src/mame/includes/n8080.h
@@ -63,9 +63,9 @@ void spacefev_start_red_cannon(running_machine *machine);
/*----------- defined in audio/n8080.c -----------*/
-MACHINE_DRIVER_EXTERN( spacefev_sound );
-MACHINE_DRIVER_EXTERN( sheriff_sound );
-MACHINE_DRIVER_EXTERN( helifire_sound );
+MACHINE_CONFIG_EXTERN( spacefev_sound );
+MACHINE_CONFIG_EXTERN( sheriff_sound );
+MACHINE_CONFIG_EXTERN( helifire_sound );
MACHINE_START( spacefev_sound );
MACHINE_START( sheriff_sound );
diff --git a/src/mame/includes/qix.h b/src/mame/includes/qix.h
index 5ea94f84ae3..1479509bec4 100644
--- a/src/mame/includes/qix.h
+++ b/src/mame/includes/qix.h
@@ -82,9 +82,9 @@ WRITE_LINE_DEVICE_HANDLER( qix_vsync_changed );
/*----------- defined in video/qix.c -----------*/
-MACHINE_DRIVER_EXTERN( qix_video );
-MACHINE_DRIVER_EXTERN( zookeep_video );
-MACHINE_DRIVER_EXTERN( slither_video );
+MACHINE_CONFIG_EXTERN( qix_video );
+MACHINE_CONFIG_EXTERN( zookeep_video );
+MACHINE_CONFIG_EXTERN( slither_video );
WRITE8_DEVICE_HANDLER( qix_flip_screen_w );
WRITE8_HANDLER( qix_palettebank_w );
@@ -92,5 +92,5 @@ WRITE8_HANDLER( qix_palettebank_w );
/*----------- defined in audio/qix.c -----------*/
-MACHINE_DRIVER_EXTERN( qix_audio );
-MACHINE_DRIVER_EXTERN( slither_audio );
+MACHINE_CONFIG_EXTERN( qix_audio );
+MACHINE_CONFIG_EXTERN( slither_audio );
diff --git a/src/mame/includes/redalert.h b/src/mame/includes/redalert.h
index 0bfe272b783..1417dbcaf9c 100644
--- a/src/mame/includes/redalert.h
+++ b/src/mame/includes/redalert.h
@@ -14,9 +14,9 @@ WRITE8_HANDLER( redalert_voice_command_w );
WRITE8_HANDLER( demoneye_audio_command_w );
-MACHINE_DRIVER_EXTERN( redalert_audio );
-MACHINE_DRIVER_EXTERN( ww3_audio );
-MACHINE_DRIVER_EXTERN( demoneye_audio );
+MACHINE_CONFIG_EXTERN( redalert_audio );
+MACHINE_CONFIG_EXTERN( ww3_audio );
+MACHINE_CONFIG_EXTERN( demoneye_audio );
/*----------- defined in video/redalert.c -----------*/
@@ -27,7 +27,7 @@ extern UINT8 *redalert_charmap_videoram;
extern UINT8 *redalert_video_control;
WRITE8_HANDLER( redalert_bitmap_videoram_w );
-MACHINE_DRIVER_EXTERN( ww3_video );
-MACHINE_DRIVER_EXTERN( panther_video );
-MACHINE_DRIVER_EXTERN( redalert_video );
-MACHINE_DRIVER_EXTERN( demoneye_video );
+MACHINE_CONFIG_EXTERN( ww3_video );
+MACHINE_CONFIG_EXTERN( panther_video );
+MACHINE_CONFIG_EXTERN( redalert_video );
+MACHINE_CONFIG_EXTERN( demoneye_video );
diff --git a/src/mame/includes/segag80r.h b/src/mame/includes/segag80r.h
index 66c61b66ff4..b6f7d8d661f 100644
--- a/src/mame/includes/segag80r.h
+++ b/src/mame/includes/segag80r.h
@@ -13,10 +13,10 @@ void sega_security(int chip);
/*----------- defined in audio/segag80r.c -----------*/
-MACHINE_DRIVER_EXTERN( astrob_sound_board );
-MACHINE_DRIVER_EXTERN( 005_sound_board );
-MACHINE_DRIVER_EXTERN( spaceod_sound_board );
-MACHINE_DRIVER_EXTERN( monsterb_sound_board );
+MACHINE_CONFIG_EXTERN( astrob_sound_board );
+MACHINE_CONFIG_EXTERN( 005_sound_board );
+MACHINE_CONFIG_EXTERN( spaceod_sound_board );
+MACHINE_CONFIG_EXTERN( monsterb_sound_board );
WRITE8_HANDLER( astrob_sound_w );
diff --git a/src/mame/includes/segamsys.h b/src/mame/includes/segamsys.h
index d547dd181cb..59d1c5dd3e1 100644
--- a/src/mame/includes/segamsys.h
+++ b/src/mame/includes/segamsys.h
@@ -57,7 +57,7 @@ READ8_HANDLER (megatech_sms_ioport_dd_r);
READ8_HANDLER( smsgg_backupram_r );
WRITE8_HANDLER( smsgg_backupram_w );
extern void megatech_set_genz80_as_sms_standard_map(running_machine *machine, const char* tag, int mapper);
-MACHINE_DRIVER_EXTERN(sms);
+MACHINE_CONFIG_EXTERN(sms);
extern DRIVER_INIT(sms);
extern DRIVER_INIT(smspal);
extern DRIVER_INIT(smscm);
diff --git a/src/mame/includes/spacefb.h b/src/mame/includes/spacefb.h
index 1ff86172168..7305178d2e3 100644
--- a/src/mame/includes/spacefb.h
+++ b/src/mame/includes/spacefb.h
@@ -26,7 +26,7 @@
/*----------- defined in audio/spacefb.c -----------*/
-MACHINE_DRIVER_EXTERN( spacefb_audio );
+MACHINE_CONFIG_EXTERN( spacefb_audio );
READ8_HANDLER( spacefb_audio_p2_r );
READ8_HANDLER( spacefb_audio_t0_r );
diff --git a/src/mame/includes/spiders.h b/src/mame/includes/spiders.h
index a8dd0a003e8..d073a6cc89b 100644
--- a/src/mame/includes/spiders.h
+++ b/src/mame/includes/spiders.h
@@ -12,4 +12,4 @@ WRITE8_DEVICE_HANDLER( spiders_audio_a_w );
WRITE8_DEVICE_HANDLER( spiders_audio_b_w );
WRITE8_DEVICE_HANDLER( spiders_audio_ctrl_w );
-MACHINE_DRIVER_EXTERN( spiders_audio );
+MACHINE_CONFIG_EXTERN( spiders_audio );
diff --git a/src/mame/includes/stactics.h b/src/mame/includes/stactics.h
index 710092d85a2..1a030e45196 100644
--- a/src/mame/includes/stactics.h
+++ b/src/mame/includes/stactics.h
@@ -43,7 +43,7 @@ public:
/*----------- defined in video/stactics.c -----------*/
-MACHINE_DRIVER_EXTERN( stactics_video );
+MACHINE_CONFIG_EXTERN( stactics_video );
WRITE8_HANDLER( stactics_scroll_ram_w );
WRITE8_HANDLER( stactics_speed_latch_w );
diff --git a/src/mame/includes/targ.h b/src/mame/includes/targ.h
index ff845b03417..f38c176454f 100644
--- a/src/mame/includes/targ.h
+++ b/src/mame/includes/targ.h
@@ -11,6 +11,6 @@ WRITE8_HANDLER( targ_audio_1_w );
WRITE8_HANDLER( targ_audio_2_w );
WRITE8_HANDLER( spectar_audio_2_w );
-MACHINE_DRIVER_EXTERN( spectar_audio );
-MACHINE_DRIVER_EXTERN( targ_audio );
+MACHINE_CONFIG_EXTERN( spectar_audio );
+MACHINE_CONFIG_EXTERN( targ_audio );
diff --git a/src/mame/includes/timeplt.h b/src/mame/includes/timeplt.h
index 0b753b5c82e..71eed750fde 100644
--- a/src/mame/includes/timeplt.h
+++ b/src/mame/includes/timeplt.h
@@ -77,8 +77,8 @@ public:
WRITE8_HANDLER( timeplt_sh_irqtrigger_w );
-MACHINE_DRIVER_EXTERN( timeplt_sound );
-MACHINE_DRIVER_EXTERN( locomotn_sound );
+MACHINE_CONFIG_EXTERN( timeplt_sound );
+MACHINE_CONFIG_EXTERN( locomotn_sound );
/*----------- defined in video/pooyan.c -----------*/
diff --git a/src/mame/includes/turbo.h b/src/mame/includes/turbo.h
index 6643efc25f1..2f14b45bc51 100644
--- a/src/mame/includes/turbo.h
+++ b/src/mame/includes/turbo.h
@@ -71,9 +71,9 @@ public:
/*----------- defined in audio/turbo.c -----------*/
-MACHINE_DRIVER_EXTERN( turbo_samples );
-MACHINE_DRIVER_EXTERN( subroc3d_samples );
-MACHINE_DRIVER_EXTERN( buckrog_samples );
+MACHINE_CONFIG_EXTERN( turbo_samples );
+MACHINE_CONFIG_EXTERN( subroc3d_samples );
+MACHINE_CONFIG_EXTERN( buckrog_samples );
WRITE8_DEVICE_HANDLER( turbo_sound_a_w );
WRITE8_DEVICE_HANDLER( turbo_sound_b_w );
diff --git a/src/mame/includes/vicdual.h b/src/mame/includes/vicdual.h
index e63b7b447ce..56c3e4fa46b 100644
--- a/src/mame/includes/vicdual.h
+++ b/src/mame/includes/vicdual.h
@@ -42,8 +42,8 @@ VIDEO_UPDATE( vicdual_bw_or_color );
/*----------- defined in audio/vicdual.c -----------*/
MACHINE_START( frogs_audio );
-MACHINE_DRIVER_EXTERN( frogs_audio );
-MACHINE_DRIVER_EXTERN( headon_audio );
+MACHINE_CONFIG_EXTERN( frogs_audio );
+MACHINE_CONFIG_EXTERN( headon_audio );
WRITE8_HANDLER( frogs_audio_w );
WRITE8_HANDLER( headon_audio_w );
WRITE8_HANDLER( invho2_audio_w );
@@ -51,25 +51,25 @@ WRITE8_HANDLER( invho2_audio_w );
/*----------- defined in audio/depthch.c -----------*/
-MACHINE_DRIVER_EXTERN( depthch_audio );
+MACHINE_CONFIG_EXTERN( depthch_audio );
WRITE8_HANDLER( depthch_audio_w );
/*----------- defined in audio/carnival.c -----------*/
-MACHINE_DRIVER_EXTERN( carnival_audio );
+MACHINE_CONFIG_EXTERN( carnival_audio );
WRITE8_HANDLER( carnival_audio_1_w );
WRITE8_HANDLER( carnival_audio_2_w );
/*----------- defined in audio/invinco.c -----------*/
-MACHINE_DRIVER_EXTERN( invinco_audio );
+MACHINE_CONFIG_EXTERN( invinco_audio );
WRITE8_HANDLER( invinco_audio_w );
/*----------- defined in audio/pulsar.c -----------*/
-MACHINE_DRIVER_EXTERN( pulsar_audio );
+MACHINE_CONFIG_EXTERN( pulsar_audio );
WRITE8_HANDLER( pulsar_audio_1_w );
WRITE8_HANDLER( pulsar_audio_2_w );
diff --git a/src/mame/includes/zaxxon.h b/src/mame/includes/zaxxon.h
index 7fbf2a4846b..ccb9c83c11c 100644
--- a/src/mame/includes/zaxxon.h
+++ b/src/mame/includes/zaxxon.h
@@ -48,8 +48,8 @@ WRITE8_DEVICE_HANDLER( zaxxon_sound_c_w );
WRITE8_DEVICE_HANDLER( congo_sound_b_w );
WRITE8_DEVICE_HANDLER( congo_sound_c_w );
-MACHINE_DRIVER_EXTERN( zaxxon_samples );
-MACHINE_DRIVER_EXTERN( congo_samples );
+MACHINE_CONFIG_EXTERN( zaxxon_samples );
+MACHINE_CONFIG_EXTERN( congo_samples );
/*----------- defined in video/zaxxon.c -----------*/
diff --git a/src/mame/machine/asic65.c b/src/mame/machine/asic65.c
index ad947ab92a9..ffa80459c41 100644
--- a/src/mame/machine/asic65.c
+++ b/src/mame/machine/asic65.c
@@ -538,13 +538,13 @@ ADDRESS_MAP_END
*
*************************************/
-MACHINE_DRIVER_START( asic65 )
+MACHINE_CONFIG_FRAGMENT( asic65 )
/* ASIC65 */
MDRV_CPU_ADD("asic65", TMS32010, 20000000)
MDRV_CPU_PROGRAM_MAP(asic65_program_map)
MDRV_CPU_IO_MAP(asic65_io_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/machine/asic65.h b/src/mame/machine/asic65.h
index b63f5a06fcf..f2011310014 100644
--- a/src/mame/machine/asic65.h
+++ b/src/mame/machine/asic65.h
@@ -15,4 +15,4 @@ WRITE16_HANDLER( asic65_data_w );
READ16_HANDLER( asic65_r );
READ16_HANDLER( asic65_io_r );
-MACHINE_DRIVER_EXTERN( asic65 );
+MACHINE_CONFIG_EXTERN( asic65 );
diff --git a/src/mame/machine/namco50.c b/src/mame/machine/namco50.c
index da96766d11b..8c1ddb24174 100644
--- a/src/mame/machine/namco50.c
+++ b/src/mame/machine/namco50.c
@@ -261,10 +261,10 @@ static ADDRESS_MAP_START( namco_50xx_map_io, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( namco_50xx )
+static MACHINE_CONFIG_FRAGMENT( namco_50xx )
MDRV_CPU_ADD("mcu", MB8842, DERIVED_CLOCK(1,1)) /* parent clock, internally divided by 6 */
MDRV_CPU_IO_MAP(namco_50xx_map_io)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( namco_50xx )
diff --git a/src/mame/machine/namco51.c b/src/mame/machine/namco51.c
index fa47a2fc27e..de5561801a4 100644
--- a/src/mame/machine/namco51.c
+++ b/src/mame/machine/namco51.c
@@ -357,11 +357,11 @@ static ADDRESS_MAP_START( namco_51xx_map_io, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( namco_51xx )
+static MACHINE_CONFIG_FRAGMENT( namco_51xx )
MDRV_CPU_ADD("mcu", MB8843, DERIVED_CLOCK(1,1)) /* parent clock, internally divided by 6 */
MDRV_CPU_IO_MAP(namco_51xx_map_io)
MDRV_DEVICE_DISABLE()
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( namco_51xx )
diff --git a/src/mame/machine/namco53.c b/src/mame/machine/namco53.c
index 30cf915ca48..69efb656beb 100644
--- a/src/mame/machine/namco53.c
+++ b/src/mame/machine/namco53.c
@@ -152,10 +152,10 @@ static ADDRESS_MAP_START( namco_53xx_map_io, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
-static MACHINE_DRIVER_START( namco_53xx )
+static MACHINE_CONFIG_FRAGMENT( namco_53xx )
MDRV_CPU_ADD("mcu", MB8843, DERIVED_CLOCK(1,1)) /* parent clock, internally divided by 6 */
MDRV_CPU_IO_MAP(namco_53xx_map_io)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
ROM_START( namco_53xx )
diff --git a/src/mame/machine/pcshare.c b/src/mame/machine/pcshare.c
index a7f38564686..0f5450b86fb 100644
--- a/src/mame/machine/pcshare.c
+++ b/src/mame/machine/pcshare.c
@@ -327,10 +327,10 @@ ADDRESS_MAP_START( pcat32_io_common, ADDRESS_SPACE_IO, 32 )
AM_RANGE(0x00c0, 0x00df) AM_DEVREADWRITE8("dma8237_2", i8237_r, i8237_w, 0xffff)
ADDRESS_MAP_END
-MACHINE_DRIVER_START(pcat_common)
+MACHINE_CONFIG_FRAGMENT(pcat_common)
MDRV_PIC8259_ADD( "pic8259_1", pic8259_1_config )
MDRV_PIC8259_ADD( "pic8259_2", pic8259_2_config )
MDRV_I8237_ADD( "dma8237_1", XTAL_14_31818MHz/3, dma8237_1_config )
MDRV_I8237_ADD( "dma8237_2", XTAL_14_31818MHz/3, dma8237_2_config )
MDRV_PIT8254_ADD( "pit8254", at_pit8254_config )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/video/20pacgal.c b/src/mame/video/20pacgal.c
index 7b04387c1b5..f5675c4e2d9 100644
--- a/src/mame/video/20pacgal.c
+++ b/src/mame/video/20pacgal.c
@@ -427,7 +427,7 @@ static VIDEO_UPDATE( 20pacgal )
*
*************************************/
-MACHINE_DRIVER_START( 20pacgal_video )
+MACHINE_CONFIG_FRAGMENT( 20pacgal_video )
MDRV_VIDEO_UPDATE(20pacgal)
@@ -437,4 +437,4 @@ MACHINE_DRIVER_START( 20pacgal_video )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(SCREEN_WIDTH, SCREEN_HEIGHT)
MDRV_SCREEN_VISIBLE_AREA(0, SCREEN_WIDTH - 1, 0, SCREEN_HEIGHT - 1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/video/cidelsa.c b/src/mame/video/cidelsa.c
index 3f834b29f34..7e4de9dc637 100644
--- a/src/mame/video/cidelsa.c
+++ b/src/mame/video/cidelsa.c
@@ -252,7 +252,7 @@ static const ay8910_interface ay8910_config =
/* Machine Drivers */
-MACHINE_DRIVER_START( destryer_video )
+MACHINE_CONFIG_FRAGMENT( destryer_video )
MDRV_CDP1869_SCREEN_PAL_ADD(SCREEN_TAG, DESTRYER_CHR2)
MDRV_SCREEN_DEFAULT_POSITION(1.226, 0.012, 1.4, 0.044)
@@ -262,9 +262,9 @@ MACHINE_DRIVER_START( destryer_video )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_CDP1869_ADD(CDP1869_TAG, DESTRYER_CHR2, destryer_cdp1869_intf)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( altair_video )
+MACHINE_CONFIG_FRAGMENT( altair_video )
MDRV_CDP1869_SCREEN_PAL_ADD(SCREEN_TAG, ALTAIR_CHR2)
MDRV_SCREEN_DEFAULT_POSITION(1.226, 0.012, 1.4, 0.044)
@@ -274,9 +274,9 @@ MACHINE_DRIVER_START( altair_video )
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_CDP1869_ADD(CDP1869_TAG, ALTAIR_CHR2, altair_cdp1869_intf)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( draco_video )
+MACHINE_CONFIG_FRAGMENT( draco_video )
MDRV_CDP1869_SCREEN_PAL_ADD(SCREEN_TAG, DRACO_CHR2)
MDRV_SCREEN_DEFAULT_POSITION(1.226, 0.012, 1.360, 0.024)
@@ -288,4 +288,4 @@ MACHINE_DRIVER_START( draco_video )
MDRV_SOUND_ADD(AY8910_TAG, AY8910, DRACO_SND_CHR1)
MDRV_SOUND_CONFIG(ay8910_config)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/video/crgolf.c b/src/mame/video/crgolf.c
index 87eaa1dfa98..c1b04a1dfcb 100644
--- a/src/mame/video/crgolf.c
+++ b/src/mame/video/crgolf.c
@@ -192,7 +192,7 @@ static VIDEO_UPDATE( crgolf )
*
*************************************/
-MACHINE_DRIVER_START( crgolf_video )
+MACHINE_CONFIG_FRAGMENT( crgolf_video )
MDRV_VIDEO_START(crgolf)
MDRV_VIDEO_UPDATE(crgolf)
@@ -203,4 +203,4 @@ MACHINE_DRIVER_START( crgolf_video )
MDRV_SCREEN_VISIBLE_AREA(0, 255, 8, 247)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/video/exidy440.c b/src/mame/video/exidy440.c
index ba3c43d7a1f..e983de5d9dd 100644
--- a/src/mame/video/exidy440.c
+++ b/src/mame/video/exidy440.c
@@ -483,7 +483,7 @@ static VIDEO_UPDATE( topsecex )
*
*************************************/
-MACHINE_DRIVER_START( exidy440_video )
+MACHINE_CONFIG_FRAGMENT( exidy440_video )
MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
MDRV_VIDEO_START(exidy440)
MDRV_VIDEO_UPDATE(exidy440)
@@ -492,14 +492,14 @@ MACHINE_DRIVER_START( exidy440_video )
MDRV_SCREEN_ADD("screen", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( topsecex_video )
+MACHINE_CONFIG_FRAGMENT( topsecex_video )
MDRV_VIDEO_ATTRIBUTES(0)
MDRV_VIDEO_START(topsecex)
MDRV_VIDEO_UPDATE(topsecex)
MDRV_SCREEN_MODIFY("screen")
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, TOPSECEX_VBSTART)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/video/gameplan.c b/src/mame/video/gameplan.c
index d8aef109568..dde8b213b96 100644
--- a/src/mame/video/gameplan.c
+++ b/src/mame/video/gameplan.c
@@ -337,7 +337,7 @@ static VIDEO_RESET( gameplan )
*
*************************************/
-MACHINE_DRIVER_START( gameplan_video )
+MACHINE_CONFIG_FRAGMENT( gameplan_video )
MDRV_VIDEO_START(gameplan)
MDRV_VIDEO_RESET(gameplan)
@@ -347,17 +347,16 @@ MACHINE_DRIVER_START( gameplan_video )
MDRV_SCREEN_ADD("screen", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(GAMEPLAN_PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( leprechn_video )
+MACHINE_CONFIG_FRAGMENT( leprechn_video )
MDRV_VIDEO_START(leprechn)
MDRV_VIDEO_UPDATE(leprechn)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( trvquest_video )
- MDRV_IMPORT_FROM(gameplan_video)
+MACHINE_CONFIG_DERIVED( trvquest_video, gameplan_video )
MDRV_VIDEO_START(trvquest)
MDRV_VIDEO_UPDATE(gameplan)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/video/jedi.c b/src/mame/video/jedi.c
index 85f744f04ed..8029646970e 100644
--- a/src/mame/video/jedi.c
+++ b/src/mame/video/jedi.c
@@ -354,7 +354,7 @@ static VIDEO_UPDATE( jedi )
*
*************************************/
-MACHINE_DRIVER_START( jedi_video )
+MACHINE_CONFIG_FRAGMENT( jedi_video )
MDRV_SCREEN_ADD("screen", RASTER)
@@ -365,4 +365,4 @@ MACHINE_DRIVER_START( jedi_video )
MDRV_VIDEO_START(jedi)
MDRV_VIDEO_UPDATE(jedi)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/video/leland.c b/src/mame/video/leland.c
index f7a514db9f6..576b6a72681 100644
--- a/src/mame/video/leland.c
+++ b/src/mame/video/leland.c
@@ -534,7 +534,7 @@ static VIDEO_UPDATE( ataxx )
*
*************************************/
-MACHINE_DRIVER_START( leland_video )
+MACHINE_CONFIG_FRAGMENT( leland_video )
MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
MDRV_VIDEO_START(leland)
@@ -547,13 +547,11 @@ MACHINE_DRIVER_START( leland_video )
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
MDRV_SCREEN_REFRESH_RATE(60)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( ataxx_video )
-
- MDRV_IMPORT_FROM(leland_video)
+MACHINE_CONFIG_DERIVED( ataxx_video, leland_video )
MDRV_VIDEO_START(ataxx)
MDRV_VIDEO_UPDATE(ataxx)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/video/madalien.c b/src/mame/video/madalien.c
index 9f16e66c43b..3e4b8db67aa 100644
--- a/src/mame/video/madalien.c
+++ b/src/mame/video/madalien.c
@@ -400,7 +400,7 @@ static const mc6845_interface mc6845_intf =
};
-MACHINE_DRIVER_START( madalien_video )
+MACHINE_CONFIG_FRAGMENT( madalien_video )
MDRV_SCREEN_ADD("screen", RASTER)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 336, 0, 256, 288, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -412,4 +412,4 @@ MACHINE_DRIVER_START( madalien_video )
MDRV_VIDEO_UPDATE(madalien)
MDRV_MC6845_ADD("crtc", MC6845, PIXEL_CLOCK / 8, mc6845_intf)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/video/mystston.c b/src/mame/video/mystston.c
index 3bea930d743..e67427938a9 100644
--- a/src/mame/video/mystston.c
+++ b/src/mame/video/mystston.c
@@ -321,7 +321,7 @@ GFXDECODE_END
*
*************************************/
-MACHINE_DRIVER_START( mystston_video )
+MACHINE_CONFIG_FRAGMENT( mystston_video )
MDRV_VIDEO_START(mystston)
MDRV_VIDEO_RESET(mystston)
@@ -333,4 +333,4 @@ MACHINE_DRIVER_START( mystston_video )
MDRV_SCREEN_ADD("screen", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/video/qix.c b/src/mame/video/qix.c
index 764375ebf1d..320acc286ad 100644
--- a/src/mame/video/qix.c
+++ b/src/mame/video/qix.c
@@ -446,7 +446,7 @@ static const m6809_config encryption_config =
};
-MACHINE_DRIVER_START( qix_video )
+MACHINE_CONFIG_FRAGMENT( qix_video )
MDRV_CPU_ADD("videocpu", M6809, MAIN_CLOCK_OSC/4/4) /* 1.25 MHz */
MDRV_CPU_PROGRAM_MAP(qix_video_map)
MDRV_CPU_CONFIG(encryption_config) // for kram3
@@ -459,17 +459,17 @@ MACHINE_DRIVER_START( qix_video )
MDRV_SCREEN_ADD("screen", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(QIX_CHARACTER_CLOCK*8, 256, 0, 256, 256, 0, 256) /* temporary, CRTC will configure screen */
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( zookeep_video )
+MACHINE_CONFIG_FRAGMENT( zookeep_video )
MDRV_CPU_MODIFY("videocpu")
MDRV_CPU_PROGRAM_MAP(zookeep_video_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( slither_video )
+MACHINE_CONFIG_FRAGMENT( slither_video )
MDRV_CPU_MODIFY("videocpu")
MDRV_CPU_CLOCK(SLITHER_CLOCK_OSC/4/4) /* 1.34 MHz */
MDRV_CPU_PROGRAM_MAP(slither_video_map)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/video/redalert.c b/src/mame/video/redalert.c
index b9fb7bfdc35..b5d04d8ae57 100644
--- a/src/mame/video/redalert.c
+++ b/src/mame/video/redalert.c
@@ -437,7 +437,7 @@ static VIDEO_UPDATE( panther )
*
*************************************/
-static MACHINE_DRIVER_START( redalert_video_common )
+static MACHINE_CONFIG_FRAGMENT( redalert_video_common )
MDRV_VIDEO_UPDATE(redalert)
@@ -448,21 +448,21 @@ static MACHINE_DRIVER_START( redalert_video_common )
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( redalert_video )
+MACHINE_CONFIG_FRAGMENT( redalert_video )
MDRV_VIDEO_START(redalert)
- MDRV_IMPORT_FROM( redalert_video_common )
+ MDRV_FRAGMENT_ADD( redalert_video_common )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( ww3_video )
+MACHINE_CONFIG_FRAGMENT( ww3_video )
MDRV_VIDEO_START( ww3 )
- MDRV_IMPORT_FROM( redalert_video_common )
+ MDRV_FRAGMENT_ADD( redalert_video_common )
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
/*************************************
@@ -471,7 +471,7 @@ MACHINE_DRIVER_END
*
*************************************/
-MACHINE_DRIVER_START( demoneye_video )
+MACHINE_CONFIG_FRAGMENT( demoneye_video )
MDRV_VIDEO_START(redalert)
MDRV_VIDEO_UPDATE(demoneye)
@@ -483,10 +483,10 @@ MACHINE_DRIVER_START( demoneye_video )
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
-MACHINE_DRIVER_START( panther_video )
+MACHINE_CONFIG_FRAGMENT( panther_video )
MDRV_VIDEO_START(ww3)
MDRV_VIDEO_UPDATE(panther)
@@ -498,5 +498,5 @@ MACHINE_DRIVER_START( panther_video )
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END
diff --git a/src/mame/video/stactics.c b/src/mame/video/stactics.c
index 8606a79ff47..d1da3eee341 100644
--- a/src/mame/video/stactics.c
+++ b/src/mame/video/stactics.c
@@ -409,7 +409,7 @@ static VIDEO_UPDATE( stactics )
*
*************************************/
-MACHINE_DRIVER_START( stactics_video )
+MACHINE_CONFIG_FRAGMENT( stactics_video )
MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
@@ -425,4 +425,4 @@ MACHINE_DRIVER_START( stactics_video )
MDRV_PALETTE_INIT(stactics)
MDRV_VIDEO_START(stactics)
MDRV_VIDEO_UPDATE(stactics)
-MACHINE_DRIVER_END
+MACHINE_CONFIG_END