summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--src/emu/devintrf.c44
-rw-r--r--src/emu/devintrf.h3
-rw-r--r--src/emu/disound.c2
-rw-r--r--src/emu/drivers/empty.c2
-rw-r--r--src/emu/emu.h2
-rw-r--r--src/emu/emucore.h9
-rw-r--r--src/emu/machine.c277
-rw-r--r--src/emu/machine.h220
-rw-r--r--src/emu/mconfig.c12
-rw-r--r--src/emu/mconfig.h130
-rw-r--r--src/emu/memory.c2
-rw-r--r--src/emu/video.c7
-rw-r--r--src/mame/drivers/1945kiii.c8
-rw-r--r--src/mame/drivers/2mindril.c8
-rw-r--r--src/mame/drivers/39in1.c8
-rw-r--r--src/mame/drivers/3super8.c2
-rw-r--r--src/mame/drivers/4roses.c2
-rw-r--r--src/mame/drivers/5clown.c2
-rw-r--r--src/mame/drivers/86lions.c2
-rw-r--r--src/mame/drivers/ace.c8
-rw-r--r--src/mame/drivers/acefruit.c2
-rw-r--r--src/mame/drivers/acommand.c2
-rw-r--r--src/mame/drivers/adp.c8
-rw-r--r--src/mame/drivers/albazc.c8
-rw-r--r--src/mame/drivers/albazg.c8
-rw-r--r--src/mame/drivers/alg.c2
-rw-r--r--src/mame/drivers/amaticmg.c2
-rw-r--r--src/mame/drivers/ampoker2.c2
-rw-r--r--src/mame/drivers/arcadia.c2
-rw-r--r--src/mame/drivers/argus.c6
-rw-r--r--src/mame/drivers/aristmk4.c2
-rw-r--r--src/mame/drivers/aristmk5.c2
-rw-r--r--src/mame/drivers/artmagic.c2
-rw-r--r--src/mame/drivers/asteroid.c2
-rw-r--r--src/mame/drivers/astinvad.c8
-rw-r--r--src/mame/drivers/astrocde.c2
-rw-r--r--src/mame/drivers/astrocorp.c8
-rw-r--r--src/mame/drivers/atarisy4.c2
-rw-r--r--src/mame/drivers/ataxx.c2
-rw-r--r--src/mame/drivers/atetris.c4
-rw-r--r--src/mame/drivers/attckufo.c8
-rw-r--r--src/mame/drivers/aztarac.c2
-rw-r--r--src/mame/drivers/backfire.c8
-rw-r--r--src/mame/drivers/bagman.c6
-rw-r--r--src/mame/drivers/baraduke.c2
-rw-r--r--src/mame/drivers/battlera.c2
-rw-r--r--src/mame/drivers/beaminv.c8
-rw-r--r--src/mame/drivers/beathead.c4
-rw-r--r--src/mame/drivers/beezer.c2
-rw-r--r--src/mame/drivers/berzerk.c2
-rw-r--r--src/mame/drivers/bestleag.c2
-rw-r--r--src/mame/drivers/bfcobra.c2
-rw-r--r--src/mame/drivers/bfm_sc1.c2
-rw-r--r--src/mame/drivers/bfm_sc2.c6
-rw-r--r--src/mame/drivers/bfmsys85.c2
-rw-r--r--src/mame/drivers/big10.c2
-rw-r--r--src/mame/drivers/bigfghtr.c8
-rw-r--r--src/mame/drivers/bingoc.c2
-rw-r--r--src/mame/drivers/bingor.c2
-rw-r--r--src/mame/drivers/bishjan.c4
-rw-r--r--src/mame/drivers/blackt96.c2
-rw-r--r--src/mame/drivers/blitz.c2
-rw-r--r--src/mame/drivers/bloodbro.c2
-rw-r--r--src/mame/drivers/bmcbowl.c2
-rw-r--r--src/mame/drivers/bnstars.c2
-rw-r--r--src/mame/drivers/boxer.c8
-rw-r--r--src/mame/drivers/btoads.c2
-rw-r--r--src/mame/drivers/buster.c2
-rw-r--r--src/mame/drivers/bwidow.c2
-rw-r--r--src/mame/drivers/bzone.c2
-rw-r--r--src/mame/drivers/cabaret.c2
-rw-r--r--src/mame/drivers/calchase.c2
-rw-r--r--src/mame/drivers/calomega.c2
-rw-r--r--src/mame/drivers/calorie.c8
-rw-r--r--src/mame/drivers/cardline.c2
-rw-r--r--src/mame/drivers/carpolo.c2
-rw-r--r--src/mame/drivers/carrera.c2
-rw-r--r--src/mame/drivers/caswin.c2
-rw-r--r--src/mame/drivers/cb2001.c2
-rw-r--r--src/mame/drivers/cball.c8
-rw-r--r--src/mame/drivers/cchasm.c2
-rw-r--r--src/mame/drivers/cclimber.c4
-rw-r--r--src/mame/drivers/cdi.c8
-rw-r--r--src/mame/drivers/centiped.c4
-rw-r--r--src/mame/drivers/cham24.c2
-rw-r--r--src/mame/drivers/chanbara.c8
-rw-r--r--src/mame/drivers/chihiro.c2
-rw-r--r--src/mame/drivers/chinsan.c8
-rw-r--r--src/mame/drivers/chsuper.c2
-rw-r--r--src/mame/drivers/cinemat.c2
-rw-r--r--src/mame/drivers/cischeat.c4
-rw-r--r--src/mame/drivers/clayshoo.c8
-rw-r--r--src/mame/drivers/cliffhgr.c2
-rw-r--r--src/mame/drivers/cloak.c2
-rw-r--r--src/mame/drivers/clshroad.c4
-rw-r--r--src/mame/drivers/cmmb.c2
-rw-r--r--src/mame/drivers/cntsteer.c8
-rw-r--r--src/mame/drivers/coinmstr.c2
-rw-r--r--src/mame/drivers/coinmvga.c2
-rw-r--r--src/mame/drivers/cojag.c2
-rw-r--r--src/mame/drivers/comebaby.c2
-rw-r--r--src/mame/drivers/coolridr.c2
-rw-r--r--src/mame/drivers/cps3.c2
-rw-r--r--src/mame/drivers/crbaloon.c2
-rw-r--r--src/mame/drivers/crystal.c8
-rw-r--r--src/mame/drivers/cshooter.c4
-rw-r--r--src/mame/drivers/cubeqst.c2
-rw-r--r--src/mame/drivers/cubocd32.c2
-rw-r--r--src/mame/drivers/cultures.c8
-rw-r--r--src/mame/drivers/cybertnk.c2
-rw-r--r--src/mame/drivers/cyclemb.c2
-rw-r--r--src/mame/drivers/d9final.c2
-rw-r--r--src/mame/drivers/dacholer.c8
-rw-r--r--src/mame/drivers/dambustr.c2
-rw-r--r--src/mame/drivers/darkhors.c6
-rw-r--r--src/mame/drivers/darkmist.c2
-rw-r--r--src/mame/drivers/darkseal.c2
-rw-r--r--src/mame/drivers/dblewing.c8
-rw-r--r--src/mame/drivers/dcon.c4
-rw-r--r--src/mame/drivers/ddayjlc.c8
-rw-r--r--src/mame/drivers/ddealer.c8
-rw-r--r--src/mame/drivers/ddz.c2
-rw-r--r--src/mame/drivers/deadang.c2
-rw-r--r--src/mame/drivers/dec0.c20
-rw-r--r--src/mame/drivers/deco156.c8
-rw-r--r--src/mame/drivers/deco32.c14
-rw-r--r--src/mame/drivers/deco_ld.c2
-rw-r--r--src/mame/drivers/deco_mlc.c4
-rw-r--r--src/mame/drivers/deshoros.c2
-rw-r--r--src/mame/drivers/destroyr.c8
-rw-r--r--src/mame/drivers/dgpix.c2
-rw-r--r--src/mame/drivers/discoboy.c8
-rw-r--r--src/mame/drivers/diverboy.c8
-rw-r--r--src/mame/drivers/djmain.c2
-rw-r--r--src/mame/drivers/dlair.c4
-rw-r--r--src/mame/drivers/dmndrby.c2
-rw-r--r--src/mame/drivers/dominob.c8
-rw-r--r--src/mame/drivers/dooyong.c18
-rw-r--r--src/mame/drivers/dorachan.c8
-rw-r--r--src/mame/drivers/dotrikun.c8
-rw-r--r--src/mame/drivers/dreamwld.c8
-rw-r--r--src/mame/drivers/drtomy.c8
-rw-r--r--src/mame/drivers/drw80pkr.c2
-rw-r--r--src/mame/drivers/dunhuang.c8
-rw-r--r--src/mame/drivers/dwarfd.c8
-rw-r--r--src/mame/drivers/dynadice.c8
-rw-r--r--src/mame/drivers/dynduke.c2
-rw-r--r--src/mame/drivers/egghunt.c8
-rw-r--r--src/mame/drivers/embargo.c8
-rw-r--r--src/mame/drivers/enigma2.c8
-rw-r--r--src/mame/drivers/eolith.c2
-rw-r--r--src/mame/drivers/eolith16.c2
-rw-r--r--src/mame/drivers/ertictac.c2
-rw-r--r--src/mame/drivers/esh.c2
-rw-r--r--src/mame/drivers/esripsys.c2
-rw-r--r--src/mame/drivers/ettrivia.c2
-rw-r--r--src/mame/drivers/exidy.c2
-rw-r--r--src/mame/drivers/exidy440.c2
-rw-r--r--src/mame/drivers/expro02.c2
-rw-r--r--src/mame/drivers/exterm.c2
-rw-r--r--src/mame/drivers/exzisus.c2
-rw-r--r--src/mame/drivers/f-32.c8
-rw-r--r--src/mame/drivers/fastfred.c2
-rw-r--r--src/mame/drivers/feversoc.c2
-rw-r--r--src/mame/drivers/firebeat.c4
-rw-r--r--src/mame/drivers/firefox.c2
-rw-r--r--src/mame/drivers/firetrk.c2
-rw-r--r--src/mame/drivers/flower.c2
-rw-r--r--src/mame/drivers/flyball.c8
-rw-r--r--src/mame/drivers/forte2.c2
-rw-r--r--src/mame/drivers/fortecar.c2
-rw-r--r--src/mame/drivers/funworld.c2
-rw-r--r--src/mame/drivers/gaelco2.c12
-rw-r--r--src/mame/drivers/gaelco3d.c2
-rw-r--r--src/mame/drivers/gal3.c2
-rw-r--r--src/mame/drivers/galastrm.c2
-rw-r--r--src/mame/drivers/galaxi.c8
-rw-r--r--src/mame/drivers/galaxia.c2
-rw-r--r--src/mame/drivers/galaxian.c2
-rw-r--r--src/mame/drivers/galaxold.c8
-rw-r--r--src/mame/drivers/galpani2.c2
-rw-r--r--src/mame/drivers/galpani3.c2
-rw-r--r--src/mame/drivers/galpanic.c2
-rw-r--r--src/mame/drivers/gamecstl.c2
-rw-r--r--src/mame/drivers/gaplus.c2
-rw-r--r--src/mame/drivers/gatron.c2
-rw-r--r--src/mame/drivers/gei.c2
-rw-r--r--src/mame/drivers/ggconnie.c2
-rw-r--r--src/mame/drivers/ghosteo.c2
-rw-r--r--src/mame/drivers/gladiatr.c4
-rw-r--r--src/mame/drivers/go2000.c8
-rw-r--r--src/mame/drivers/goldnpkr.c2
-rw-r--r--src/mame/drivers/gomoku.c2
-rw-r--r--src/mame/drivers/good.c8
-rw-r--r--src/mame/drivers/goodejan.c2
-rw-r--r--src/mame/drivers/gottlieb.c2
-rw-r--r--src/mame/drivers/gpworld.c2
-rw-r--r--src/mame/drivers/gridlee.c2
-rw-r--r--src/mame/drivers/groundfx.c2
-rw-r--r--src/mame/drivers/gstream.c8
-rw-r--r--src/mame/drivers/gstriker.c4
-rw-r--r--src/mame/drivers/gsword.c4
-rw-r--r--src/mame/drivers/gticlub.c4
-rw-r--r--src/mame/drivers/guab.c2
-rw-r--r--src/mame/drivers/gunbustr.c2
-rw-r--r--src/mame/drivers/gunpey.c2
-rw-r--r--src/mame/drivers/halleys.c2
-rw-r--r--src/mame/drivers/hexion.c2
-rw-r--r--src/mame/drivers/highvdeo.c4
-rw-r--r--src/mame/drivers/hikaru.c2
-rw-r--r--src/mame/drivers/hitpoker.c2
-rw-r--r--src/mame/drivers/hornet.c2
-rw-r--r--src/mame/drivers/hotblock.c8
-rw-r--r--src/mame/drivers/hotstuff.c2
-rw-r--r--src/mame/drivers/hvyunit.c2
-rw-r--r--src/mame/drivers/hyhoo.c2
-rw-r--r--src/mame/drivers/igs009.c2
-rw-r--r--src/mame/drivers/igs011.c2
-rw-r--r--src/mame/drivers/igs017.c8
-rw-r--r--src/mame/drivers/igs_m027.c2
-rw-r--r--src/mame/drivers/igspoker.c2
-rw-r--r--src/mame/drivers/ilpag.c2
-rw-r--r--src/mame/drivers/imolagp.c8
-rw-r--r--src/mame/drivers/intrscti.c2
-rw-r--r--src/mame/drivers/iqblock.c2
-rw-r--r--src/mame/drivers/irobot.c2
-rw-r--r--src/mame/drivers/istellar.c2
-rw-r--r--src/mame/drivers/itech32.c2
-rw-r--r--src/mame/drivers/itech8.c2
-rw-r--r--src/mame/drivers/itgambl2.c2
-rw-r--r--src/mame/drivers/itgambl3.c2
-rw-r--r--src/mame/drivers/itgamble.c2
-rw-r--r--src/mame/drivers/jackie.c2
-rw-r--r--src/mame/drivers/jackpool.c2
-rw-r--r--src/mame/drivers/jalmah.c2
-rw-r--r--src/mame/drivers/jangou.c8
-rw-r--r--src/mame/drivers/jantotsu.c8
-rw-r--r--src/mame/drivers/jchan.c2
-rw-r--r--src/mame/drivers/jokrwild.c2
-rw-r--r--src/mame/drivers/jollyjgr.c8
-rw-r--r--src/mame/drivers/jongkyo.c8
-rw-r--r--src/mame/drivers/jpmimpct.c4
-rw-r--r--src/mame/drivers/jpmsys5.c2
-rw-r--r--src/mame/drivers/jrpacman.c2
-rw-r--r--src/mame/drivers/kaneko16.c12
-rw-r--r--src/mame/drivers/kingdrby.c2
-rw-r--r--src/mame/drivers/kingpin.c2
-rw-r--r--src/mame/drivers/kinst.c2
-rw-r--r--src/mame/drivers/koftball.c2
-rw-r--r--src/mame/drivers/koikoi.c8
-rw-r--r--src/mame/drivers/konamigq.c2
-rw-r--r--src/mame/drivers/konamigv.c2
-rw-r--r--src/mame/drivers/konamigx.c2
-rw-r--r--src/mame/drivers/konamim2.c2
-rw-r--r--src/mame/drivers/kongambl.c2
-rw-r--r--src/mame/drivers/ksys573.c2
-rw-r--r--src/mame/drivers/kungfur.c2
-rw-r--r--src/mame/drivers/laserbas.c8
-rw-r--r--src/mame/drivers/lastfght.c8
-rw-r--r--src/mame/drivers/legionna.c14
-rw-r--r--src/mame/drivers/leland.c2
-rw-r--r--src/mame/drivers/lethalj.c2
-rw-r--r--src/mame/drivers/lgp.c2
-rw-r--r--src/mame/drivers/liberatr.c2
-rw-r--r--src/mame/drivers/limenko.c4
-rw-r--r--src/mame/drivers/littlerb.c2
-rw-r--r--src/mame/drivers/looping.c8
-rw-r--r--src/mame/drivers/lordgun.c4
-rw-r--r--src/mame/drivers/ltcasino.c2
-rw-r--r--src/mame/drivers/luckgrln.c2
-rw-r--r--src/mame/drivers/lucky74.c2
-rw-r--r--src/mame/drivers/lvcards.c2
-rw-r--r--src/mame/drivers/m107.c2
-rw-r--r--src/mame/drivers/m14.c8
-rw-r--r--src/mame/drivers/m63.c8
-rw-r--r--src/mame/drivers/m72.c26
-rw-r--r--src/mame/drivers/m79amb.c8
-rw-r--r--src/mame/drivers/m90.c8
-rw-r--r--src/mame/drivers/m92.c4
-rw-r--r--src/mame/drivers/macs.c2
-rw-r--r--src/mame/drivers/madalien.c2
-rw-r--r--src/mame/drivers/magic10.c2
-rw-r--r--src/mame/drivers/magicard.c2
-rw-r--r--src/mame/drivers/magicfly.c2
-rw-r--r--src/mame/drivers/magictg.c2
-rw-r--r--src/mame/drivers/magmax.c2
-rw-r--r--src/mame/drivers/marinedt.c8
-rw-r--r--src/mame/drivers/mastboy.c2
-rw-r--r--src/mame/drivers/maxaflex.c2
-rw-r--r--src/mame/drivers/maygay1b.c2
-rw-r--r--src/mame/drivers/maygayv1.c2
-rw-r--r--src/mame/drivers/mayumi.c8
-rw-r--r--src/mame/drivers/mazerbla.c8
-rw-r--r--src/mame/drivers/mcr.c2
-rw-r--r--src/mame/drivers/mcr3.c2
-rw-r--r--src/mame/drivers/mcr68.c4
-rw-r--r--src/mame/drivers/meadows.c6
-rw-r--r--src/mame/drivers/mediagx.c8
-rw-r--r--src/mame/drivers/megadriv.c4
-rw-r--r--src/mame/drivers/megasys1.c8
-rw-r--r--src/mame/drivers/meijinsn.c8
-rw-r--r--src/mame/drivers/merit.c2
-rw-r--r--src/mame/drivers/meritm.c2
-rw-r--r--src/mame/drivers/mgolf.c8
-rw-r--r--src/mame/drivers/mhavoc.c2
-rw-r--r--src/mame/drivers/midas.c4
-rw-r--r--src/mame/drivers/midtunit.c2
-rw-r--r--src/mame/drivers/midvunit.c2
-rw-r--r--src/mame/drivers/midwunit.c2
-rw-r--r--src/mame/drivers/midxunit.c2
-rw-r--r--src/mame/drivers/midyunit.c4
-rw-r--r--src/mame/drivers/midzeus.c4
-rw-r--r--src/mame/drivers/mil4000.c2
-rw-r--r--src/mame/drivers/miniboy7.c2
-rw-r--r--src/mame/drivers/minivadr.c8
-rw-r--r--src/mame/drivers/mirage.c8
-rw-r--r--src/mame/drivers/mirax.c2
-rw-r--r--src/mame/drivers/missile.c2
-rw-r--r--src/mame/drivers/mjsister.c8
-rw-r--r--src/mame/drivers/mlanding.c2
-rw-r--r--src/mame/drivers/model1.c4
-rw-r--r--src/mame/drivers/model2.c8
-rw-r--r--src/mame/drivers/model3.c8
-rw-r--r--src/mame/drivers/mogura.c8
-rw-r--r--src/mame/drivers/mole.c8
-rw-r--r--src/mame/drivers/monzagp.c2
-rw-r--r--src/mame/drivers/mpoker.c2
-rw-r--r--src/mame/drivers/mpu4.c2
-rw-r--r--src/mame/drivers/mpu4drvr.c4
-rw-r--r--src/mame/drivers/mpu5.c2
-rw-r--r--src/mame/drivers/mquake.c2
-rw-r--r--src/mame/drivers/ms32.c2
-rw-r--r--src/mame/drivers/multfish.c2
-rw-r--r--src/mame/drivers/multigam.c2
-rw-r--r--src/mame/drivers/murogem.c2
-rw-r--r--src/mame/drivers/murogmbl.c2
-rw-r--r--src/mame/drivers/mustache.c2
-rw-r--r--src/mame/drivers/mwarr.c8
-rw-r--r--src/mame/drivers/mystwarr.c2
-rw-r--r--src/mame/drivers/namcofl.c2
-rw-r--r--src/mame/drivers/namcona1.c2
-rw-r--r--src/mame/drivers/namconb1.c4
-rw-r--r--src/mame/drivers/namcond1.c2
-rw-r--r--src/mame/drivers/namcops2.c2
-rw-r--r--src/mame/drivers/namcos1.c2
-rw-r--r--src/mame/drivers/namcos10.c2
-rw-r--r--src/mame/drivers/namcos11.c2
-rw-r--r--src/mame/drivers/namcos12.c2
-rw-r--r--src/mame/drivers/namcos2.c12
-rw-r--r--src/mame/drivers/namcos21.c6
-rw-r--r--src/mame/drivers/namcos22.c4
-rw-r--r--src/mame/drivers/namcos23.c6
-rw-r--r--src/mame/drivers/namcos86.c2
-rw-r--r--src/mame/drivers/naomi.c2
-rw-r--r--src/mame/drivers/naughtyb.c4
-rw-r--r--src/mame/drivers/nbmj8688.c4
-rw-r--r--src/mame/drivers/nbmj8891.c2
-rw-r--r--src/mame/drivers/nbmj8900.c2
-rw-r--r--src/mame/drivers/nbmj8991.c4
-rw-r--r--src/mame/drivers/nbmj9195.c2
-rw-r--r--src/mame/drivers/neptunp2.c2
-rw-r--r--src/mame/drivers/nightgal.c8
-rw-r--r--src/mame/drivers/ninjakd2.c2
-rw-r--r--src/mame/drivers/niyanpai.c2
-rw-r--r--src/mame/drivers/nmg5.c8
-rw-r--r--src/mame/drivers/nmk16.c46
-rw-r--r--src/mame/drivers/norautp.c2
-rw-r--r--src/mame/drivers/nova2001.c8
-rw-r--r--src/mame/drivers/nwk-tr.c2
-rw-r--r--src/mame/drivers/nyny.c8
-rw-r--r--src/mame/drivers/olibochu.c8
-rw-r--r--src/mame/drivers/omegrace.c2
-rw-r--r--src/mame/drivers/onetwo.c8
-rw-r--r--src/mame/drivers/othello.c8
-rw-r--r--src/mame/drivers/pachifev.c8
-rw-r--r--src/mame/drivers/pacland.c2
-rw-r--r--src/mame/drivers/pacman.c2
-rw-r--r--src/mame/drivers/pangofun.c2
-rw-r--r--src/mame/drivers/panicr.c2
-rw-r--r--src/mame/drivers/paranoia.c2
-rw-r--r--src/mame/drivers/pasha2.c8
-rw-r--r--src/mame/drivers/pastelg.c4
-rw-r--r--src/mame/drivers/pcat_dyn.c2
-rw-r--r--src/mame/drivers/pcat_nit.c2
-rw-r--r--src/mame/drivers/pcktgal.c2
-rw-r--r--src/mame/drivers/pcxt.c4
-rw-r--r--src/mame/drivers/pengadvb.c2
-rw-r--r--src/mame/drivers/pengo.c2
-rw-r--r--src/mame/drivers/peplus.c2
-rw-r--r--src/mame/drivers/phoenix.c4
-rw-r--r--src/mame/drivers/photon.c2
-rw-r--r--src/mame/drivers/photon2.c2
-rw-r--r--src/mame/drivers/photoply.c2
-rw-r--r--src/mame/drivers/pingpong.c2
-rw-r--r--src/mame/drivers/pinkiri8.c2
-rw-r--r--src/mame/drivers/pipeline.c2
-rw-r--r--src/mame/drivers/pirates.c2
-rw-r--r--src/mame/drivers/pitnrun.c2
-rw-r--r--src/mame/drivers/pkscram.c2
-rw-r--r--src/mame/drivers/playch10.c2
-rw-r--r--src/mame/drivers/pntnpuzl.c2
-rw-r--r--src/mame/drivers/pokechmp.c2
-rw-r--r--src/mame/drivers/poker72.c2
-rw-r--r--src/mame/drivers/polepos.c4
-rw-r--r--src/mame/drivers/policetr.c2
-rw-r--r--src/mame/drivers/polyplay.c2
-rw-r--r--src/mame/drivers/poo.c2
-rw-r--r--src/mame/drivers/poolshrk.c2
-rw-r--r--src/mame/drivers/popeye.c2
-rw-r--r--src/mame/drivers/portrait.c2
-rw-r--r--src/mame/drivers/powerins.c2
-rw-r--r--src/mame/drivers/ppmast93.c2
-rw-r--r--src/mame/drivers/progolf.c2
-rw-r--r--src/mame/drivers/psattack.c2
-rw-r--r--src/mame/drivers/psychic5.c4
-rw-r--r--src/mame/drivers/pturn.c2
-rw-r--r--src/mame/drivers/punchout.c2
-rw-r--r--src/mame/drivers/pzletime.c8
-rw-r--r--src/mame/drivers/qdrmfgp.c4
-rw-r--r--src/mame/drivers/quakeat.c2
-rw-r--r--src/mame/drivers/quantum.c2
-rw-r--r--src/mame/drivers/queen.c2
-rw-r--r--src/mame/drivers/quizdna.c2
-rw-r--r--src/mame/drivers/quizo.c2
-rw-r--r--src/mame/drivers/quizpani.c2
-rw-r--r--src/mame/drivers/quizpun2.c2
-rw-r--r--src/mame/drivers/r2dtank.c2
-rw-r--r--src/mame/drivers/rabbit.c2
-rw-r--r--src/mame/drivers/raiden.c2
-rw-r--r--src/mame/drivers/raiden2.c4
-rw-r--r--src/mame/drivers/rbmk.c2
-rw-r--r--src/mame/drivers/rcorsair.c2
-rw-r--r--src/mame/drivers/re900.c2
-rw-r--r--src/mame/drivers/realbrk.c2
-rw-r--r--src/mame/drivers/redalert.c8
-rw-r--r--src/mame/drivers/renegade.c2
-rw-r--r--src/mame/drivers/retofinv.c2
-rw-r--r--src/mame/drivers/rgum.c2
-rw-r--r--src/mame/drivers/rmhaihai.c2
-rw-r--r--src/mame/drivers/rollrace.c2
-rw-r--r--src/mame/drivers/rotaryf.c2
-rw-r--r--src/mame/drivers/roul.c2
-rw-r--r--src/mame/drivers/route16.c2
-rw-r--r--src/mame/drivers/royalmah.c2
-rw-r--r--src/mame/drivers/rpunch.c2
-rw-r--r--src/mame/drivers/runaway.c2
-rw-r--r--src/mame/drivers/safarir.c8
-rw-r--r--src/mame/drivers/sandscrp.c2
-rw-r--r--src/mame/drivers/sangho.c4
-rw-r--r--src/mame/drivers/sauro.c2
-rw-r--r--src/mame/drivers/savquest.c2
-rw-r--r--src/mame/drivers/sbowling.c8
-rw-r--r--src/mame/drivers/sbrkout.c2
-rw-r--r--src/mame/drivers/scobra.c4
-rw-r--r--src/mame/drivers/scotrsht.c2
-rw-r--r--src/mame/drivers/scramble.c4
-rw-r--r--src/mame/drivers/seattle.c2
-rw-r--r--src/mame/drivers/segac2.c2
-rw-r--r--src/mame/drivers/segae.c2
-rw-r--r--src/mame/drivers/segag80r.c2
-rw-r--r--src/mame/drivers/segag80v.c2
-rw-r--r--src/mame/drivers/segald.c2
-rw-r--r--src/mame/drivers/segamsys.c2
-rw-r--r--src/mame/drivers/segas24.c2
-rw-r--r--src/mame/drivers/segas32.c4
-rw-r--r--src/mame/drivers/seibuspi.c6
-rw-r--r--src/mame/drivers/seicross.c2
-rw-r--r--src/mame/drivers/sengokmj.c2
-rw-r--r--src/mame/drivers/senjyo.c2
-rw-r--r--src/mame/drivers/sfbonus.c2
-rw-r--r--src/mame/drivers/sfkick.c2
-rw-r--r--src/mame/drivers/sg1000a.c2
-rw-r--r--src/mame/drivers/shangha3.c6
-rw-r--r--src/mame/drivers/shanghai.c6
-rw-r--r--src/mame/drivers/shangkid.c4
-rw-r--r--src/mame/drivers/shaolins.c2
-rw-r--r--src/mame/drivers/shisen.c2
-rw-r--r--src/mame/drivers/shougi.c8
-rw-r--r--src/mame/drivers/sigmab52.c2
-rw-r--r--src/mame/drivers/sigmab98.c2
-rw-r--r--src/mame/drivers/skeetsht.c8
-rw-r--r--src/mame/drivers/skimaxx.c2
-rw-r--r--src/mame/drivers/skyarmy.c8
-rw-r--r--src/mame/drivers/skydiver.c2
-rw-r--r--src/mame/drivers/skykid.c2
-rw-r--r--src/mame/drivers/skylncr.c2
-rw-r--r--src/mame/drivers/skyraid.c2
-rw-r--r--src/mame/drivers/slapfght.c8
-rw-r--r--src/mame/drivers/sliver.c8
-rw-r--r--src/mame/drivers/slotcarn.c2
-rw-r--r--src/mame/drivers/sms.c2
-rw-r--r--src/mame/drivers/snookr10.c2
-rw-r--r--src/mame/drivers/snowbros.c8
-rw-r--r--src/mame/drivers/solomon.c2
-rw-r--r--src/mame/drivers/sothello.c2
-rw-r--r--src/mame/drivers/spacefb.c2
-rw-r--r--src/mame/drivers/spaceg.c8
-rw-r--r--src/mame/drivers/spcforce.c2
-rw-r--r--src/mame/drivers/spdodgeb.c2
-rw-r--r--src/mame/drivers/speedatk.c2
-rw-r--r--src/mame/drivers/speedbal.c2
-rw-r--r--src/mame/drivers/speedspn.c2
-rw-r--r--src/mame/drivers/speglsht.c2
-rw-r--r--src/mame/drivers/spiders.c2
-rw-r--r--src/mame/drivers/splash.c6
-rw-r--r--src/mame/drivers/spoker.c8
-rw-r--r--src/mame/drivers/spool99.c8
-rw-r--r--src/mame/drivers/sprcros2.c2
-rw-r--r--src/mame/drivers/sprint2.c2
-rw-r--r--src/mame/drivers/sprint4.c2
-rw-r--r--src/mame/drivers/sprint8.c2
-rw-r--r--src/mame/drivers/srmp5.c8
-rw-r--r--src/mame/drivers/srmp6.c8
-rw-r--r--src/mame/drivers/srumbler.c2
-rw-r--r--src/mame/drivers/ssfindo.c4
-rw-r--r--src/mame/drivers/sshangha.c2
-rw-r--r--src/mame/drivers/ssingles.c8
-rw-r--r--src/mame/drivers/ssozumo.c2
-rw-r--r--src/mame/drivers/sspeedr.c2
-rw-r--r--src/mame/drivers/ssrj.c2
-rw-r--r--src/mame/drivers/sstrangr.c8
-rw-r--r--src/mame/drivers/st0016.c2
-rw-r--r--src/mame/drivers/stadhero.c2
-rw-r--r--src/mame/drivers/starcrus.c2
-rw-r--r--src/mame/drivers/starfire.c2
-rw-r--r--src/mame/drivers/starshp1.c2
-rw-r--r--src/mame/drivers/starwars.c2
-rw-r--r--src/mame/drivers/statriv2.c2
-rw-r--r--src/mame/drivers/stepstag.c2
-rw-r--r--src/mame/drivers/stfight.c2
-rw-r--r--src/mame/drivers/strnskil.c2
-rw-r--r--src/mame/drivers/stv.c2
-rw-r--r--src/mame/drivers/sub.c8
-rw-r--r--src/mame/drivers/subs.c2
-rw-r--r--src/mame/drivers/subsino.c10
-rw-r--r--src/mame/drivers/suna16.c8
-rw-r--r--src/mame/drivers/suna8.c10
-rw-r--r--src/mame/drivers/supdrapo.c8
-rw-r--r--src/mame/drivers/superchs.c2
-rw-r--r--src/mame/drivers/superdq.c8
-rw-r--r--src/mame/drivers/superqix.c8
-rw-r--r--src/mame/drivers/supertnk.c8
-rw-r--r--src/mame/drivers/suprgolf.c8
-rw-r--r--src/mame/drivers/suprloco.c2
-rw-r--r--src/mame/drivers/suprnova.c2
-rw-r--r--src/mame/drivers/suprridr.c2
-rw-r--r--src/mame/drivers/system1.c2
-rw-r--r--src/mame/drivers/tagteam.c2
-rw-r--r--src/mame/drivers/taito_f3.c4
-rw-r--r--src/mame/drivers/taitogn.c2
-rw-r--r--src/mame/drivers/taitopjc.c2
-rw-r--r--src/mame/drivers/taitosj.c2
-rw-r--r--src/mame/drivers/taitotz.c2
-rw-r--r--src/mame/drivers/taitowlf.c2
-rw-r--r--src/mame/drivers/tank8.c2
-rw-r--r--src/mame/drivers/tankbatt.c2
-rw-r--r--src/mame/drivers/tankbust.c2
-rw-r--r--src/mame/drivers/taotaido.c2
-rw-r--r--src/mame/drivers/targeth.c2
-rw-r--r--src/mame/drivers/tatsumi.c8
-rw-r--r--src/mame/drivers/tattack.c2
-rw-r--r--src/mame/drivers/taxidrvr.c2
-rw-r--r--src/mame/drivers/tbowl.c2
-rw-r--r--src/mame/drivers/tceptor.c2
-rw-r--r--src/mame/drivers/tcl.c2
-rw-r--r--src/mame/drivers/tecmo.c4
-rw-r--r--src/mame/drivers/tecmo16.c2
-rw-r--r--src/mame/drivers/tecmosys.c2
-rw-r--r--src/mame/drivers/tehkanwc.c2
-rw-r--r--src/mame/drivers/tempest.c2
-rw-r--r--src/mame/drivers/terracre.c6
-rw-r--r--src/mame/drivers/tetrisp2.c10
-rw-r--r--src/mame/drivers/tgtpanic.c2
-rw-r--r--src/mame/drivers/thayers.c2
-rw-r--r--src/mame/drivers/thedeep.c2
-rw-r--r--src/mame/drivers/thepit.c2
-rw-r--r--src/mame/drivers/thief.c6
-rw-r--r--src/mame/drivers/thoop2.c2
-rw-r--r--src/mame/drivers/tiamc1.c2
-rw-r--r--src/mame/drivers/tickee.c6
-rw-r--r--src/mame/drivers/tigeroad.c2
-rw-r--r--src/mame/drivers/timelimt.c2
-rw-r--r--src/mame/drivers/timetrv.c2
-rw-r--r--src/mame/drivers/tmaster.c4
-rw-r--r--src/mame/drivers/tmmjprd.c2
-rw-r--r--src/mame/drivers/toki.c4
-rw-r--r--src/mame/drivers/tokyocop.c2
-rw-r--r--src/mame/drivers/tomcat.c2
-rw-r--r--src/mame/drivers/toratora.c8
-rw-r--r--src/mame/drivers/tourtabl.c2
-rw-r--r--src/mame/drivers/tp84.c2
-rw-r--r--src/mame/drivers/triforce.c2
-rw-r--r--src/mame/drivers/triplhnt.c2
-rw-r--r--src/mame/drivers/truco.c2
-rw-r--r--src/mame/drivers/trucocl.c2
-rw-r--r--src/mame/drivers/trvmadns.c2
-rw-r--r--src/mame/drivers/tryout.c2
-rw-r--r--src/mame/drivers/tsamurai.c6
-rw-r--r--src/mame/drivers/ttchamp.c2
-rw-r--r--src/mame/drivers/tubep.c4
-rw-r--r--src/mame/drivers/tugboat.c2
-rw-r--r--src/mame/drivers/turrett.c2
-rw-r--r--src/mame/drivers/twin16.c4
-rw-r--r--src/mame/drivers/twincobr.c2
-rw-r--r--src/mame/drivers/twinkle.c2
-rw-r--r--src/mame/drivers/twins.c4
-rw-r--r--src/mame/drivers/tx1.c6
-rw-r--r--src/mame/drivers/uapce.c2
-rw-r--r--src/mame/drivers/ultratnk.c2
-rw-r--r--src/mame/drivers/ultrsprt.c2
-rw-r--r--src/mame/drivers/undrfire.c4
-rw-r--r--src/mame/drivers/unico.c6
-rw-r--r--src/mame/drivers/upscope.c2
-rw-r--r--src/mame/drivers/usgames.c2
-rw-r--r--src/mame/drivers/vamphalf.c4
-rw-r--r--src/mame/drivers/vball.c2
-rw-r--r--src/mame/drivers/vcombat.c4
-rw-r--r--src/mame/drivers/vega.c2
-rw-r--r--src/mame/drivers/vegaeo.c2
-rw-r--r--src/mame/drivers/vegas.c2
-rw-r--r--src/mame/drivers/vertigo.c2
-rw-r--r--src/mame/drivers/vicdual.c2
-rw-r--r--src/mame/drivers/victory.c2
-rw-r--r--src/mame/drivers/videopin.c2
-rw-r--r--src/mame/drivers/videopkr.c2
-rw-r--r--src/mame/drivers/vigilant.c6
-rw-r--r--src/mame/drivers/viper.c2
-rw-r--r--src/mame/drivers/vp101.c2
-rw-r--r--src/mame/drivers/vpoker.c2
-rw-r--r--src/mame/drivers/vroulet.c2
-rw-r--r--src/mame/drivers/vsnes.c4
-rw-r--r--src/mame/drivers/vulgus.c2
-rw-r--r--src/mame/drivers/wallc.c2
-rw-r--r--src/mame/drivers/wardner.c2
-rw-r--r--src/mame/drivers/warpwarp.c4
-rw-r--r--src/mame/drivers/wc90.c2
-rw-r--r--src/mame/drivers/wc90b.c2
-rw-r--r--src/mame/drivers/wecleman.c4
-rw-r--r--src/mame/drivers/wheelfir.c11
-rw-r--r--src/mame/drivers/williams.c4
-rw-r--r--src/mame/drivers/wink.c2
-rw-r--r--src/mame/drivers/wiping.c2
-rw-r--r--src/mame/drivers/witch.c2
-rw-r--r--src/mame/drivers/wiz.c2
-rw-r--r--src/mame/drivers/wldarrow.c2
-rw-r--r--src/mame/drivers/wolfpack.c2
-rw-r--r--src/mame/drivers/wrally.c2
-rw-r--r--src/mame/drivers/wwfwfest.c2
-rw-r--r--src/mame/drivers/xain.c2
-rw-r--r--src/mame/drivers/xorworld.c2
-rw-r--r--src/mame/drivers/xtheball.c2
-rw-r--r--src/mame/drivers/xxmissio.c2
-rw-r--r--src/mame/drivers/zac2650.c2
-rw-r--r--src/mame/drivers/zaccaria.c2
-rw-r--r--src/mame/drivers/zn.c4
-rw-r--r--src/mame/drivers/zr107.c4
-rw-r--r--src/mame/includes/1942.h8
-rw-r--r--src/mame/includes/1943.h8
-rw-r--r--src/mame/includes/20pacgal.h8
-rw-r--r--src/mame/includes/4enraya.h8
-rw-r--r--src/mame/includes/88games.h8
-rw-r--r--src/mame/includes/actfancr.h8
-rw-r--r--src/mame/includes/aeroboto.h8
-rw-r--r--src/mame/includes/aerofgt.h8
-rw-r--r--src/mame/includes/airbustr.h8
-rw-r--r--src/mame/includes/ajax.h8
-rw-r--r--src/mame/includes/aliens.h8
-rw-r--r--src/mame/includes/alpha68k.h8
-rw-r--r--src/mame/includes/ambush.h8
-rw-r--r--src/mame/includes/amspdwy.h8
-rw-r--r--src/mame/includes/angelkds.h8
-rw-r--r--src/mame/includes/appoooh.h8
-rw-r--r--src/mame/includes/aquarium.h8
-rw-r--r--src/mame/includes/arabian.h8
-rw-r--r--src/mame/includes/arkanoid.h8
-rw-r--r--src/mame/includes/armedf.h8
-rw-r--r--src/mame/includes/ashnojoe.h8
-rw-r--r--src/mame/includes/asterix.h8
-rw-r--r--src/mame/includes/astrof.h8
-rw-r--r--src/mame/includes/asuka.h8
-rw-r--r--src/mame/includes/atarifb.h8
-rw-r--r--src/mame/includes/atarig1.h6
-rw-r--r--src/mame/includes/atarig42.h6
-rw-r--r--src/mame/includes/atarigt.h6
-rw-r--r--src/mame/includes/atarigx2.h6
-rw-r--r--src/mame/includes/atarisy1.h6
-rw-r--r--src/mame/includes/atarisy2.h6
-rw-r--r--src/mame/includes/avalnche.h8
-rw-r--r--src/mame/includes/badlands.h6
-rw-r--r--src/mame/includes/balsente.h8
-rw-r--r--src/mame/includes/bankp.h8
-rw-r--r--src/mame/includes/batman.h6
-rw-r--r--src/mame/includes/battlane.h8
-rw-r--r--src/mame/includes/battlex.h8
-rw-r--r--src/mame/includes/battlnts.h8
-rw-r--r--src/mame/includes/bbusters.h8
-rw-r--r--src/mame/includes/beathead.h12
-rw-r--r--src/mame/includes/bigevglf.h8
-rw-r--r--src/mame/includes/bigstrkb.h8
-rw-r--r--src/mame/includes/bionicc.h8
-rw-r--r--src/mame/includes/bishi.h8
-rw-r--r--src/mame/includes/bladestl.h8
-rw-r--r--src/mame/includes/blktiger.h8
-rw-r--r--src/mame/includes/blmbycar.h8
-rw-r--r--src/mame/includes/blockade.h8
-rw-r--r--src/mame/includes/blockhl.h8
-rw-r--r--src/mame/includes/blockout.h8
-rw-r--r--src/mame/includes/blstroid.h6
-rw-r--r--src/mame/includes/blueprnt.h8
-rw-r--r--src/mame/includes/bogeyman.h8
-rw-r--r--src/mame/includes/bombjack.h8
-rw-r--r--src/mame/includes/boogwing.h8
-rw-r--r--src/mame/includes/bottom9.h8
-rw-r--r--src/mame/includes/brkthru.h8
-rw-r--r--src/mame/includes/bsktball.h8
-rw-r--r--src/mame/includes/btime.h8
-rw-r--r--src/mame/includes/bublbobl.h8
-rw-r--r--src/mame/includes/buggychl.h8
-rw-r--r--src/mame/includes/bwing.h8
-rw-r--r--src/mame/includes/cabal.h8
-rw-r--r--src/mame/includes/canyon.h8
-rw-r--r--src/mame/includes/capbowl.h8
-rw-r--r--src/mame/includes/carjmbre.h8
-rw-r--r--src/mame/includes/cave.h8
-rw-r--r--src/mame/includes/cbasebal.h8
-rw-r--r--src/mame/includes/cbuster.h8
-rw-r--r--src/mame/includes/ccastles.h8
-rw-r--r--src/mame/includes/chaknpop.h8
-rw-r--r--src/mame/includes/champbas.h8
-rw-r--r--src/mame/includes/changela.h8
-rw-r--r--src/mame/includes/cheekyms.h8
-rw-r--r--src/mame/includes/chqflag.h8
-rw-r--r--src/mame/includes/cidelsa.h8
-rw-r--r--src/mame/includes/circus.h8
-rw-r--r--src/mame/includes/circusc.h8
-rw-r--r--src/mame/includes/citycon.h8
-rw-r--r--src/mame/includes/cloud9.h8
-rw-r--r--src/mame/includes/cninja.h8
-rw-r--r--src/mame/includes/combatsc.h8
-rw-r--r--src/mame/includes/commando.h8
-rw-r--r--src/mame/includes/compgolf.h8
-rw-r--r--src/mame/includes/contra.h8
-rw-r--r--src/mame/includes/coolpool.h8
-rw-r--r--src/mame/includes/cop01.h8
-rw-r--r--src/mame/includes/copsnrob.h8
-rw-r--r--src/mame/includes/cosmic.h8
-rw-r--r--src/mame/includes/cps1.h8
-rw-r--r--src/mame/includes/crgolf.h8
-rw-r--r--src/mame/includes/crimfght.h8
-rw-r--r--src/mame/includes/crospang.h8
-rw-r--r--src/mame/includes/crshrace.h8
-rw-r--r--src/mame/includes/cvs.h8
-rw-r--r--src/mame/includes/cyberbal.h6
-rw-r--r--src/mame/includes/darius.h8
-rw-r--r--src/mame/includes/dassault.h8
-rw-r--r--src/mame/includes/dbz.h8
-rw-r--r--src/mame/includes/dcheese.h8
-rw-r--r--src/mame/includes/dday.h8
-rw-r--r--src/mame/includes/ddragon.h8
-rw-r--r--src/mame/includes/ddragon3.h8
-rw-r--r--src/mame/includes/ddribble.h8
-rw-r--r--src/mame/includes/dec8.h8
-rw-r--r--src/mame/includes/deniam.h8
-rw-r--r--src/mame/includes/dietgo.h8
-rw-r--r--src/mame/includes/djboy.h8
-rw-r--r--src/mame/includes/dkong.h8
-rw-r--r--src/mame/includes/docastle.h8
-rw-r--r--src/mame/includes/dogfgt.h8
-rw-r--r--src/mame/includes/dragrace.h8
-rw-r--r--src/mame/includes/drgnmst.h8
-rw-r--r--src/mame/includes/dribling.h8
-rw-r--r--src/mame/includes/drmicro.h8
-rw-r--r--src/mame/includes/dynax.h8
-rw-r--r--src/mame/includes/epos.h8
-rw-r--r--src/mame/includes/eprom.h6
-rw-r--r--src/mame/includes/equites.h8
-rw-r--r--src/mame/includes/esd16.h8
-rw-r--r--src/mame/includes/espial.h8
-rw-r--r--src/mame/includes/exedexes.h8
-rw-r--r--src/mame/includes/exerion.h8
-rw-r--r--src/mame/includes/exprraid.h8
-rw-r--r--src/mame/includes/f1gp.h8
-rw-r--r--src/mame/includes/fantland.h8
-rw-r--r--src/mame/includes/fastlane.h8
-rw-r--r--src/mame/includes/fcombat.h8
-rw-r--r--src/mame/includes/fgoal.h8
-rw-r--r--src/mame/includes/finalizr.h8
-rw-r--r--src/mame/includes/firetrap.h8
-rw-r--r--src/mame/includes/fitfight.h8
-rw-r--r--src/mame/includes/flkatck.h8
-rw-r--r--src/mame/includes/flstory.h8
-rw-r--r--src/mame/includes/foodf.h6
-rw-r--r--src/mame/includes/freekick.h8
-rw-r--r--src/mame/includes/fromanc2.h8
-rw-r--r--src/mame/includes/fromance.h8
-rw-r--r--src/mame/includes/funkybee.h8
-rw-r--r--src/mame/includes/funkyjet.h8
-rw-r--r--src/mame/includes/funybubl.h8
-rw-r--r--src/mame/includes/fuukifg2.h8
-rw-r--r--src/mame/includes/fuukifg3.h8
-rw-r--r--src/mame/includes/gaelco.h8
-rw-r--r--src/mame/includes/gaiden.h8
-rw-r--r--src/mame/includes/galaga.h8
-rw-r--r--src/mame/includes/galivan.h8
-rw-r--r--src/mame/includes/galspnbl.h8
-rw-r--r--src/mame/includes/gameplan.h8
-rw-r--r--src/mame/includes/gauntlet.h6
-rw-r--r--src/mame/includes/gberet.h8
-rw-r--r--src/mame/includes/gbusters.h8
-rw-r--r--src/mame/includes/gcpinbal.h8
-rw-r--r--src/mame/includes/gijoe.h8
-rw-r--r--src/mame/includes/ginganin.h8
-rw-r--r--src/mame/includes/glass.h8
-rw-r--r--src/mame/includes/gng.h8
-rw-r--r--src/mame/includes/goal92.h8
-rw-r--r--src/mame/includes/goindol.h8
-rw-r--r--src/mame/includes/goldstar.h8
-rw-r--r--src/mame/includes/gotcha.h8
-rw-r--r--src/mame/includes/gotya.h8
-rw-r--r--src/mame/includes/gradius3.h8
-rw-r--r--src/mame/includes/grchamp.h8
-rw-r--r--src/mame/includes/gumbo.h8
-rw-r--r--src/mame/includes/gundealr.h8
-rw-r--r--src/mame/includes/gunsmoke.h8
-rw-r--r--src/mame/includes/gyruss.h8
-rw-r--r--src/mame/includes/hanaawas.h8
-rw-r--r--src/mame/includes/harddriv.h29
-rw-r--r--src/mame/includes/hcastle.h8
-rw-r--r--src/mame/includes/higemaru.h8
-rw-r--r--src/mame/includes/himesiki.h8
-rw-r--r--src/mame/includes/hitme.h8
-rw-r--r--src/mame/includes/hnayayoi.h8
-rw-r--r--src/mame/includes/hng64.h8
-rw-r--r--src/mame/includes/holeland.h8
-rw-r--r--src/mame/includes/homedata.h8
-rw-r--r--src/mame/includes/homerun.h8
-rw-r--r--src/mame/includes/hyprduel.h8
-rw-r--r--src/mame/includes/ikki.h8
-rw-r--r--src/mame/includes/inufuku.h8
-rw-r--r--src/mame/includes/iremz80.h8
-rw-r--r--src/mame/includes/ironhors.h8
-rw-r--r--src/mame/includes/jack.h8
-rw-r--r--src/mame/includes/jackal.h8
-rw-r--r--src/mame/includes/jailbrek.h8
-rw-r--r--src/mame/includes/jedi.h8
-rw-r--r--src/mame/includes/kangaroo.h8
-rw-r--r--src/mame/includes/karnov.h8
-rw-r--r--src/mame/includes/kchamp.h8
-rw-r--r--src/mame/includes/kickgoal.h8
-rw-r--r--src/mame/includes/kingobox.h8
-rw-r--r--src/mame/includes/klax.h6
-rw-r--r--src/mame/includes/kncljoe.h8
-rw-r--r--src/mame/includes/kopunch.h8
-rw-r--r--src/mame/includes/ksayakyu.h8
-rw-r--r--src/mame/includes/kyugo.h8
-rw-r--r--src/mame/includes/labyrunr.h8
-rw-r--r--src/mame/includes/ladybug.h8
-rw-r--r--src/mame/includes/ladyfrog.h8
-rw-r--r--src/mame/includes/laserbat.h8
-rw-r--r--src/mame/includes/lasso.h8
-rw-r--r--src/mame/includes/lastduel.h8
-rw-r--r--src/mame/includes/lazercmd.h8
-rw-r--r--src/mame/includes/lemmings.h8
-rw-r--r--src/mame/includes/lethal.h8
-rw-r--r--src/mame/includes/liberate.h8
-rw-r--r--src/mame/includes/lkage.h8
-rw-r--r--src/mame/includes/lockon.h8
-rw-r--r--src/mame/includes/lsasquad.h8
-rw-r--r--src/mame/includes/lwings.h8
-rw-r--r--src/mame/includes/m10.h8
-rw-r--r--src/mame/includes/macrossp.h8
-rw-r--r--src/mame/includes/madmotor.h8
-rw-r--r--src/mame/includes/mainevt.h8
-rw-r--r--src/mame/includes/mainsnk.h8
-rw-r--r--src/mame/includes/malzak.h8
-rw-r--r--src/mame/includes/mappy.h8
-rw-r--r--src/mame/includes/mario.h8
-rw-r--r--src/mame/includes/markham.h8
-rw-r--r--src/mame/includes/matmania.h8
-rw-r--r--src/mame/includes/mcatadv.h8
-rw-r--r--src/mame/includes/megazone.h8
-rw-r--r--src/mame/includes/mermaid.h8
-rw-r--r--src/mame/includes/metalmx.h8
-rw-r--r--src/mame/includes/metlclsh.h8
-rw-r--r--src/mame/includes/metro.h8
-rw-r--r--src/mame/includes/mexico86.h8
-rw-r--r--src/mame/includes/micro3d.h8
-rw-r--r--src/mame/includes/mikie.h8
-rw-r--r--src/mame/includes/mitchell.h8
-rw-r--r--src/mame/includes/mjkjidai.h8
-rw-r--r--src/mame/includes/momoko.h8
-rw-r--r--src/mame/includes/moo.h8
-rw-r--r--src/mame/includes/mosaic.h8
-rw-r--r--src/mame/includes/mouser.h8
-rw-r--r--src/mame/includes/mrdo.h8
-rw-r--r--src/mame/includes/mrflea.h8
-rw-r--r--src/mame/includes/mrjong.h8
-rw-r--r--src/mame/includes/mugsmash.h8
-rw-r--r--src/mame/includes/munchmo.h8
-rw-r--r--src/mame/includes/mw8080bw.h8
-rw-r--r--src/mame/includes/mystston.h8
-rw-r--r--src/mame/includes/n64.h8
-rw-r--r--src/mame/includes/n8080.h8
-rw-r--r--src/mame/includes/nemesis.h8
-rw-r--r--src/mame/includes/neogeo.h8
-rw-r--r--src/mame/includes/news.h8
-rw-r--r--src/mame/includes/ninjaw.h8
-rw-r--r--src/mame/includes/nitedrvr.h8
-rw-r--r--src/mame/includes/nycaptor.h8
-rw-r--r--src/mame/includes/offtwall.h6
-rw-r--r--src/mame/includes/ohmygod.h8
-rw-r--r--src/mame/includes/ojankohs.h8
-rw-r--r--src/mame/includes/oneshot.h8
-rw-r--r--src/mame/includes/opwolf.h8
-rw-r--r--src/mame/includes/orbit.h8
-rw-r--r--src/mame/includes/othldrby.h8
-rw-r--r--src/mame/includes/othunder.h8
-rw-r--r--src/mame/includes/overdriv.h8
-rw-r--r--src/mame/includes/pandoras.h8
-rw-r--r--src/mame/includes/paradise.h8
-rw-r--r--src/mame/includes/parodius.h8
-rw-r--r--src/mame/includes/pass.h8
-rw-r--r--src/mame/includes/pbaction.h8
-rw-r--r--src/mame/includes/pgm.h8
-rw-r--r--src/mame/includes/pktgaldx.h8
-rw-r--r--src/mame/includes/playmark.h8
-rw-r--r--src/mame/includes/plygonet.h8
-rw-r--r--src/mame/includes/popper.h8
-rw-r--r--src/mame/includes/prehisle.h8
-rw-r--r--src/mame/includes/psikyo.h8
-rw-r--r--src/mame/includes/psikyo4.h8
-rw-r--r--src/mame/includes/psikyosh.h8
-rw-r--r--src/mame/includes/pushman.h8
-rw-r--r--src/mame/includes/qix.h8
-rw-r--r--src/mame/includes/rainbow.h8
-rw-r--r--src/mame/includes/rampart.h6
-rw-r--r--src/mame/includes/rastan.h8
-rw-r--r--src/mame/includes/relief.h6
-rw-r--r--src/mame/includes/rockrage.h8
-rw-r--r--src/mame/includes/rohga.h8
-rw-r--r--src/mame/includes/rollerg.h8
-rw-r--r--src/mame/includes/rungun.h8
-rw-r--r--src/mame/includes/sbugger.h8
-rw-r--r--src/mame/includes/sderby.h8
-rw-r--r--src/mame/includes/segas16.h8
-rw-r--r--src/mame/includes/seta.h8
-rw-r--r--src/mame/includes/seta2.h8
-rw-r--r--src/mame/includes/sf.h8
-rw-r--r--src/mame/includes/shadfrce.h8
-rw-r--r--src/mame/includes/shootout.h8
-rw-r--r--src/mame/includes/shuuz.h6
-rw-r--r--src/mame/includes/sidearms.h8
-rw-r--r--src/mame/includes/sidepckt.h8
-rw-r--r--src/mame/includes/silkroad.h8
-rw-r--r--src/mame/includes/simpl156.h8
-rw-r--r--src/mame/includes/simpsons.h8
-rw-r--r--src/mame/includes/skullxbo.h6
-rw-r--r--src/mame/includes/skyfox.h8
-rw-r--r--src/mame/includes/slapshot.h8
-rw-r--r--src/mame/includes/snes.h8
-rw-r--r--src/mame/includes/snk.h8
-rw-r--r--src/mame/includes/snk6502.h8
-rw-r--r--src/mame/includes/snk68.h8
-rw-r--r--src/mame/includes/sonson.h8
-rw-r--r--src/mame/includes/spbactn.h8
-rw-r--r--src/mame/includes/spy.h8
-rw-r--r--src/mame/includes/srmp2.h8
-rw-r--r--src/mame/includes/sslam.h8
-rw-r--r--src/mame/includes/ssv.h8
-rw-r--r--src/mame/includes/stactics.h8
-rw-r--r--src/mame/includes/stlforce.h8
-rw-r--r--src/mame/includes/supbtime.h8
-rw-r--r--src/mame/includes/suprslam.h8
-rw-r--r--src/mame/includes/surpratk.h8
-rw-r--r--src/mame/includes/system16.h8
-rw-r--r--src/mame/includes/tail2nos.h8
-rw-r--r--src/mame/includes/taito_b.h8
-rw-r--r--src/mame/includes/taito_f2.h8
-rw-r--r--src/mame/includes/taito_h.h8
-rw-r--r--src/mame/includes/taito_l.h8
-rw-r--r--src/mame/includes/taito_o.h8
-rw-r--r--src/mame/includes/taito_z.h8
-rw-r--r--src/mame/includes/taitoair.h8
-rw-r--r--src/mame/includes/taitojc.h8
-rw-r--r--src/mame/includes/thunderj.h6
-rw-r--r--src/mame/includes/thunderx.h8
-rw-r--r--src/mame/includes/timeplt.h8
-rw-r--r--src/mame/includes/tmnt.h8
-rw-r--r--src/mame/includes/tnzs.h8
-rw-r--r--src/mame/includes/toaplan1.h8
-rw-r--r--src/mame/includes/toaplan2.h8
-rw-r--r--src/mame/includes/toobin.h6
-rw-r--r--src/mame/includes/topspeed.h8
-rw-r--r--src/mame/includes/toypop.h8
-rw-r--r--src/mame/includes/trackfld.h8
-rw-r--r--src/mame/includes/tumbleb.h8
-rw-r--r--src/mame/includes/tumblep.h8
-rw-r--r--src/mame/includes/tunhunt.h8
-rw-r--r--src/mame/includes/turbo.h8
-rw-r--r--src/mame/includes/ultraman.h8
-rw-r--r--src/mame/includes/vaportra.h8
-rw-r--r--src/mame/includes/vastar.h8
-rw-r--r--src/mame/includes/vendetta.h8
-rw-r--r--src/mame/includes/vindictr.h6
-rw-r--r--src/mame/includes/volfied.h8
-rw-r--r--src/mame/includes/warriorb.h8
-rw-r--r--src/mame/includes/welltris.h8
-rw-r--r--src/mame/includes/wgp.h8
-rw-r--r--src/mame/includes/wwfsstar.h8
-rw-r--r--src/mame/includes/xexex.h8
-rw-r--r--src/mame/includes/xmen.h8
-rw-r--r--src/mame/includes/xybots.h6
-rw-r--r--src/mame/includes/xyonix.h8
-rw-r--r--src/mame/includes/yunsun16.h8
-rw-r--r--src/mame/includes/yunsung8.h8
-rw-r--r--src/mame/includes/zaxxon.h8
-rw-r--r--src/mame/includes/zerozone.h8
-rw-r--r--src/mame/machine/atarigen.h6
-rw-r--r--src/mame/machine/decocass.h8
1019 files changed, 2587 insertions, 3361 deletions
diff --git a/src/emu/devintrf.c b/src/emu/devintrf.c
index 8406a8dec48..557cf628426 100644
--- a/src/emu/devintrf.c
+++ b/src/emu/devintrf.c
@@ -136,30 +136,28 @@ void device_list::start_all()
state_save_register_presave(m_machine, static_pre_save, this);
state_save_register_postload(m_machine, static_post_load, this);
- // iterate until we've started everything
- int devcount = count();
- int numstarted = 0;
- while (numstarted < devcount)
+ // iterate over devices to start them
+ device_t *nextdevice;
+ for (device_t *device = first(); device != NULL; device = nextdevice)
{
- // iterate over devices and start them
- int prevstarted = numstarted;
- for (device_t *device = first(); device != NULL; device = device->next())
- if (!device->started())
- {
- // attempt to start the device, catching any expected exceptions
- try
- {
- device->start();
- numstarted++;
- }
- catch (device_missing_dependencies &)
- {
- }
- }
-
- // if we didn't start anything new, we're in trouble
- if (numstarted == prevstarted)
- fatalerror("Circular dependency in device startup; unable to start %d/%d devices\n", devcount - numstarted, devcount);
+ // attempt to start the device, catching any expected exceptions
+ nextdevice = device->next();
+ try
+ {
+ mame_printf_verbose("Starting %s '%s'\n", device->name(), device->tag());
+ device->start();
+ }
+
+ // handle missing dependencies by moving the device to the end
+ catch (device_missing_dependencies &)
+ {
+ // if we're the end, fail
+ mame_printf_verbose(" (missing dependencies; rescheduling)\n");
+ if (nextdevice == NULL)
+ throw emu_fatalerror("Circular dependency in device startup; unable to start %s '%s'\n", device->name(), device->tag());
+ detach(device);
+ append(device->tag(), device);
+ }
}
}
diff --git a/src/emu/devintrf.h b/src/emu/devintrf.h
index fd2e7b10350..9ec09ea9186 100644
--- a/src/emu/devintrf.h
+++ b/src/emu/devintrf.h
@@ -509,7 +509,8 @@ inline device_config *device_config::typenext() const
// create a tag for an object that is owned by this device
inline astring &device_config::subtag(astring &dest, const char *_tag) const
{
- return (this != NULL) ? dest.cpy(m_tag).cat(":").cat(_tag) : dest.cpy(_tag);
+ // temp. for now: don't include the root tag in the full tag name
+ return (this != NULL && m_owner != NULL) ? dest.cpy(m_tag).cat(":").cat(_tag) : dest.cpy(_tag);
}
// create a tag for an object that a sibling to this device
diff --git a/src/emu/disound.c b/src/emu/disound.c
index 29c13c1d114..3734739d170 100644
--- a/src/emu/disound.c
+++ b/src/emu/disound.c
@@ -122,7 +122,7 @@ bool device_config_sound_interface::interface_validity_check(const game_driver &
// if it's not a speaker or a sound device, error
const device_config_sound_interface *sound;
- if (target->type() != SPEAKER && !target->interface(sound))
+ if (target != NULL && target->type() != SPEAKER && !target->interface(sound))
{
mame_printf_error("%s: %s attempting to route sound to a non-sound device '%s' (%s)\n", driver.source_file, driver.name, route->m_target, target->name());
error = true;
diff --git a/src/emu/drivers/empty.c b/src/emu/drivers/empty.c
index 101127c8fea..1ca0364a24d 100644
--- a/src/emu/drivers/empty.c
+++ b/src/emu/drivers/empty.c
@@ -34,7 +34,7 @@ static MACHINE_START( empty )
*
*************************************/
-static MACHINE_CONFIG_START( empty, driver_data_t )
+static MACHINE_CONFIG_START( empty, driver_device )
MDRV_MACHINE_START(empty)
diff --git a/src/emu/emu.h b/src/emu/emu.h
index 1ad1eb7e272..b65d181d28e 100644
--- a/src/emu/emu.h
+++ b/src/emu/emu.h
@@ -73,7 +73,7 @@
// between devices and the machine config
class machine_config;
class device_config;
-typedef void (*machine_config_constructor)(machine_config &config, device_config *owner);
+typedef device_config * (*machine_config_constructor)(machine_config &config, device_config *owner);
// devices and callbacks
#include "devintrf.h"
diff --git a/src/emu/emucore.h b/src/emu/emucore.h
index cb3e7876ed2..59f2af46ddc 100644
--- a/src/emu/emucore.h
+++ b/src/emu/emucore.h
@@ -535,7 +535,7 @@ public:
return object;
}
- void remove(T *object)
+ void detach(T *object)
{
for (T **objectptr = &m_head; *objectptr != NULL; objectptr = &(*objectptr)->m_next)
if (*objectptr == object)
@@ -544,11 +544,16 @@ public:
if (m_tailptr == &object->m_next)
m_tailptr = objectptr;
m_map.remove(object);
- pool_free(m_pool, object);
return;
}
}
+ void remove(T *object)
+ {
+ detach(object);
+ pool_free(m_pool, object);
+ }
+
void remove(const char *tag)
{
T *object = find(tag);
diff --git a/src/emu/machine.c b/src/emu/machine.c
index 2dc4e571c16..fc6b1124196 100644
--- a/src/emu/machine.c
+++ b/src/emu/machine.c
@@ -197,14 +197,16 @@ running_machine::running_machine(const game_driver &driver, const machine_config
memset(m_notifier_list, 0, sizeof(m_notifier_list));
memset(&m_base_time, 0, sizeof(m_base_time));
+ // find the driver device config and tell it which game
+ device_config *config = m_config.m_devicelist.find("root");
+ if (config == NULL)
+ throw emu_fatalerror("Machine configuration missing driver_device");
+ driver_device_config_base::static_set_game(config, &driver);
+
// attach this machine to all the devices in the configuration
m_devicelist.import_config_list(m_config.m_devicelist, *this);
-
- // allocate the driver data (after devices)
- if (m_config.m_driver_data_alloc != NULL)
- m_driver_data = (*m_config.m_driver_data_alloc)(*this);
- else
- m_driver_data = auto_alloc(this, driver_data_t(*this));
+ m_driver_data = device<driver_device>("root");
+ assert(m_driver_data != NULL);
// find devices
primary_screen = screen_first(*this);
@@ -269,8 +271,6 @@ void running_machine::start()
output_init(this);
state_init(this);
state_save_allow_registration(this, true);
- state_save_register_presave(this, pre_save_static, NULL);
- state_save_register_postload(this, post_load_static, NULL);
palette_init(this);
render_init(this);
ui_init(this);
@@ -316,36 +316,26 @@ void running_machine::start()
// initialize image devices
image_init(this);
+ tilemap_init(this);
+ crosshair_init(this);
+ sound_init(this);
+ video_init(this);
- // start up the devices
- m_devicelist.start_all();
+ // initialize the debugger
+ if ((debug_flags & DEBUG_FLAG_ENABLED) != 0)
+ debugger_init(this);
// call the game driver's init function
// this is where decryption is done and memory maps are altered
// so this location in the init order is important
ui_set_startup_text(this, "Initializing...", true);
- if (m_game.driver_init != NULL)
- (*m_game.driver_init)(this);
+
+ // start up the devices
+ m_devicelist.start_all();
// finish image devices init process
image_postdevice_init(this);
- // start the video and audio hardware
- video_init(this);
- tilemap_init(this);
- crosshair_init(this);
-
- sound_init(this);
-
- // initialize the debugger
- if ((debug_flags & DEBUG_FLAG_ENABLED) != 0)
- debugger_init(this);
-
- // call the driver's _START callbacks
- m_driver_data->machine_start();
- m_driver_data->sound_start();
- m_driver_data->video_start();
-
// if we're coming in with a savegame request, process it now
const char *savegame = options_get_string(&m_options, OPTION_STATE);
if (savegame[0] != 0)
@@ -864,28 +854,6 @@ cancel:
//-------------------------------------------------
-// pre_save_static - callback to prepare for
-// state saving
-//-------------------------------------------------
-
-STATE_PRESAVE( running_machine::pre_save_static )
-{
- machine->m_driver_data->pre_save();
-}
-
-
-//-------------------------------------------------
-// post_load_static - callback to update after
-// static loading
-//-------------------------------------------------
-
-STATE_POSTLOAD( running_machine::post_load_static )
-{
- machine->m_driver_data->post_load();
-}
-
-
-//-------------------------------------------------
// soft_reset - actually perform a soft-reset
// of the system
//-------------------------------------------------
@@ -902,11 +870,6 @@ void running_machine::soft_reset()
// call all registered reset callbacks
call_notifiers(MACHINE_NOTIFY_RESET);
- // run the driver's reset callbacks
- m_driver_data->machine_reset();
- m_driver_data->sound_reset();
- m_driver_data->video_reset();
-
// now we're running
m_current_phase = MACHINE_PHASE_RUNNING;
@@ -986,95 +949,136 @@ running_machine::logerror_callback_item::logerror_callback_item(logerror_callbac
//**************************************************************************
-// DRIVER DATA
+// DRIVER DEVICE
//**************************************************************************
//-------------------------------------------------
-// driver_data_t - constructor
+// driver_device_config_base - constructor
//-------------------------------------------------
-driver_data_t::driver_data_t(running_machine &machine)
- : m_machine(machine)
+driver_device_config_base::driver_device_config_base(const machine_config &mconfig, device_type type, const char *tag, const device_config *owner)
+ : device_config(mconfig, type, "Driver Device", tag, owner, 0),
+ m_game(NULL),
+ m_palette_init(NULL),
+ m_video_update(NULL)
{
+ memset(m_callbacks, 0, sizeof(m_callbacks));
}
//-------------------------------------------------
-// driver_data_t - destructor
+// static_set_game - set the game in the device
+// configuration
//-------------------------------------------------
-driver_data_t::~driver_data_t()
+void driver_device_config_base::static_set_game(device_config *device, const game_driver *game)
{
+ downcast<driver_device_config_base *>(device)->m_game = game;
}
//-------------------------------------------------
-// alloc - static allocator for this class
+// static_set_machine_start - set the legacy
+// machine start callback in the device
+// configuration
//-------------------------------------------------
-driver_data_t *driver_data_t::alloc(running_machine &machine)
+void driver_device_config_base::static_set_callback(device_config *device, callback_type type, legacy_callback_func callback)
{
- return auto_alloc_clear(&machine, driver_data_t(machine));
+ downcast<driver_device_config_base *>(device)->m_callbacks[type] = callback;
}
//-------------------------------------------------
-// machine_start - default implementation which
-// calls to the legacy machine_start function
+// static_set_palette_init - set the legacy
+// palette init callback in the device
+// configuration
//-------------------------------------------------
-void driver_data_t::machine_start()
+void driver_device_config_base::static_set_palette_init(device_config *device, palette_init_func callback)
{
- if (m_machine.m_config.m_machine_start != NULL)
- (*m_machine.m_config.m_machine_start)(&m_machine);
+ downcast<driver_device_config_base *>(device)->m_palette_init = callback;
}
//-------------------------------------------------
-// machine_reset - default implementation which
-// calls to the legacy machine_reset function
+// static_set_video_update - set the legacy
+// video update callback in the device
+// configuration
//-------------------------------------------------
-void driver_data_t::machine_reset()
+void driver_device_config_base::static_set_video_update(device_config *device, video_update_func callback)
{
- if (m_machine.m_config.m_machine_reset != NULL)
- (*m_machine.m_config.m_machine_reset)(&m_machine);
+ downcast<driver_device_config_base *>(device)->m_video_update = callback;
}
+
+//**************************************************************************
+// DRIVER DEVICE
+//**************************************************************************
+
//-------------------------------------------------
-// sound_start - default implementation which
-// calls to the legacy sound_start function
+// driver_device - constructor
//-------------------------------------------------
-void driver_data_t::sound_start()
+driver_device::driver_device(running_machine &machine, const driver_device_config_base &config)
+ : device_t(machine, config),
+ m_config(config)
{
- if (m_machine.m_config.m_sound_start != NULL)
- (*m_machine.m_config.m_sound_start)(&m_machine);
}
//-------------------------------------------------
-// sound_reset - default implementation which
-// calls to the legacy sound_reset function
+// driver_device - destructor
+//-------------------------------------------------
+
+driver_device::~driver_device()
+{
+}
+
+
+//-------------------------------------------------
+// find_devices - default implementation which
+// does nothing
//-------------------------------------------------
-void driver_data_t::sound_reset()
+void driver_device::find_devices()
{
- if (m_machine.m_config.m_sound_reset != NULL)
- (*m_machine.m_config.m_sound_reset)(&m_machine);
}
//-------------------------------------------------
-// palette_init - default implementation which
-// calls to the legacy palette_init function
+// driver_start - default implementation which
+// does nothing
//-------------------------------------------------
-void driver_data_t::palette_init(const UINT8 *color_prom)
+void driver_device::driver_start()
{
- if (m_machine.m_config.m_init_palette != NULL)
- (*m_machine.m_config.m_init_palette)(&m_machine, color_prom);
+}
+
+
+//-------------------------------------------------
+// machine_start - default implementation which
+// calls to the legacy machine_start function
+//-------------------------------------------------
+
+void driver_device::machine_start()
+{
+ if (m_config.m_callbacks[driver_device_config_base::CB_MACHINE_START] != NULL)
+ (*m_config.m_callbacks[driver_device_config_base::CB_MACHINE_START])(&m_machine);
+}
+
+
+//-------------------------------------------------
+// sound_start - default implementation which
+// calls to the legacy sound_start function
+//-------------------------------------------------
+
+void driver_device::sound_start()
+{
+ if (m_config.m_callbacks[driver_device_config_base::CB_SOUND_START] != NULL)
+ (*m_config.m_callbacks[driver_device_config_base::CB_SOUND_START])(&m_machine);
}
@@ -1083,10 +1087,44 @@ void driver_data_t::palette_init(const UINT8 *color_prom)
// calls to the legacy video_start function
//-------------------------------------------------
-void driver_data_t::video_start()
+void driver_device::video_start()
+{
+ if (m_config.m_callbacks[driver_device_config_base::CB_VIDEO_START] != NULL)
+ (*m_config.m_callbacks[driver_device_config_base::CB_VIDEO_START])(&m_machine);
+}
+
+
+//-------------------------------------------------
+// driver_reset - default implementation which
+// does nothing
+//-------------------------------------------------
+
+void driver_device::driver_reset()
{
- if (m_machine.m_config.m_video_start != NULL)
- (*m_machine.m_config.m_video_start)(&m_machine);
+}
+
+
+//-------------------------------------------------
+// machine_reset - default implementation which
+// calls to the legacy machine_reset function
+//-------------------------------------------------
+
+void driver_device::machine_reset()
+{
+ if (m_config.m_callbacks[driver_device_config_base::CB_MACHINE_RESET] != NULL)
+ (*m_config.m_callbacks[driver_device_config_base::CB_MACHINE_RESET])(&m_machine);
+}
+
+
+//-------------------------------------------------
+// sound_reset - default implementation which
+// calls to the legacy sound_reset function
+//-------------------------------------------------
+
+void driver_device::sound_reset()
+{
+ if (m_config.m_callbacks[driver_device_config_base::CB_SOUND_RESET] != NULL)
+ (*m_config.m_callbacks[driver_device_config_base::CB_SOUND_RESET])(&m_machine);
}
@@ -1095,10 +1133,10 @@ void driver_data_t::video_start()
// calls to the legacy video_reset function
//-------------------------------------------------
-void driver_data_t::video_reset()
+void driver_device::video_reset()
{
- if (m_machine.m_config.m_video_reset != NULL)
- (*m_machine.m_config.m_video_reset)(&m_machine);
+ if (m_config.m_callbacks[driver_device_config_base::CB_VIDEO_RESET] != NULL)
+ (*m_config.m_callbacks[driver_device_config_base::CB_VIDEO_RESET])(&m_machine);
}
@@ -1107,10 +1145,10 @@ void driver_data_t::video_reset()
// calls to the legacy video_update function
//-------------------------------------------------
-bool driver_data_t::video_update(screen_device &screen, bitmap_t &bitmap, const rectangle &cliprect)
+bool driver_device::video_update(screen_device &screen, bitmap_t &bitmap, const rectangle &cliprect)
{
- if (m_machine.m_config.m_video_update != NULL)
- return (*m_machine.m_config.m_video_update)(&screen, &bitmap, &cliprect);
+ if (m_config.m_video_update != NULL)
+ return (*m_config.m_video_update)(&screen, &bitmap, &cliprect);
return 0;
}
@@ -1120,30 +1158,55 @@ bool driver_data_t::video_update(screen_device &screen, bitmap_t &bitmap, const
// calls to the legacy video_eof function
//-------------------------------------------------
-void driver_data_t::video_eof()
+void driver_device::video_eof()
{
- if (m_machine.m_config.m_video_eof != NULL)
- (*m_machine.m_config.m_video_eof)(&m_machine);
+ if (m_config.m_callbacks[driver_device_config_base::CB_VIDEO_EOF] != NULL)
+ (*m_config.m_callbacks[driver_device_config_base::CB_VIDEO_EOF])(&m_machine);
}
//-------------------------------------------------
-// pre_save - default implementation which
-// does nothing
+// device_start - device override which calls
+// the various helpers
//-------------------------------------------------
-void driver_data_t::pre_save()
+void driver_device::device_start()
{
+ // reschedule ourselves to be last
+ if (next() != NULL)
+ throw device_missing_dependencies();
+
+ // first find devices
+ find_devices();
+
+ // call the game-specific init
+ if (m_config.m_game->driver_init != NULL)
+ (*m_config.m_game->driver_init)(&m_machine);
+
+ // call palette_init if present
+ if (m_config.m_palette_init != NULL)
+ (*m_config.m_palette_init)(&m_machine, memory_region(machine, "proms"));
+
+ // start the various pieces
+ driver_start();
+ machine_start();
+ sound_start();
+ video_start();
}
//-------------------------------------------------
-// post_load - default implementation which
-// does nothing
+// device_reset - device override which calls
+// the various helpers
//-------------------------------------------------
-void driver_data_t::post_load()
+void driver_device::device_reset()
{
+ // reset each piece
+ driver_reset();
+ machine_reset();
+ sound_reset();
+ video_reset();
}
diff --git a/src/emu/machine.h b/src/emu/machine.h
index 02554e7b6b1..4fcd397d5cd 100644
--- a/src/emu/machine.h
+++ b/src/emu/machine.h
@@ -110,6 +110,57 @@ const int DEBUG_FLAG_OSD_ENABLED = 0x00001000; // The OSD debugger is enabled
// MACROS
//**************************************************************************
+// macros to wrap legacy callbacks
+#define MACHINE_START_NAME(name) machine_start_##name
+#define MACHINE_START(name) void MACHINE_START_NAME(name)(running_machine *machine)
+#define MACHINE_START_CALL(name) MACHINE_START_NAME(name)(machine)
+
+#define MACHINE_RESET_NAME(name) machine_reset_##name
+#define MACHINE_RESET(name) void MACHINE_RESET_NAME(name)(running_machine *machine)
+#define MACHINE_RESET_CALL(name) MACHINE_RESET_NAME(name)(machine)
+
+#define SOUND_START_NAME(name) sound_start_##name
+#define SOUND_START(name) void SOUND_START_NAME(name)(running_machine *machine)
+#define SOUND_START_CALL(name) SOUND_START_NAME(name)(machine)
+
+#define SOUND_RESET_NAME(name) sound_reset_##name
+#define SOUND_RESET(name) void SOUND_RESET_NAME(name)(running_machine *machine)
+#define SOUND_RESET_CALL(name) SOUND_RESET_NAME(name)(machine)
+
+#define VIDEO_START_NAME(name) video_start_##name
+#define VIDEO_START(name) void VIDEO_START_NAME(name)(running_machine *machine)
+#define VIDEO_START_CALL(name) VIDEO_START_NAME(name)(machine)
+
+#define VIDEO_RESET_NAME(name) video_reset_##name
+#define VIDEO_RESET(name) void VIDEO_RESET_NAME(name)(running_machine *machine)
+#define VIDEO_RESET_CALL(name) VIDEO_RESET_NAME(name)(machine)
+
+#define PALETTE_INIT_NAME(name) palette_init_##name
+#define PALETTE_INIT(name) void PALETTE_INIT_NAME(name)(running_machine *machine, const UINT8 *color_prom)
+#define PALETTE_INIT_CALL(name) PALETTE_INIT_NAME(name)(machine, color_prom)
+
+#define VIDEO_EOF_NAME(name) video_eof_##name
+#define VIDEO_EOF(name) void VIDEO_EOF_NAME(name)(running_machine *machine)
+#define VIDEO_EOF_CALL(name) VIDEO_EOF_NAME(name)(machine)
+
+#define VIDEO_UPDATE_NAME(name) video_update_##name
+#define VIDEO_UPDATE(name) UINT32 VIDEO_UPDATE_NAME(name)(screen_device *screen, bitmap_t *bitmap, const rectangle *cliprect)
+#define VIDEO_UPDATE_CALL(name) VIDEO_UPDATE_NAME(name)(screen, bitmap, cliprect)
+
+
+// NULL versions
+#define machine_start_0 NULL
+#define machine_reset_0 NULL
+#define sound_start_0 NULL
+#define sound_reset_0 NULL
+#define video_start_0 NULL
+#define video_reset_0 NULL
+#define palette_init_0 NULL
+#define video_eof_0 NULL
+#define video_update_0 NULL
+
+
+
// global allocation helpers
#define auto_alloc(m, t) pool_alloc(static_cast<running_machine *>(m)->m_respool, t)
#define auto_alloc_clear(m, t) pool_alloc_clear(static_cast<running_machine *>(m)->m_respool, t)
@@ -157,35 +208,16 @@ typedef struct _generic_audio_private generic_audio_private;
typedef tagged_list<region_info> region_list;
-// base class for all driver data structures
-class driver_data_t : public bindable_object
-{
-public:
- driver_data_t(running_machine &machine);
- virtual ~driver_data_t();
-
- static driver_data_t *alloc(running_machine &machine);
-
- virtual void machine_start();
- virtual void machine_reset();
-
- virtual void sound_start();
- virtual void sound_reset();
-
- virtual void palette_init(const UINT8 *color_prom);
- virtual void video_start();
- virtual void video_reset();
- virtual bool video_update(screen_device &screen, bitmap_t &bitmap, const rectangle &cliprect);
- virtual void video_eof();
+// legacy callback functions
+typedef void (*legacy_callback_func)(running_machine *machine);
+typedef void (*palette_init_func)(running_machine *machine, const UINT8 *color_prom);
+typedef UINT32 (*video_update_func)(screen_device *screen, bitmap_t *bitmap, const rectangle *cliprect);
- virtual void pre_save();
- virtual void post_load();
- running_machine & m_machine;
-};
+// ======================> region_info
-// memory region
+// memory region object; should eventually be renamed memory_region
class region_info
{
DISABLE_COPYING(region_info);
@@ -240,7 +272,10 @@ private:
};
-// this structure holds generic pointers that are commonly used
+
+// ======================> generic_pointers
+
+// holds generic pointers that are commonly used
struct generic_pointers
{
generic_ptr nvram; // generic NVRAM
@@ -259,6 +294,9 @@ struct generic_pointers
};
+
+// ======================> system_time
+
// system time description, both local and UTC
class system_time
{
@@ -287,6 +325,9 @@ public:
};
+
+// ======================> running_machine
+
// description of the currently-running machine
class running_machine : public bindable_object
{
@@ -423,8 +464,6 @@ private:
void set_saveload_filename(const char *filename);
void fill_systime(system_time &systime, time_t t);
void handle_saveload();
- static STATE_PRESAVE( pre_save_static );
- static STATE_POSTLOAD( post_load_static );
static TIMER_CALLBACK( static_soft_reset );
void soft_reset();
@@ -482,7 +521,130 @@ private:
// base time
time_t m_base_time;
- driver_data_t * m_driver_data; // drivers can hang data off of here instead of using globals
+ driver_device * m_driver_data; // drivers can hang data off of here instead of using globals
+};
+
+
+
+// ======================> driver_device_config_base
+
+// a base class with common functionality for the (mostly stub) driver_device_configs
+class driver_device_config_base : public device_config
+{
+ friend class driver_device;
+
+protected:
+ // construction/destruction
+ driver_device_config_base(const machine_config &mconfig, device_type type, const char *tag, const device_config *owner);
+
+public:
+ // indexes into our generic callbacks
+ enum callback_type
+ {
+ CB_MACHINE_START,
+ CB_MACHINE_RESET,
+ CB_SOUND_START,
+ CB_SOUND_RESET,
+ CB_VIDEO_START,
+ CB_VIDEO_RESET,
+ CB_VIDEO_EOF,
+ CB_COUNT
+ };
+
+ // inline configuration helpers
+ static void static_set_game(device_config *device, const game_driver *game);
+ static void static_set_callback(device_config *device, callback_type type, legacy_callback_func callback);
+ static void static_set_palette_init(device_config *device, palette_init_func callback);
+ static void static_set_video_update(device_config *device, video_update_func callback);
+
+protected:
+ // internal state
+ const game_driver * m_game; // pointer to the game driver
+
+ legacy_callback_func m_callbacks[CB_COUNT]; // generic legacy callbacks
+ palette_init_func m_palette_init; // one-time palette init callback
+ video_update_func m_video_update; // video update callback
+};
+
+
+
+// ======================> driver_device_config
+
+// this provides a minimal config class for driver devices, which don't
+// explicitly declare their own
+template<class _DeviceClass>
+class driver_device_config : public driver_device_config_base
+{
+ // construction/destruction
+ driver_device_config(const machine_config &mconfig, const char *tag, const device_config *owner)
+ : driver_device_config_base(mconfig, static_alloc_device_config, tag, owner) { }
+
+public:
+ // allocators
+ static device_config *static_alloc_device_config(const machine_config &mconfig, const char *tag, const device_config *owner, UINT32 clock)
+ {
+ return global_alloc(driver_device_config(mconfig, tag, owner));
+ }
+
+ virtual device_t *alloc_device(running_machine &machine) const
+ {
+ // we clear here for historical reasons, as many existing driver states
+ // assume everything is NULL before starting
+ return auto_alloc_clear(&machine, _DeviceClass(machine, *this));
+ }
+};
+
+
+
+// ======================> driver_device
+
+// base class for machine driver-specific devices
+class driver_device : public device_t
+{
+public:
+ // construction/destruction
+ driver_device(running_machine &machine, const driver_device_config_base &config);
+ virtual ~driver_device();
+
+ // additional video helpers
+ virtual bool video_update(screen_device &screen, bitmap_t &bitmap, const rectangle &cliprect);
+ virtual void video_eof();
+
+protected:
+ // helpers called at startup
+ virtual void find_devices();
+ virtual void driver_start();
+ virtual void machine_start();
+ virtual void sound_start();
+ virtual void video_start();
+
+ // helpers called at reset
+ virtual void driver_reset();
+ virtual void machine_reset();
+ virtual void sound_reset();
+ virtual void video_reset();
+
+ // device-level overrides
+ virtual void device_start();
+ virtual void device_reset();
+
+ // device locators
+ template<class T>
+ bool optional_device(T *&device, const char *tag)
+ {
+ device = downcast<T *>(m_machine.device<T>(tag));
+ return (device != NULL);
+ }
+
+ template<class T>
+ void required_device(T *&device, const char *tag)
+ {
+ if (!optional_device(device, tag))
+ throw emu_fatalerror("Unable to find device '%s'", tag);
+ }
+
+ // internal state
+ const driver_device_config_base &m_config;
};
diff --git a/src/emu/mconfig.c b/src/emu/mconfig.c
index 7ed1a5e7379..cc40d2e46e1 100644
--- a/src/emu/mconfig.c
+++ b/src/emu/mconfig.c
@@ -50,26 +50,16 @@
//-------------------------------------------------
machine_config::machine_config(machine_config_constructor constructor)
- : m_driver_data_alloc(NULL),
- m_minimum_quantum(attotime_zero),
+ : m_minimum_quantum(attotime_zero),
m_perfect_cpu_quantum(NULL),
m_watchdog_vblank_count(0),
m_watchdog_time(attotime_zero),
- m_machine_start(NULL),
- m_machine_reset(NULL),
m_nvram_handler(NULL),
m_memcard_handler(NULL),
m_video_attributes(0),
m_gfxdecodeinfo(NULL),
m_total_colors(0),
m_default_layout(NULL),
- m_init_palette(NULL),
- m_video_start(NULL),
- m_video_reset(NULL),
- m_video_eof(NULL),
- m_video_update(NULL),
- m_sound_start(NULL),
- m_sound_reset(NULL),
m_parse_level(0)
{
// construct the config
diff --git a/src/emu/mconfig.h b/src/emu/mconfig.h
index fda8f3e761c..fa3cce8bab1 100644
--- a/src/emu/mconfig.h
+++ b/src/emu/mconfig.h
@@ -91,55 +91,10 @@
#define MEMCARD_HANDLER(name) void MEMCARD_HANDLER_NAME(name)(running_machine *machine, mame_file *file, int action)
#define MEMCARD_HANDLER_CALL(name) MEMCARD_HANDLER_NAME(name)(machine, file, action)
-#define MACHINE_START_NAME(name) machine_start_##name
-#define MACHINE_START(name) void MACHINE_START_NAME(name)(running_machine *machine)
-#define MACHINE_START_CALL(name) MACHINE_START_NAME(name)(machine)
-
-#define MACHINE_RESET_NAME(name) machine_reset_##name
-#define MACHINE_RESET(name) void MACHINE_RESET_NAME(name)(running_machine *machine)
-#define MACHINE_RESET_CALL(name) MACHINE_RESET_NAME(name)(machine)
-
-#define SOUND_START_NAME(name) sound_start_##name
-#define SOUND_START(name) void SOUND_START_NAME(name)(running_machine *machine)
-#define SOUND_START_CALL(name) SOUND_START_NAME(name)(machine)
-
-#define SOUND_RESET_NAME(name) sound_reset_##name
-#define SOUND_RESET(name) void SOUND_RESET_NAME(name)(running_machine *machine)
-#define SOUND_RESET_CALL(name) SOUND_RESET_NAME(name)(machine)
-
-#define VIDEO_START_NAME(name) video_start_##name
-#define VIDEO_START(name) void VIDEO_START_NAME(name)(running_machine *machine)
-#define VIDEO_START_CALL(name) VIDEO_START_NAME(name)(machine)
-
-#define VIDEO_RESET_NAME(name) video_reset_##name
-#define VIDEO_RESET(name) void VIDEO_RESET_NAME(name)(running_machine *machine)
-#define VIDEO_RESET_CALL(name) VIDEO_RESET_NAME(name)(machine)
-
-#define PALETTE_INIT_NAME(name) palette_init_##name
-#define PALETTE_INIT(name) void PALETTE_INIT_NAME(name)(running_machine *machine, const UINT8 *color_prom)
-#define PALETTE_INIT_CALL(name) PALETTE_INIT_NAME(name)(machine, color_prom)
-
-#define VIDEO_EOF_NAME(name) video_eof_##name
-#define VIDEO_EOF(name) void VIDEO_EOF_NAME(name)(running_machine *machine)
-#define VIDEO_EOF_CALL(name) VIDEO_EOF_NAME(name)(machine)
-
-#define VIDEO_UPDATE_NAME(name) video_update_##name
-#define VIDEO_UPDATE(name) UINT32 VIDEO_UPDATE_NAME(name)(screen_device *screen, bitmap_t *bitmap, const rectangle *cliprect)
-#define VIDEO_UPDATE_CALL(name) VIDEO_UPDATE_NAME(name)(screen, bitmap, cliprect)
-
// NULL versions
#define nvram_handler_0 NULL
#define memcard_handler_0 NULL
-#define machine_start_0 NULL
-#define machine_reset_0 NULL
-#define sound_start_0 NULL
-#define sound_reset_0 NULL
-#define video_start_0 NULL
-#define video_reset_0 NULL
-#define palette_init_0 NULL
-#define video_eof_0 NULL
-#define video_update_0 NULL
@@ -149,23 +104,13 @@
// forward references
struct gfx_decode_entry;
-class driver_data_t;
+class driver_device;
// various callback functions
typedef void (*nvram_handler_func)(running_machine *machine, mame_file *file, int read_or_write);
typedef void (*memcard_handler_func)(running_machine *machine, mame_file *file, int action);
-typedef void (*machine_start_func)(running_machine *machine);
-typedef void (*machine_reset_func)(running_machine *machine);
-typedef void (*sound_start_func)(running_machine *machine);
-typedef void (*sound_reset_func)(running_machine *machine);
-typedef void (*video_start_func)(running_machine *machine);
-typedef void (*video_reset_func)(running_machine *machine);
-typedef void (*palette_init_func)(running_machine *machine, const UINT8 *color_prom);
-typedef void (*video_eof_func)(running_machine *machine);
-typedef UINT32 (*video_update_func)(screen_device *screen, bitmap_t *bitmap, const rectangle *cliprect);
-typedef driver_data_t *(*driver_data_alloc_func)(running_machine &machine);
@@ -182,16 +127,11 @@ public:
machine_config(machine_config_constructor constructor);
~machine_config();
- driver_data_alloc_func m_driver_data_alloc; // allocator for driver data
-
attotime m_minimum_quantum; // minimum scheduling quantum
const char * m_perfect_cpu_quantum; // tag of CPU to use for "perfect" scheduling
INT32 m_watchdog_vblank_count; // number of VBLANKs until the watchdog kills us
attotime m_watchdog_time; // length of time until the watchdog kills us
- machine_start_func m_machine_start; // one-time machine start callback
- machine_reset_func m_machine_reset; // machine reset callback
-
nvram_handler_func m_nvram_handler; // NVRAM save/load callback
memcard_handler_func m_memcard_handler; // memory card save/load callback
@@ -200,15 +140,6 @@ public:
UINT32 m_total_colors; // total number of colors in the palette
const char * m_default_layout; // default layout for this machine
- palette_init_func m_init_palette; // one-time palette init callback
- video_start_func m_video_start; // one-time video start callback
- video_reset_func m_video_reset; // video reset callback
- video_eof_func m_video_eof; // end-of-frame video callback
- video_update_func m_video_update; // video update callback
-
- sound_start_func m_sound_start; // one-time sound start callback
- sound_reset_func m_sound_reset; // sound reset callback
-
device_config_list m_devicelist; // list of device configs
// helpers during configuration; not for general use
@@ -231,43 +162,44 @@ private:
#define MACHINE_CONFIG_NAME(_name) construct_machine_config_##_name
#define MACHINE_CONFIG_START(_name, _class) \
-void MACHINE_CONFIG_NAME(_name)(machine_config &config, device_config *owner) \
+device_config *MACHINE_CONFIG_NAME(_name)(machine_config &config, device_config *owner) \
{ \
device_config *device = NULL; \
const char *tag; \
astring tempstring; \
(void)device; \
(void)tag; \
- assert(config.m_driver_data_alloc == NULL); \
- config.m_driver_data_alloc = &_class::alloc; \
+ assert(owner == NULL); \
+ owner = config.device_add(NULL, "root", &driver_device_config<_class>::static_alloc_device_config, 0); \
#define MACHINE_CONFIG_FRAGMENT(_name) \
-void MACHINE_CONFIG_NAME(_name)(machine_config &config, device_config *owner) \
+device_config *MACHINE_CONFIG_NAME(_name)(machine_config &config, device_config *owner) \
{ \
device_config *device = NULL; \
const char *tag; \
astring tempstring; \
(void)device; \
(void)tag; \
- assert(config.m_driver_data_alloc != NULL); \
+ assert(owner != NULL); \
#define MACHINE_CONFIG_DERIVED(_name, _base) \
-void MACHINE_CONFIG_NAME(_name)(machine_config &config, device_config *owner) \
+device_config *MACHINE_CONFIG_NAME(_name)(machine_config &config, device_config *owner) \
{ \
device_config *device = NULL; \
const char *tag; \
astring tempstring; \
(void)device; \
(void)tag; \
- MACHINE_CONFIG_NAME(_base)(config, owner); \
- assert(config.m_driver_data_alloc != NULL); \
+ owner = MACHINE_CONFIG_NAME(_base)(config, owner); \
+ assert(owner != NULL); \
#define MACHINE_CONFIG_END \
+ return owner; \
}
// use this to declare external references to a machine driver
#define MACHINE_CONFIG_EXTERN(_name) \
- extern void MACHINE_CONFIG_NAME(_name)(machine_config &config, device_config *owner)
+ extern device_config *MACHINE_CONFIG_NAME(_name)(machine_config &config, device_config *owner)
// importing data from other machine drivers
@@ -290,12 +222,6 @@ void MACHINE_CONFIG_NAME(_name)(machine_config &config, device_config *owner) \
// core functions
-#define MDRV_MACHINE_START(_func) \
- config.m_machine_start = MACHINE_START_NAME(_func); \
-
-#define MDRV_MACHINE_RESET(_func) \
- config.m_machine_reset = MACHINE_RESET_NAME(_func); \
-
#define MDRV_NVRAM_HANDLER(_func) \
config.m_nvram_handler = NVRAM_HANDLER_NAME(_func); \
@@ -317,29 +243,37 @@ void MACHINE_CONFIG_NAME(_name)(machine_config &config, device_config *owner) \
config.m_default_layout = &(_layout)[0]; \
+// core machine functions
+#define MDRV_MACHINE_START(_func) \
+ driver_device_config_base::static_set_callback(owner, driver_device_config_base::CB_MACHINE_START, MACHINE_START_NAME(_func)); \
+
+#define MDRV_MACHINE_RESET(_func) \
+ driver_device_config_base::static_set_callback(owner, driver_device_config_base::CB_MACHINE_RESET, MACHINE_RESET_NAME(_func)); \
+
+
+// core sound functions
+#define MDRV_SOUND_START(_func) \
+ driver_device_config_base::static_set_callback(owner, driver_device_config_base::CB_SOUND_START, SOUND_START_NAME(_func)); \
+
+#define MDRV_SOUND_RESET(_func) \
+ driver_device_config_base::static_set_callback(owner, driver_device_config_base::CB_SOUND_RESET, SOUND_RESET_NAME(_func)); \
+
+
// core video functions
#define MDRV_PALETTE_INIT(_func) \
- config.m_init_palette = PALETTE_INIT_NAME(_func); \
+ driver_device_config_base::static_set_palette_init(owner, PALETTE_INIT_NAME(_func)); \
#define MDRV_VIDEO_START(_func) \
- config.m_video_start = VIDEO_START_NAME(_func); \
+ driver_device_config_base::static_set_callback(owner, driver_device_config_base::CB_VIDEO_START, VIDEO_START_NAME(_func)); \
#define MDRV_VIDEO_RESET(_func) \
- config.m_video_reset = VIDEO_RESET_NAME(_func); \
+ driver_device_config_base::static_set_callback(owner, driver_device_config_base::CB_VIDEO_RESET, VIDEO_RESET_NAME(_func)); \
#define MDRV_VIDEO_EOF(_func) \
- config.m_video_eof = VIDEO_EOF_NAME(_func); \
+ driver_device_config_base::static_set_callback(owner, driver_device_config_base::CB_VIDEO_EOF, VIDEO_EOF_NAME(_func)); \
#define MDRV_VIDEO_UPDATE(_func) \
- config.m_video_update = VIDEO_UPDATE_NAME(_func); \
-
-
-// core sound functions
-#define MDRV_SOUND_START(_func) \
- config.m_sound_start = SOUND_START_NAME(_func); \
-
-#define MDRV_SOUND_RESET(_func) \
- config.m_sound_reset = SOUND_RESET_NAME(_func); \
+ driver_device_config_base::static_set_video_update(owner, VIDEO_UPDATE_NAME(_func)); \
// add/remove devices
diff --git a/src/emu/memory.c b/src/emu/memory.c
index 2bf2ff47b29..770fc31607f 100644
--- a/src/emu/memory.c
+++ b/src/emu/memory.c
@@ -2021,7 +2021,7 @@ void address_space::populate_map_entry(const address_map_entry &entry, read_or_w
case AMH_DEVICE_DELEGATE:
if (data.m_type == AMH_DRIVER_DELEGATE)
{
- object = m_machine.driver_data<driver_data_t>();
+ object = m_machine.driver_data<driver_device>();
if (object == NULL)
throw emu_fatalerror("Attempted to map a driver delegate in space %s of device '%s' when there is no driver data\n", m_name, m_device.tag());
}
diff --git a/src/emu/video.c b/src/emu/video.c
index ea270e8b5c4..829138b34bf 100644
--- a/src/emu/video.c
+++ b/src/emu/video.c
@@ -296,9 +296,6 @@ void video_init(running_machine *machine)
if (machine->config->m_video_attributes & VIDEO_BUFFERS_SPRITERAM)
init_buffered_spriteram(machine);
- /* call the PALETTE_INIT function */
- machine->driver_data<driver_data_t>()->palette_init(memory_region(machine, "proms"));
-
/* create a render target for snapshots */
viewname = options_get_string(machine->options(), OPTION_SNAPVIEW);
global.snap_native = (machine->primary_screen != NULL && (viewname[0] == 0 || strcmp(viewname, "native") == 0));
@@ -487,7 +484,7 @@ void video_frame_update(running_machine *machine, int debug)
else
{
g_profiler.start(PROFILER_VIDEO);
- machine->driver_data<driver_data_t>()->video_eof();
+ machine->driver_data<driver_device>()->video_eof();
g_profiler.stop();
}
}
@@ -2205,7 +2202,7 @@ bool screen_device::update_partial(int scanline)
g_profiler.start(PROFILER_VIDEO);
LOG_PARTIAL_UPDATES(("updating %d-%d\n", clip.min_y, clip.max_y));
- flags = machine->driver_data<driver_data_t>()->video_update(*this, *m_bitmap[m_curbitmap], clip);
+ flags = machine->driver_data<driver_device>()->video_update(*this, *m_bitmap[m_curbitmap], clip);
global.partial_updates_this_frame++;
g_profiler.stop();
diff --git a/src/mame/drivers/1945kiii.c b/src/mame/drivers/1945kiii.c
index 09924e03bbc..91e30847351 100644
--- a/src/mame/drivers/1945kiii.c
+++ b/src/mame/drivers/1945kiii.c
@@ -47,13 +47,11 @@ Notes:
#define MASTER_CLOCK XTAL_16MHz
-class k3_state : public driver_data_t
+class k3_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, k3_state(machine)); }
-
- k3_state(running_machine &machine)
- : driver_data_t(machine),
+ k3_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
oki1(machine.device<okim6295_device>("oki1")),
oki2(machine.device<okim6295_device>("oki2")) { }
diff --git a/src/mame/drivers/2mindril.c b/src/mame/drivers/2mindril.c
index eb5c47253ca..23f4d540870 100644
--- a/src/mame/drivers/2mindril.c
+++ b/src/mame/drivers/2mindril.c
@@ -49,13 +49,11 @@ DAC -26.6860Mhz
#include "sound/2610intf.h"
-class _2mindril_state : public driver_data_t
+class _2mindril_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, _2mindril_state(machine)); }
-
- _2mindril_state(running_machine &machine)
- : driver_data_t(machine) { }
+ _2mindril_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * map1ram;
diff --git a/src/mame/drivers/39in1.c b/src/mame/drivers/39in1.c
index b2a399e14f9..dd2b3ebd3cc 100644
--- a/src/mame/drivers/39in1.c
+++ b/src/mame/drivers/39in1.c
@@ -27,13 +27,11 @@
#include "machine/pxa255.h"
#include "sound/dmadac.h"
-class _39in1_state : public driver_data_t
+class _39in1_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, _39in1_state(machine)); }
-
- _39in1_state(running_machine &machine)
- : driver_data_t(machine) { }
+ _39in1_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT32 seed;
UINT32 magic;
diff --git a/src/mame/drivers/3super8.c b/src/mame/drivers/3super8.c
index 5c961c4623f..4c75b0224e4 100644
--- a/src/mame/drivers/3super8.c
+++ b/src/mame/drivers/3super8.c
@@ -64,7 +64,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( 3super8, driver_data_t )
+static MACHINE_CONFIG_START( 3super8, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,24000000/4) /* 6 MHz */
MDRV_CPU_PROGRAM_MAP(map)
diff --git a/src/mame/drivers/4roses.c b/src/mame/drivers/4roses.c
index a9ea9ae5728..2cf9c4b715c 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_CONFIG_START( 4roses, driver_data_t )
+static MACHINE_CONFIG_START( 4roses, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz, guess */
MDRV_CPU_PROGRAM_MAP(4roses_map)
diff --git a/src/mame/drivers/5clown.c b/src/mame/drivers/5clown.c
index d2494d638bb..c1abb1373d0 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_CONFIG_START( fclown, driver_data_t )
+static MACHINE_CONFIG_START( fclown, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/8) /* guess, seems ok */
diff --git a/src/mame/drivers/86lions.c b/src/mame/drivers/86lions.c
index e73da9c73d4..501feb44451 100644
--- a/src/mame/drivers/86lions.c
+++ b/src/mame/drivers/86lions.c
@@ -353,7 +353,7 @@ static PALETTE_INIT( lions )
}
}
-static MACHINE_CONFIG_START( lions, driver_data_t )
+static MACHINE_CONFIG_START( lions, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CLOCK/4) /* 3 MHz.(guess) */
MDRV_CPU_PROGRAM_MAP(lions_map)
diff --git a/src/mame/drivers/ace.c b/src/mame/drivers/ace.c
index 7f2007ab8a2..aaeb497a189 100644
--- a/src/mame/drivers/ace.c
+++ b/src/mame/drivers/ace.c
@@ -43,13 +43,11 @@ A1 2101 2101
#define MASTER_CLOCK XTAL_18MHz
-class ace_state : public driver_data_t
+class ace_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ace_state(machine)); }
-
- ace_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ace_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
UINT8 * ram2;
diff --git a/src/mame/drivers/acefruit.c b/src/mame/drivers/acefruit.c
index b6adc3ec458..d5c48f702e4 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_CONFIG_START( acefruit, driver_data_t )
+static MACHINE_CONFIG_START( acefruit, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 2500000) /* 2.5MHz */
diff --git a/src/mame/drivers/acommand.c b/src/mame/drivers/acommand.c
index 10023eebb95..6095bcea421 100644
--- a/src/mame/drivers/acommand.c
+++ b/src/mame/drivers/acommand.c
@@ -558,7 +558,7 @@ static INTERRUPT_GEN( acommand_irq )
}
}
-static MACHINE_CONFIG_START( acommand, driver_data_t )
+static MACHINE_CONFIG_START( acommand, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000,12000000)
diff --git a/src/mame/drivers/adp.c b/src/mame/drivers/adp.c
index 40492d87398..ba32dac2c51 100644
--- a/src/mame/drivers/adp.c
+++ b/src/mame/drivers/adp.c
@@ -152,13 +152,11 @@ Video board has additional chips:
#include "machine/microtch.h"
#include "machine/68681.h"
-class adp_state : public driver_data_t
+class adp_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, adp_state(machine)); }
-
- adp_state(running_machine &machine)
- : driver_data_t(machine) { }
+ adp_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* misc */
UINT8 mux_data;
diff --git a/src/mame/drivers/albazc.c b/src/mame/drivers/albazc.c
index edf4197f4fa..f69f0720bfa 100644
--- a/src/mame/drivers/albazc.c
+++ b/src/mame/drivers/albazc.c
@@ -14,13 +14,11 @@ TODO:
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
-class albazc_state : public driver_data_t
+class albazc_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, albazc_state(machine)); }
-
- albazc_state(running_machine &machine)
- : driver_data_t(machine) { }
+ albazc_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
UINT8 * spriteram1;
diff --git a/src/mame/drivers/albazg.c b/src/mame/drivers/albazg.c
index db60c41eaf2..72d2f3de428 100644
--- a/src/mame/drivers/albazg.c
+++ b/src/mame/drivers/albazg.c
@@ -61,13 +61,11 @@ Code disassembling
#include "machine/8255ppi.h"
-class albazg_state : public driver_data_t
+class albazg_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, albazg_state(machine)); }
-
- albazg_state(running_machine &machine)
- : driver_data_t(machine) { }
+ albazg_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * cus_ram;
diff --git a/src/mame/drivers/alg.c b/src/mame/drivers/alg.c
index 3c2356b0a8a..3addf61b0cd 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_CONFIG_START( alg_r1, driver_data_t )
+static MACHINE_CONFIG_START( alg_r1, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, AMIGA_68000_NTSC_CLOCK)
diff --git a/src/mame/drivers/amaticmg.c b/src/mame/drivers/amaticmg.c
index 347cfc5adb9..e2ec14a734c 100644
--- a/src/mame/drivers/amaticmg.c
+++ b/src/mame/drivers/amaticmg.c
@@ -610,7 +610,7 @@ GFXDECODE_END
* Machine Drivers *
************************************/
-static MACHINE_CONFIG_START( amaticmg, driver_data_t )
+static MACHINE_CONFIG_START( amaticmg, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK) /* WRONG! */
MDRV_CPU_PROGRAM_MAP(amaticmg_map)
diff --git a/src/mame/drivers/ampoker2.c b/src/mame/drivers/ampoker2.c
index a81cd960e2e..1db26cb00d3 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_CONFIG_START( ampoker2, driver_data_t )
+static MACHINE_CONFIG_START( ampoker2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/2) /* 3 MHz */
diff --git a/src/mame/drivers/arcadia.c b/src/mame/drivers/arcadia.c
index aa068ccb07f..330bb4675ed 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_CONFIG_START( arcadia, driver_data_t )
+static MACHINE_CONFIG_START( arcadia, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, AMIGA_68000_NTSC_CLOCK)
diff --git a/src/mame/drivers/argus.c b/src/mame/drivers/argus.c
index d26e409209e..f795fad1cb0 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_CONFIG_START( argus, driver_data_t )
+static MACHINE_CONFIG_START( argus, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 4 MHz */
@@ -587,7 +587,7 @@ static MACHINE_CONFIG_START( argus, driver_data_t )
#endif
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( valtric, driver_data_t )
+static MACHINE_CONFIG_START( valtric, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5 MHz */
@@ -632,7 +632,7 @@ static MACHINE_CONFIG_START( valtric, driver_data_t )
MDRV_SOUND_ROUTE(3, "mono", 0.50)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( butasan, driver_data_t )
+static MACHINE_CONFIG_START( butasan, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5 MHz */
diff --git a/src/mame/drivers/aristmk4.c b/src/mame/drivers/aristmk4.c
index 7a10fea9549..570eec8aa1e 100644
--- a/src/mame/drivers/aristmk4.c
+++ b/src/mame/drivers/aristmk4.c
@@ -1194,7 +1194,7 @@ static MACHINE_RESET( aristmk4 )
}
-static MACHINE_CONFIG_START( aristmk4, driver_data_t )
+static MACHINE_CONFIG_START( aristmk4, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CLOCK/8) // 1.5mhz (goldenc needs a bit faster for some reason)
diff --git a/src/mame/drivers/aristmk5.c b/src/mame/drivers/aristmk5.c
index 610dbc233cc..927bac6c45e 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_CONFIG_START( aristmk5, driver_data_t )
+static MACHINE_CONFIG_START( aristmk5, driver_device )
MDRV_CPU_ADD("maincpu", ARM, 10000000) // ?
MDRV_CPU_PROGRAM_MAP(aristmk5_map)
diff --git a/src/mame/drivers/artmagic.c b/src/mame/drivers/artmagic.c
index dcad0ab4457..1f988ad184d 100644
--- a/src/mame/drivers/artmagic.c
+++ b/src/mame/drivers/artmagic.c
@@ -705,7 +705,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( artmagic, driver_data_t )
+static MACHINE_CONFIG_START( artmagic, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK_25MHz/2)
diff --git a/src/mame/drivers/asteroid.c b/src/mame/drivers/asteroid.c
index 710790b923f..094d21450b5 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_CONFIG_START( asteroid, driver_data_t )
+static MACHINE_CONFIG_START( asteroid, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/8)
diff --git a/src/mame/drivers/astinvad.c b/src/mame/drivers/astinvad.c
index e399d0907d3..bc27811fd1d 100644
--- a/src/mame/drivers/astinvad.c
+++ b/src/mame/drivers/astinvad.c
@@ -41,13 +41,11 @@ enum
};
-class astinvad_state : public driver_data_t
+class astinvad_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, astinvad_state(machine)); }
-
- astinvad_state(running_machine &machine)
- : driver_data_t(machine) { }
+ astinvad_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 * colorram;
UINT8 * videoram;
diff --git a/src/mame/drivers/astrocde.c b/src/mame/drivers/astrocde.c
index e554724c6a3..e4afee6fc05 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_CONFIG_START( astrocade_base, driver_data_t )
+static MACHINE_CONFIG_START( astrocade_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, ASTROCADE_CLOCK/4)
diff --git a/src/mame/drivers/astrocorp.c b/src/mame/drivers/astrocorp.c
index 6c57ab28a74..d6fba541be3 100644
--- a/src/mame/drivers/astrocorp.c
+++ b/src/mame/drivers/astrocorp.c
@@ -35,13 +35,11 @@ To do:
#include "machine/ticket.h"
#include "sound/okim6295.h"
-class astrocorp_state : public driver_data_t
+class astrocorp_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, astrocorp_state(machine)); }
-
- astrocorp_state(running_machine &machine)
- : driver_data_t(machine) { }
+ astrocorp_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * spriteram;
diff --git a/src/mame/drivers/atarisy4.c b/src/mame/drivers/atarisy4.c
index a33dedcb2c8..94d974e72dc 100644
--- a/src/mame/drivers/atarisy4.c
+++ b/src/mame/drivers/atarisy4.c
@@ -694,7 +694,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( atarisy4, driver_data_t )
+static MACHINE_CONFIG_START( atarisy4, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", vblank_int)
diff --git a/src/mame/drivers/ataxx.c b/src/mame/drivers/ataxx.c
index 85b23e18f81..fb0f46a0f29 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_CONFIG_START( ataxx, driver_data_t )
+static MACHINE_CONFIG_START( ataxx, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("master", Z80, 6000000)
diff --git a/src/mame/drivers/atetris.c b/src/mame/drivers/atetris.c
index 399ee799319..7b26490767c 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_CONFIG_START( atetris, driver_data_t )
+static MACHINE_CONFIG_START( atetris, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,MASTER_CLOCK/8)
@@ -374,7 +374,7 @@ static MACHINE_CONFIG_START( atetris, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( atetrisb2, driver_data_t )
+static MACHINE_CONFIG_START( atetrisb2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,BOOTLEG_CLOCK/8)
diff --git a/src/mame/drivers/attckufo.c b/src/mame/drivers/attckufo.c
index 83781faf5ad..9ed929267ae 100644
--- a/src/mame/drivers/attckufo.c
+++ b/src/mame/drivers/attckufo.c
@@ -46,13 +46,11 @@ LOIPOIO-B
#include "sound/mos6560.h"
-class attckufo_state : public driver_data_t
+class attckufo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, attckufo_state(machine)); }
-
- attckufo_state(running_machine &machine)
- : driver_data_t(machine),
+ attckufo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
maincpu(machine.device<cpu_device>("maincpu")),
mos6560(machine.device("mos6560")) { }
diff --git a/src/mame/drivers/aztarac.c b/src/mame/drivers/aztarac.c
index a6939d085db..ab4ecc20c2b 100644
--- a/src/mame/drivers/aztarac.c
+++ b/src/mame/drivers/aztarac.c
@@ -143,7 +143,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( aztarac, driver_data_t )
+static MACHINE_CONFIG_START( aztarac, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
diff --git a/src/mame/drivers/backfire.c b/src/mame/drivers/backfire.c
index 461697bbc71..96ab9cecb52 100644
--- a/src/mame/drivers/backfire.c
+++ b/src/mame/drivers/backfire.c
@@ -20,13 +20,11 @@
#include "video/deco16ic.h"
#include "rendlay.h"
-class backfire_state : public driver_data_t
+class backfire_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, backfire_state(machine)); }
-
- backfire_state(running_machine &machine)
- : driver_data_t(machine) { }
+ backfire_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * pf1_rowscroll;
diff --git a/src/mame/drivers/bagman.c b/src/mame/drivers/bagman.c
index 3f31f53bc68..31d3edba4b7 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_CONFIG_START( bagman, driver_data_t )
+static MACHINE_CONFIG_START( bagman, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, BAGMAN_H0)
@@ -504,7 +504,7 @@ static MACHINE_CONFIG_START( bagman, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( pickin, driver_data_t )
+static MACHINE_CONFIG_START( pickin, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, BAGMAN_H0)
@@ -556,7 +556,7 @@ z80
*/
-static MACHINE_CONFIG_START( botanic, driver_data_t )
+static MACHINE_CONFIG_START( botanic, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, BAGMAN_H0)
diff --git a/src/mame/drivers/baraduke.c b/src/mame/drivers/baraduke.c
index c58d0b76b54..2b86fc811b7 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_CONFIG_START( baraduke, driver_data_t )
+static MACHINE_CONFIG_START( baraduke, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809,49152000/32)
diff --git a/src/mame/drivers/battlera.c b/src/mame/drivers/battlera.c
index 40b741ace83..f6422b1f52a 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_CONFIG_START( battlera, driver_data_t )
+static MACHINE_CONFIG_START( battlera, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H6280,21477200/3)
diff --git a/src/mame/drivers/beaminv.c b/src/mame/drivers/beaminv.c
index e649d1757d0..6594ec1ea37 100644
--- a/src/mame/drivers/beaminv.c
+++ b/src/mame/drivers/beaminv.c
@@ -55,13 +55,11 @@ Stephh's notes (based on the games Z80 code and some tests) :
#include "cpu/z80/z80.h"
-class beaminv_state : public driver_data_t
+class beaminv_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, beaminv_state(machine)); }
-
- beaminv_state(running_machine &machine)
- : driver_data_t(machine) { }
+ beaminv_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/beathead.c b/src/mame/drivers/beathead.c
index 93311f6d705..65e37fc7aeb 100644
--- a/src/mame/drivers/beathead.c
+++ b/src/mame/drivers/beathead.c
@@ -498,8 +498,8 @@ static DRIVER_INIT( beathead )
atarijsa_init(machine, "IN2", 0x0040);
/* prepare the speedups */
- state->m_speedup_data = state->m_maincpu.space(AS_PROGRAM)->install_handler(0x00000ae8, 0x00000aeb, 0, 0, read32_delegate_create(beathead_state, speedup_r, *state));
- state->m_movie_speedup_data = state->m_maincpu.space(AS_PROGRAM)->install_handler(0x00000804, 0x00000807, 0, 0, read32_delegate_create(beathead_state, movie_speedup_r, *state));
+ state->m_speedup_data = state->m_maincpu->space(AS_PROGRAM)->install_handler(0x00000ae8, 0x00000aeb, 0, 0, read32_delegate_create(beathead_state, speedup_r, *state));
+ state->m_movie_speedup_data = state->m_maincpu->space(AS_PROGRAM)->install_handler(0x00000804, 0x00000807, 0, 0, read32_delegate_create(beathead_state, movie_speedup_r, *state));
}
diff --git a/src/mame/drivers/beezer.c b/src/mame/drivers/beezer.c
index 7a4e5aa613f..5c39cd1f958 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_CONFIG_START( beezer, driver_data_t )
+static MACHINE_CONFIG_START( beezer, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 1000000) /* 1 MHz */
diff --git a/src/mame/drivers/berzerk.c b/src/mame/drivers/berzerk.c
index ba64b7f960b..72d4f3dfd07 100644
--- a/src/mame/drivers/berzerk.c
+++ b/src/mame/drivers/berzerk.c
@@ -1043,7 +1043,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( berzerk, driver_data_t )
+static MACHINE_CONFIG_START( berzerk, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CPU_CLOCK)
diff --git a/src/mame/drivers/bestleag.c b/src/mame/drivers/bestleag.c
index 9781242d7be..33e87721e56 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_CONFIG_START( bestleag, driver_data_t )
+static MACHINE_CONFIG_START( bestleag, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(bestleag_map)
MDRV_CPU_VBLANK_INT("screen", irq6_line_hold)
diff --git a/src/mame/drivers/bfcobra.c b/src/mame/drivers/bfcobra.c
index 2f938da24e1..4f2130fb75b 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_CONFIG_START( bfcobra, driver_data_t )
+static MACHINE_CONFIG_START( bfcobra, driver_device )
MDRV_CPU_ADD("maincpu", Z80, Z80_XTAL)
MDRV_CPU_PROGRAM_MAP(z80_prog_map)
MDRV_CPU_IO_MAP(z80_io_map)
diff --git a/src/mame/drivers/bfm_sc1.c b/src/mame/drivers/bfm_sc1.c
index 3dbd31aebff..6491bd6133b 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_CONFIG_START( scorpion1, driver_data_t )
+static MACHINE_CONFIG_START( scorpion1, driver_device )
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
diff --git a/src/mame/drivers/bfm_sc2.c b/src/mame/drivers/bfm_sc2.c
index c61d074179e..4b0fe589be7 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_CONFIG_START( scorpion2_vid, driver_data_t )
+static MACHINE_CONFIG_START( scorpion2_vid, driver_device )
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
@@ -3967,7 +3967,7 @@ INPUT_PORTS_END
/* machine driver for scorpion2 board */
-static MACHINE_CONFIG_START( scorpion2, driver_data_t )
+static MACHINE_CONFIG_START( scorpion2, driver_device )
MDRV_MACHINE_RESET(awp_init)
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/4 )
MDRV_CPU_PROGRAM_MAP(sc2_memmap)
@@ -3995,7 +3995,7 @@ MACHINE_CONFIG_END
/* machine driver for scorpion2 board + matrix board */
-static MACHINE_CONFIG_START( scorpion2_dm01, driver_data_t )
+static MACHINE_CONFIG_START( scorpion2_dm01, driver_device )
MDRV_MACHINE_RESET(dm01_init)
MDRV_QUANTUM_TIME(HZ(960)) // needed for serial communication !!
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/4 )
diff --git a/src/mame/drivers/bfmsys85.c b/src/mame/drivers/bfmsys85.c
index ae050f92ca7..797fc779b22 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_CONFIG_START( bfmsys85, driver_data_t )
+static MACHINE_CONFIG_START( bfmsys85, driver_device )
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
diff --git a/src/mame/drivers/big10.c b/src/mame/drivers/big10.c
index 5156d560eba..82bcd1eff64 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_CONFIG_START( big10, driver_data_t )
+static MACHINE_CONFIG_START( big10, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6) /* guess */
diff --git a/src/mame/drivers/bigfghtr.c b/src/mame/drivers/bigfghtr.c
index d3e0dcfbb54..65f07ed4b32 100644
--- a/src/mame/drivers/bigfghtr.c
+++ b/src/mame/drivers/bigfghtr.c
@@ -117,13 +117,11 @@ Notes:
#include "sound/3812intf.h"
-class bigfghtr_state : public driver_data_t
+class bigfghtr_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bigfghtr_state(machine)); }
-
- bigfghtr_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bigfghtr_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
UINT16 * text_videoram;
diff --git a/src/mame/drivers/bingoc.c b/src/mame/drivers/bingoc.c
index 2c9e14591ba..b2deecec3e9 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_CONFIG_START( bingoc, driver_data_t )
+static MACHINE_CONFIG_START( bingoc, driver_device )
MDRV_CPU_ADD("maincpu", M68000,8000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(main_map)
diff --git a/src/mame/drivers/bingor.c b/src/mame/drivers/bingor.c
index 9eb1b0b7a73..4232363ef8e 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_CONFIG_START( bingor, driver_data_t )
+static MACHINE_CONFIG_START( bingor, driver_device )
MDRV_CPU_ADD("maincpu", I80186, 14000000 ) //?? Mhz
MDRV_CPU_PROGRAM_MAP(bingor_map)
MDRV_CPU_IO_MAP(bingor_io)
diff --git a/src/mame/drivers/bishjan.c b/src/mame/drivers/bishjan.c
index 534b2575cd7..89b2ea921aa 100644
--- a/src/mame/drivers/bishjan.c
+++ b/src/mame/drivers/bishjan.c
@@ -825,7 +825,7 @@ static INTERRUPT_GEN( bishjan_interrupt )
}
}
-static MACHINE_CONFIG_START( bishjan, driver_data_t )
+static MACHINE_CONFIG_START( bishjan, driver_device )
MDRV_CPU_ADD("maincpu", H83044, XTAL_44_1MHz / 3)
MDRV_CPU_PROGRAM_MAP( bishjan_map)
MDRV_CPU_VBLANK_INT_HACK(bishjan_interrupt,2)
@@ -856,7 +856,7 @@ static INTERRUPT_GEN( saklove_interrupt )
cpu_set_input_line_and_vector(device,0,HOLD_LINE,0x4c/4);
}
-static MACHINE_CONFIG_START( saklove, driver_data_t )
+static MACHINE_CONFIG_START( saklove, driver_device )
MDRV_CPU_ADD("maincpu", I80188, XTAL_20MHz ) // !! AMD AM188-EM !!
MDRV_CPU_PROGRAM_MAP( saklove_map)
MDRV_CPU_IO_MAP( saklove_io)
diff --git a/src/mame/drivers/blackt96.c b/src/mame/drivers/blackt96.c
index 242820e86b5..cde9cb53f29 100644
--- a/src/mame/drivers/blackt96.c
+++ b/src/mame/drivers/blackt96.c
@@ -471,7 +471,7 @@ ADDRESS_MAP_END
-static MACHINE_CONFIG_START( blackt96, driver_data_t )
+static MACHINE_CONFIG_START( blackt96, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 18000000 /2)
MDRV_CPU_PROGRAM_MAP(blackt96_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
diff --git a/src/mame/drivers/blitz.c b/src/mame/drivers/blitz.c
index 59516320106..7ffd185549a 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_CONFIG_START( megadpkr, driver_data_t )
+static MACHINE_CONFIG_START( megadpkr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, CPU_CLOCK)
diff --git a/src/mame/drivers/bloodbro.c b/src/mame/drivers/bloodbro.c
index 32aac8074ee..1a6333ec9d7 100644
--- a/src/mame/drivers/bloodbro.c
+++ b/src/mame/drivers/bloodbro.c
@@ -433,7 +433,7 @@ GFXDECODE_END
/* Machine Drivers */
-static MACHINE_CONFIG_START( bloodbro, driver_data_t )
+static MACHINE_CONFIG_START( bloodbro, driver_device )
// basic machine hardware
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz/2) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(bloodbro_map)
diff --git a/src/mame/drivers/bmcbowl.c b/src/mame/drivers/bmcbowl.c
index 50103633873..a5dc20b6792 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_CONFIG_START( bmcbowl, driver_data_t )
+static MACHINE_CONFIG_START( bmcbowl, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 21477270/2 )
MDRV_CPU_PROGRAM_MAP(bmcbowl_mem)
MDRV_CPU_VBLANK_INT_HACK(bmc_interrupt,2)
diff --git a/src/mame/drivers/bnstars.c b/src/mame/drivers/bnstars.c
index 427ada851ad..20797871d9e 100644
--- a/src/mame/drivers/bnstars.c
+++ b/src/mame/drivers/bnstars.c
@@ -1324,7 +1324,7 @@ static MACHINE_RESET( ms32 )
}
-static MACHINE_CONFIG_START( bnstars, driver_data_t )
+static MACHINE_CONFIG_START( bnstars, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V70, 20000000) // 20MHz
diff --git a/src/mame/drivers/boxer.c b/src/mame/drivers/boxer.c
index 4cae524f53a..b3462b973a8 100644
--- a/src/mame/drivers/boxer.c
+++ b/src/mame/drivers/boxer.c
@@ -20,13 +20,11 @@
*
*************************************/
-class boxer_state : public driver_data_t
+class boxer_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, boxer_state(machine)); }
-
- boxer_state(running_machine &machine)
- : driver_data_t(machine) { }
+ boxer_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * tile_ram;
diff --git a/src/mame/drivers/btoads.c b/src/mame/drivers/btoads.c
index 6196904de7e..1a6d8277f64 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_CONFIG_START( btoads, driver_data_t )
+static MACHINE_CONFIG_START( btoads, driver_device )
MDRV_CPU_ADD("maincpu", TMS34020, CPU_CLOCK/2)
MDRV_CPU_CONFIG(tms_config)
diff --git a/src/mame/drivers/buster.c b/src/mame/drivers/buster.c
index 80b72d34ac1..36d24f07494 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_CONFIG_START( buster, driver_data_t )
+static MACHINE_CONFIG_START( buster, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(mainmap)
diff --git a/src/mame/drivers/bwidow.c b/src/mame/drivers/bwidow.c
index 6f0bc48bec9..9ad264a8b80 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_CONFIG_START( bwidow, driver_data_t )
+static MACHINE_CONFIG_START( bwidow, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK / 8)
diff --git a/src/mame/drivers/bzone.c b/src/mame/drivers/bzone.c
index 4e790d714fe..1f3ca592ccd 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_CONFIG_START( bzone_base, driver_data_t )
+static MACHINE_CONFIG_START( bzone_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, BZONE_MASTER_CLOCK / 8)
diff --git a/src/mame/drivers/cabaret.c b/src/mame/drivers/cabaret.c
index 5b1a5a3859c..7d5714d75c5 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_CONFIG_START( cabaret, driver_data_t )
+static MACHINE_CONFIG_START( cabaret, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 2)
MDRV_CPU_PROGRAM_MAP(cabaret_map)
diff --git a/src/mame/drivers/calchase.c b/src/mame/drivers/calchase.c
index 05ef3683911..dcbc35f4df0 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_CONFIG_START( calchase, driver_data_t )
+static MACHINE_CONFIG_START( calchase, driver_device )
MDRV_CPU_ADD("maincpu", PENTIUM, 200000000) // Cyrix 686MX-PR200 CPU
MDRV_CPU_PROGRAM_MAP(calchase_map)
MDRV_CPU_IO_MAP(calchase_io)
diff --git a/src/mame/drivers/calomega.c b/src/mame/drivers/calomega.c
index 441de495e58..7163249c211 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_CONFIG_START( sys903, driver_data_t )
+static MACHINE_CONFIG_START( sys903, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, CPU_CLOCK) /* confirmed */
MDRV_CPU_PROGRAM_MAP(sys903_map)
diff --git a/src/mame/drivers/calorie.c b/src/mame/drivers/calorie.c
index fdce61470f6..edd3d55ddb6 100644
--- a/src/mame/drivers/calorie.c
+++ b/src/mame/drivers/calorie.c
@@ -83,13 +83,11 @@ Notes:
#include "sound/ay8910.h"
-class calorie_state : public driver_data_t
+class calorie_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, calorie_state(machine)); }
-
- calorie_state(running_machine &machine)
- : driver_data_t(machine) { }
+ calorie_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * fg_ram;
diff --git a/src/mame/drivers/cardline.c b/src/mame/drivers/cardline.c
index 86ff26c885c..86796aed7a2 100644
--- a/src/mame/drivers/cardline.c
+++ b/src/mame/drivers/cardline.c
@@ -192,7 +192,7 @@ static PALETTE_INIT(cardline)
}
}
-static MACHINE_CONFIG_START( cardline, driver_data_t )
+static MACHINE_CONFIG_START( cardline, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I80C32,12000000)
diff --git a/src/mame/drivers/carpolo.c b/src/mame/drivers/carpolo.c
index ac86db2ce03..ce9bd513f73 100644
--- a/src/mame/drivers/carpolo.c
+++ b/src/mame/drivers/carpolo.c
@@ -230,7 +230,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_CONFIG_START( carpolo, driver_data_t )
+static MACHINE_CONFIG_START( carpolo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, XTAL_11_289MHz/12) /* 940.75 kHz */
diff --git a/src/mame/drivers/carrera.c b/src/mame/drivers/carrera.c
index e829fba7201..461e32f33d7 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_CONFIG_START( carrera, driver_data_t )
+static MACHINE_CONFIG_START( carrera, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK / 6)
MDRV_CPU_PROGRAM_MAP(carrera_map)
diff --git a/src/mame/drivers/caswin.c b/src/mame/drivers/caswin.c
index dd75464b64e..6467693b6a5 100644
--- a/src/mame/drivers/caswin.c
+++ b/src/mame/drivers/caswin.c
@@ -274,7 +274,7 @@ static PALETTE_INIT( caswin )
}
-static MACHINE_CONFIG_START( vvillage, driver_data_t )
+static MACHINE_CONFIG_START( vvillage, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,4000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(vvillage_mem)
diff --git a/src/mame/drivers/cb2001.c b/src/mame/drivers/cb2001.c
index e2ba2b19674..6d25ce7da62 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_CONFIG_START( cb2001, driver_data_t )
+static MACHINE_CONFIG_START( cb2001, driver_device )
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)
diff --git a/src/mame/drivers/cball.c b/src/mame/drivers/cball.c
index 4b94a84ab77..8cd88fa6bad 100644
--- a/src/mame/drivers/cball.c
+++ b/src/mame/drivers/cball.c
@@ -8,13 +8,11 @@
#include "cpu/m6800/m6800.h"
-class cball_state : public driver_data_t
+class cball_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cball_state(machine)); }
-
- cball_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cball_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * video_ram;
diff --git a/src/mame/drivers/cchasm.c b/src/mame/drivers/cchasm.c
index ad1cbffecb4..61d3a6cbdc0 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_CONFIG_START( cchasm, driver_data_t )
+static MACHINE_CONFIG_START( cchasm, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,CCHASM_68K_CLOCK) /* 8 MHz (from schematics) */
diff --git a/src/mame/drivers/cclimber.c b/src/mame/drivers/cclimber.c
index 713d57a8a24..482e4a3fcfc 100644
--- a/src/mame/drivers/cclimber.c
+++ b/src/mame/drivers/cclimber.c
@@ -981,7 +981,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( root, driver_data_t )
+static MACHINE_CONFIG_START( root, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/3/2) /* 3.072 MHz */
@@ -1077,7 +1077,7 @@ static MACHINE_CONFIG_DERIVED( toprollr, cclimber )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( swimmer, driver_data_t )
+static MACHINE_CONFIG_START( swimmer, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/6) /* verified on pcb */
diff --git a/src/mame/drivers/cdi.c b/src/mame/drivers/cdi.c
index 7bde80d93e7..cea652015d7 100644
--- a/src/mame/drivers/cdi.c
+++ b/src/mame/drivers/cdi.c
@@ -558,13 +558,11 @@ struct _mcd212_ab_t
BYTE68K deltaUV[BYTE68K_MAX + 1];
};
-class cdi_state : public driver_data_t
+class cdi_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cdi_state(machine)); }
-
- cdi_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cdi_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 *planea;
UINT16 *planeb;
diff --git a/src/mame/drivers/centiped.c b/src/mame/drivers/centiped.c
index 295bf9c1ce1..ece4c9d9c11 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_CONFIG_START( centiped, driver_data_t )
+static MACHINE_CONFIG_START( centiped, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12096000/8) /* 1.512 MHz (slows down to 0.75MHz while accessing playfield RAM) */
@@ -1710,7 +1710,7 @@ static MACHINE_CONFIG_DERIVED( mazeinv, milliped )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( bullsdrt, driver_data_t )
+static MACHINE_CONFIG_START( bullsdrt, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, 12096000/8)
diff --git a/src/mame/drivers/cham24.c b/src/mame/drivers/cham24.c
index 55dec1f62e6..35c4b7fe4ea 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_CONFIG_START( cham24, driver_data_t )
+static MACHINE_CONFIG_START( cham24, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", N2A03, N2A03_DEFAULTCLOCK)
MDRV_CPU_PROGRAM_MAP(cham24_map)
diff --git a/src/mame/drivers/chanbara.c b/src/mame/drivers/chanbara.c
index 81a1632bc30..ab83b283e22 100644
--- a/src/mame/drivers/chanbara.c
+++ b/src/mame/drivers/chanbara.c
@@ -51,13 +51,11 @@ ToDo:
#include "sound/2203intf.h"
-class chanbara_state : public driver_data_t
+class chanbara_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, chanbara_state(machine)); }
-
- chanbara_state(running_machine &machine)
- : driver_data_t(machine) { }
+ chanbara_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/chihiro.c b/src/mame/drivers/chihiro.c
index ea3839811da..dc977201cdb 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_CONFIG_START( chihiro_base, driver_data_t )
+static MACHINE_CONFIG_START( chihiro_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PENTIUM, 733333333) /* Wrong! */
diff --git a/src/mame/drivers/chinsan.c b/src/mame/drivers/chinsan.c
index df5cd8ea12b..e0d9405151a 100644
--- a/src/mame/drivers/chinsan.c
+++ b/src/mame/drivers/chinsan.c
@@ -47,13 +47,11 @@ MM63.10N
#include "sound/2203intf.h"
#include "sound/msm5205.h"
-class chinsan_state : public driver_data_t
+class chinsan_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, chinsan_state(machine)); }
-
- chinsan_state(running_machine &machine)
- : driver_data_t(machine) { }
+ chinsan_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * video;
diff --git a/src/mame/drivers/chsuper.c b/src/mame/drivers/chsuper.c
index 52341925693..47aca44eb0e 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_CONFIG_START( chsuper, driver_data_t )
+static MACHINE_CONFIG_START( chsuper, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 2) /* HD64180RP8, 8 MHz? */
diff --git a/src/mame/drivers/cinemat.c b/src/mame/drivers/cinemat.c
index 6c3407f8540..6202e019e6f 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_CONFIG_START( cinemat_nojmi_4k, driver_data_t )
+static MACHINE_CONFIG_START( cinemat_nojmi_4k, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", CCPU, MASTER_CLOCK/4)
diff --git a/src/mame/drivers/cischeat.c b/src/mame/drivers/cischeat.c
index a0abdfa4d94..535c5c3140b 100644
--- a/src/mame/drivers/cischeat.c
+++ b/src/mame/drivers/cischeat.c
@@ -1565,7 +1565,7 @@ static INTERRUPT_GEN( cischeat_interrupt )
-static MACHINE_CONFIG_START( bigrun, driver_data_t )
+static MACHINE_CONFIG_START( bigrun, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("cpu1", M68000, 10000000)
@@ -1710,7 +1710,7 @@ static INTERRUPT_GEN( interrupt_scudhamm )
}
-static MACHINE_CONFIG_START( scudhamm, driver_data_t )
+static MACHINE_CONFIG_START( scudhamm, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000, 12000000)
diff --git a/src/mame/drivers/clayshoo.c b/src/mame/drivers/clayshoo.c
index e584910a6a4..2c43fe9559b 100644
--- a/src/mame/drivers/clayshoo.c
+++ b/src/mame/drivers/clayshoo.c
@@ -17,13 +17,11 @@
#include "machine/8255ppi.h"
-class clayshoo_state : public driver_data_t
+class clayshoo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, clayshoo_state(machine)); }
-
- clayshoo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ clayshoo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/cliffhgr.c b/src/mame/drivers/cliffhgr.c
index b78aa6d89fd..dc254e1df51 100644
--- a/src/mame/drivers/cliffhgr.c
+++ b/src/mame/drivers/cliffhgr.c
@@ -684,7 +684,7 @@ DISCRETE_SOUND_EXTERN( cliffhgr );
*
*************************************/
-static MACHINE_CONFIG_START( cliffhgr, driver_data_t )
+static MACHINE_CONFIG_START( cliffhgr, driver_device )
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4MHz */
MDRV_CPU_PROGRAM_MAP(mainmem)
diff --git a/src/mame/drivers/cloak.c b/src/mame/drivers/cloak.c
index f03d4e93acf..43c95c491b8 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_CONFIG_START( cloak, driver_data_t )
+static MACHINE_CONFIG_START( cloak, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1000000) /* 1 MHz ???? */
diff --git a/src/mame/drivers/clshroad.c b/src/mame/drivers/clshroad.c
index b1f44ddff98..906df18ebda 100644
--- a/src/mame/drivers/clshroad.c
+++ b/src/mame/drivers/clshroad.c
@@ -248,7 +248,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( firebatl, driver_data_t )
+static MACHINE_CONFIG_START( firebatl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3000000) /* ? */
@@ -283,7 +283,7 @@ static MACHINE_CONFIG_START( firebatl, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( clshroad, driver_data_t )
+static MACHINE_CONFIG_START( clshroad, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/4) /* ? real speed unknown. 3MHz is too low and causes problems */
diff --git a/src/mame/drivers/cmmb.c b/src/mame/drivers/cmmb.c
index c15f59445f8..a7865d41662 100644
--- a/src/mame/drivers/cmmb.c
+++ b/src/mame/drivers/cmmb.c
@@ -270,7 +270,7 @@ static MACHINE_RESET( cmmb )
{
}
-static MACHINE_CONFIG_START( cmmb, driver_data_t )
+static MACHINE_CONFIG_START( cmmb, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M65C02,8000000/2) // unknown clock
diff --git a/src/mame/drivers/cntsteer.c b/src/mame/drivers/cntsteer.c
index 695868b4c76..dcd06ed9436 100644
--- a/src/mame/drivers/cntsteer.c
+++ b/src/mame/drivers/cntsteer.c
@@ -29,13 +29,11 @@
#include "sound/dac.h"
-class cntsteer_state : public driver_data_t
+class cntsteer_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cntsteer_state(machine)); }
-
- cntsteer_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cntsteer_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/coinmstr.c b/src/mame/drivers/coinmstr.c
index ab964434fb6..76e8ea52521 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_CONFIG_START( coinmstr, driver_data_t )
+static MACHINE_CONFIG_START( coinmstr, driver_device )
MDRV_CPU_ADD("maincpu",Z80,8000000) // ?
MDRV_CPU_PROGRAM_MAP(coinmstr_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
diff --git a/src/mame/drivers/coinmvga.c b/src/mame/drivers/coinmvga.c
index 90fc92cc32b..e3423d9df3d 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_CONFIG_START( coinmvga, driver_data_t )
+static MACHINE_CONFIG_START( coinmvga, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H83007, CPU_CLOCK) /* xtal */
diff --git a/src/mame/drivers/cojag.c b/src/mame/drivers/cojag.c
index 9a672244af3..48f233d0543 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_CONFIG_START( cojagr3k, driver_data_t )
+static MACHINE_CONFIG_START( cojagr3k, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R3041BE, R3000_CLOCK)
diff --git a/src/mame/drivers/comebaby.c b/src/mame/drivers/comebaby.c
index ed19957672f..32b0dcfdace 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_CONFIG_START( comebaby, driver_data_t )
+static MACHINE_CONFIG_START( comebaby, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PENTIUM, 2000000000) /* Probably a Pentium .. ?? Mhz*/
MDRV_CPU_PROGRAM_MAP(comebaby_map)
diff --git a/src/mame/drivers/coolridr.c b/src/mame/drivers/coolridr.c
index 5250006529a..929747d42fa 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_CONFIG_START( coolridr, driver_data_t )
+static MACHINE_CONFIG_START( coolridr, driver_device )
MDRV_CPU_ADD("maincpu", SH2, 28000000) // 28 mhz
MDRV_CPU_PROGRAM_MAP(system_h1_map)
MDRV_CPU_VBLANK_INT("screen",system_h1)
diff --git a/src/mame/drivers/cps3.c b/src/mame/drivers/cps3.c
index 880a7e84d90..193e07c27bf 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_CONFIG_START( cps3, driver_data_t )
+static MACHINE_CONFIG_START( cps3, driver_device )
/* 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)
diff --git a/src/mame/drivers/crbaloon.c b/src/mame/drivers/crbaloon.c
index 7f613dd0200..7e388fdfe9b 100644
--- a/src/mame/drivers/crbaloon.c
+++ b/src/mame/drivers/crbaloon.c
@@ -358,7 +358,7 @@ static MACHINE_RESET( crballoon )
*
*************************************/
-static MACHINE_CONFIG_START( crbaloon, driver_data_t )
+static MACHINE_CONFIG_START( crbaloon, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CRBALOON_MASTER_XTAL / 3)
diff --git a/src/mame/drivers/crystal.c b/src/mame/drivers/crystal.c
index 1ccbae21444..18b31b4c0f8 100644
--- a/src/mame/drivers/crystal.c
+++ b/src/mame/drivers/crystal.c
@@ -124,13 +124,11 @@ Notes:
#define IDLE_LOOP_SPEEDUP
-class crystal_state : public driver_data_t
+class crystal_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, crystal_state(machine)); }
-
- crystal_state(running_machine &machine)
- : driver_data_t(machine) { }
+ crystal_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT32 * workram;
diff --git a/src/mame/drivers/cshooter.c b/src/mame/drivers/cshooter.c
index 5d77019f1e0..f3b54663147 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_CONFIG_START( cshooter, driver_data_t )
+static MACHINE_CONFIG_START( cshooter, driver_device )
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)
@@ -445,7 +445,7 @@ static MACHINE_CONFIG_START( cshooter, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( airraid, driver_data_t )
+static MACHINE_CONFIG_START( airraid, driver_device )
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)
diff --git a/src/mame/drivers/cubeqst.c b/src/mame/drivers/cubeqst.c
index a07ef4f5913..107d92da458 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_CONFIG_START( cubeqst, driver_data_t )
+static MACHINE_CONFIG_START( cubeqst, driver_device )
MDRV_CPU_ADD("main_cpu", M68000, XTAL_16MHz / 2)
MDRV_CPU_PROGRAM_MAP(m68k_program_map)
MDRV_CPU_VBLANK_INT("screen", vblank)
diff --git a/src/mame/drivers/cubocd32.c b/src/mame/drivers/cubocd32.c
index ff797b2ca20..1423920a9ca 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_CONFIG_START( cd32, driver_data_t )
+static MACHINE_CONFIG_START( cd32, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, AMIGA_68EC020_PAL_CLOCK) /* 14.3 Mhz */
diff --git a/src/mame/drivers/cultures.c b/src/mame/drivers/cultures.c
index f9feb252d9f..af79f4732a8 100644
--- a/src/mame/drivers/cultures.c
+++ b/src/mame/drivers/cultures.c
@@ -14,13 +14,11 @@
#define MCLK 16000000
-class cultures_state : public driver_data_t
+class cultures_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cultures_state(machine)); }
-
- cultures_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cultures_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bg0_videoram;
diff --git a/src/mame/drivers/cybertnk.c b/src/mame/drivers/cybertnk.c
index 59f10048c5e..2269fa7a01b 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_CONFIG_START( cybertnk, driver_data_t )
+static MACHINE_CONFIG_START( cybertnk, driver_device )
MDRV_CPU_ADD("maincpu", M68000,20000000/2)
MDRV_CPU_PROGRAM_MAP(master_mem)
// MDRV_CPU_VBLANK_INT_HACK(master_irq,2)
diff --git a/src/mame/drivers/cyclemb.c b/src/mame/drivers/cyclemb.c
index 335e6d803aa..3c815a64e38 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_CONFIG_START( cyclemb, driver_data_t )
+static MACHINE_CONFIG_START( cyclemb, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,18000000/4)
MDRV_CPU_PROGRAM_MAP(cyclemb_map)
diff --git a/src/mame/drivers/d9final.c b/src/mame/drivers/d9final.c
index f1ba8b69f10..4664d4dc430 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_CONFIG_START( d9final, driver_data_t )
+static MACHINE_CONFIG_START( d9final, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 24000000/4)/* ? MHz */
MDRV_CPU_PROGRAM_MAP(d9final_map)
diff --git a/src/mame/drivers/dacholer.c b/src/mame/drivers/dacholer.c
index 64683696bed..771d9cbf55a 100644
--- a/src/mame/drivers/dacholer.c
+++ b/src/mame/drivers/dacholer.c
@@ -25,13 +25,11 @@
#include "sound/ay8910.h"
#include "video/resnet.h"
-class dacholer_state : public driver_data_t
+class dacholer_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dacholer_state(machine)); }
-
- dacholer_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dacholer_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bgvideoram;
diff --git a/src/mame/drivers/dambustr.c b/src/mame/drivers/dambustr.c
index 83a9836b724..b85590b3f35 100644
--- a/src/mame/drivers/dambustr.c
+++ b/src/mame/drivers/dambustr.c
@@ -231,7 +231,7 @@ static DRIVER_INIT(dambustr)
-static MACHINE_CONFIG_START( dambustr, driver_data_t )
+static MACHINE_CONFIG_START( dambustr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
MDRV_CPU_PROGRAM_MAP(dambustr_map)
diff --git a/src/mame/drivers/darkhors.c b/src/mame/drivers/darkhors.c
index ee6ccf881e3..5890ea5cd1b 100644
--- a/src/mame/drivers/darkhors.c
+++ b/src/mame/drivers/darkhors.c
@@ -621,7 +621,7 @@ static INTERRUPT_GEN( darkhors )
}
}
-static MACHINE_CONFIG_START( darkhors, driver_data_t )
+static MACHINE_CONFIG_START( darkhors, driver_device )
MDRV_CPU_ADD("maincpu", M68EC020, 12000000) // 36MHz/3 ??
MDRV_CPU_PROGRAM_MAP(darkhors_map)
MDRV_CPU_VBLANK_INT_HACK(darkhors,3)
@@ -671,7 +671,7 @@ static VIDEO_UPDATE(jclub2)
return 0;
}
-static MACHINE_CONFIG_START( jclub2, driver_data_t )
+static MACHINE_CONFIG_START( jclub2, driver_device )
MDRV_CPU_ADD("maincpu", M68EC020, 12000000)
MDRV_CPU_PROGRAM_MAP(jclub2_map)
MDRV_CPU_VBLANK_INT_HACK(darkhors,3)
@@ -727,7 +727,7 @@ static VIDEO_UPDATE(jclub2o)
return 0;
}
-static MACHINE_CONFIG_START( jclub2o, driver_data_t )
+static MACHINE_CONFIG_START( jclub2o, driver_device )
MDRV_CPU_ADD("st0016",Z80,8000000)
MDRV_CPU_PROGRAM_MAP(st0016_mem)
MDRV_CPU_IO_MAP(st0016_io)
diff --git a/src/mame/drivers/darkmist.c b/src/mame/drivers/darkmist.c
index 050cb6f18ef..2a8f353f4ff 100644
--- a/src/mame/drivers/darkmist.c
+++ b/src/mame/drivers/darkmist.c
@@ -246,7 +246,7 @@ static INTERRUPT_GEN( darkmist_interrupt )
-static MACHINE_CONFIG_START( darkmist, driver_data_t )
+static MACHINE_CONFIG_START( darkmist, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,4000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(memmap)
diff --git a/src/mame/drivers/darkseal.c b/src/mame/drivers/darkseal.c
index 83e8ac31b9f..331b5f70c44 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_CONFIG_START( darkseal, driver_data_t )
+static MACHINE_CONFIG_START( darkseal, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000) /* Custom chip 59 */
diff --git a/src/mame/drivers/dblewing.c b/src/mame/drivers/dblewing.c
index d6910937bfd..208ab288f8e 100644
--- a/src/mame/drivers/dblewing.c
+++ b/src/mame/drivers/dblewing.c
@@ -25,13 +25,11 @@ Protection TODO:
#include "sound/okim6295.h"
#include "video/deco16ic.h"
-class dblewing_state : public driver_data_t
+class dblewing_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dblewing_state(machine)); }
-
- dblewing_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dblewing_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * pf1_rowscroll;
diff --git a/src/mame/drivers/dcon.c b/src/mame/drivers/dcon.c
index 507405a3a06..a5312c9464d 100644
--- a/src/mame/drivers/dcon.c
+++ b/src/mame/drivers/dcon.c
@@ -256,7 +256,7 @@ GFXDECODE_END
/******************************************************************************/
-static MACHINE_CONFIG_START( dcon, driver_data_t )
+static MACHINE_CONFIG_START( dcon, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -285,7 +285,7 @@ static MACHINE_CONFIG_START( dcon, driver_data_t )
SEIBU_SOUND_SYSTEM_YM3812_INTERFACE(4000000,1320000)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( sdgndmps, driver_data_t )
+static MACHINE_CONFIG_START( sdgndmps, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
diff --git a/src/mame/drivers/ddayjlc.c b/src/mame/drivers/ddayjlc.c
index 9696f8dd1da..5de83ede644 100644
--- a/src/mame/drivers/ddayjlc.c
+++ b/src/mame/drivers/ddayjlc.c
@@ -56,13 +56,11 @@ $842f = lives
#include "sound/ay8910.h"
-class ddayjlc_state : public driver_data_t
+class ddayjlc_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ddayjlc_state(machine)); }
-
- ddayjlc_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ddayjlc_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bgram;
diff --git a/src/mame/drivers/ddealer.c b/src/mame/drivers/ddealer.c
index b67e3aef626..023e41509d1 100644
--- a/src/mame/drivers/ddealer.c
+++ b/src/mame/drivers/ddealer.c
@@ -113,13 +113,11 @@ Few words about protection:
#include "cpu/m68000/m68000.h"
#include "sound/2203intf.h"
-class ddealer_state : public driver_data_t
+class ddealer_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ddealer_state(machine)); }
-
- ddealer_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ddealer_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * mcu_shared_ram;
diff --git a/src/mame/drivers/ddz.c b/src/mame/drivers/ddz.c
index a85d063ecae..3cdd2269c7c 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_CONFIG_START( ddz, driver_data_t )
+static MACHINE_CONFIG_START( ddz, driver_device )
MDRV_CPU_ADD("maincpu", SE3208, 43000000)
MDRV_CPU_PROGRAM_MAP(ddz_mem)
MDRV_CPU_VBLANK_INT("screen", ddz_interrupt)
diff --git a/src/mame/drivers/deadang.c b/src/mame/drivers/deadang.c
index 08d97f8035c..639e6f31f38 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_CONFIG_START( deadang, driver_data_t )
+static MACHINE_CONFIG_START( deadang, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,XTAL_16MHz/2) /* Sony 8623h9 CXQ70116D-8 (V30 compatible) */
diff --git a/src/mame/drivers/dec0.c b/src/mame/drivers/dec0.c
index 23790e7c05c..4f273e45daa 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_CONFIG_START( automat, driver_data_t )
+static MACHINE_CONFIG_START( automat, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -1186,7 +1186,7 @@ static MACHINE_CONFIG_START( automat, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( hbarrel, driver_data_t )
+static MACHINE_CONFIG_START( hbarrel, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
@@ -1230,7 +1230,7 @@ static MACHINE_CONFIG_START( hbarrel, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( baddudes, driver_data_t )
+static MACHINE_CONFIG_START( baddudes, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
@@ -1271,7 +1271,7 @@ static MACHINE_CONFIG_START( baddudes, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( birdtry, driver_data_t )
+static MACHINE_CONFIG_START( birdtry, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
@@ -1312,7 +1312,7 @@ static MACHINE_CONFIG_START( birdtry, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( robocop, driver_data_t )
+static MACHINE_CONFIG_START( robocop, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
@@ -1358,7 +1358,7 @@ static MACHINE_CONFIG_START( robocop, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( robocopb, driver_data_t )
+static MACHINE_CONFIG_START( robocopb, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -1399,7 +1399,7 @@ static MACHINE_CONFIG_START( robocopb, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( hippodrm, driver_data_t )
+static MACHINE_CONFIG_START( hippodrm, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
@@ -1445,7 +1445,7 @@ static MACHINE_CONFIG_START( hippodrm, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( slyspy, driver_data_t )
+static MACHINE_CONFIG_START( slyspy, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz/2) /* verified on pcb (20MHZ OSC) 68000P12 running at 10Mhz */
@@ -1486,7 +1486,7 @@ static MACHINE_CONFIG_START( slyspy, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( secretab, driver_data_t )
+static MACHINE_CONFIG_START( secretab, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz/2) /* verified on pcb (20MHZ OSC) 68000P12 running at 10Mhz */
@@ -1528,7 +1528,7 @@ static MACHINE_CONFIG_START( secretab, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( midres, driver_data_t )
+static MACHINE_CONFIG_START( midres, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz/2) /* verified on pcb (20MHZ OSC) 68000P12 running at 10Mhz */
diff --git a/src/mame/drivers/deco156.c b/src/mame/drivers/deco156.c
index d25ffb72e01..928501c7eda 100644
--- a/src/mame/drivers/deco156.c
+++ b/src/mame/drivers/deco156.c
@@ -22,13 +22,11 @@
#include "sound/ymz280b.h"
#include "video/deco16ic.h"
-class deco156_state : public driver_data_t
+class deco156_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, deco156_state(machine)); }
-
- deco156_state(running_machine &machine)
- : driver_data_t(machine),
+ deco156_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
oki2(machine.device<okim6295_device>("oki2")) { }
/* memory pointers */
diff --git a/src/mame/drivers/deco32.c b/src/mame/drivers/deco32.c
index 452da37ec58..16110686cbe 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_CONFIG_START( captaven, driver_data_t )
+static MACHINE_CONFIG_START( captaven, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, XTAL_28MHz/4) /* verified on pcb (Data East 101 custom)*/
@@ -1702,7 +1702,7 @@ static MACHINE_CONFIG_START( captaven, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.35)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( fghthist, driver_data_t )
+static MACHINE_CONFIG_START( fghthist, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000/4)
@@ -1746,7 +1746,7 @@ static MACHINE_CONFIG_START( fghthist, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.35)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( fghthsta, driver_data_t )
+static MACHINE_CONFIG_START( fghthsta, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000/4)
@@ -1790,7 +1790,7 @@ static MACHINE_CONFIG_START( fghthsta, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.35)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( dragngun, driver_data_t )
+static MACHINE_CONFIG_START( dragngun, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000/4)
@@ -1842,7 +1842,7 @@ static MACHINE_CONFIG_START( dragngun, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( lockload, driver_data_t )
+static MACHINE_CONFIG_START( lockload, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000/4)
@@ -1894,7 +1894,7 @@ static MACHINE_CONFIG_START( lockload, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( tattass, driver_data_t )
+static MACHINE_CONFIG_START( tattass, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28000000/4) /* Unconfirmed */
@@ -1930,7 +1930,7 @@ static MACHINE_CONFIG_START( tattass, driver_data_t )
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( nslasher, driver_data_t )
+static MACHINE_CONFIG_START( nslasher, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM, 28322000/4)
diff --git a/src/mame/drivers/deco_ld.c b/src/mame/drivers/deco_ld.c
index 9f6cb18aa21..b954986c2f2 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_CONFIG_START( rblaster, driver_data_t )
+static MACHINE_CONFIG_START( rblaster, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M6502,8000000/2)
diff --git a/src/mame/drivers/deco_mlc.c b/src/mame/drivers/deco_mlc.c
index d2dd2183010..fb1402d6a71 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_CONFIG_START( avengrgs, driver_data_t )
+static MACHINE_CONFIG_START( avengrgs, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", SH2,42000000/2) /* 21 MHz clock confirmed on real board */
@@ -415,7 +415,7 @@ static MACHINE_CONFIG_START( avengrgs, driver_data_t )
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( mlc, driver_data_t )
+static MACHINE_CONFIG_START( mlc, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM,42000000/6) /* 42 MHz -> 7MHz clock confirmed on real board */
diff --git a/src/mame/drivers/deshoros.c b/src/mame/drivers/deshoros.c
index d8cf8c3a8f2..7eb7e1d65ec 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_CONFIG_START( deshoros, driver_data_t )
+static MACHINE_CONFIG_START( deshoros, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M6809,2000000)
diff --git a/src/mame/drivers/destroyr.c b/src/mame/drivers/destroyr.c
index b5c49faee0a..8c6e2609b87 100644
--- a/src/mame/drivers/destroyr.c
+++ b/src/mame/drivers/destroyr.c
@@ -9,13 +9,11 @@ Atari Destroyer Driver
#include "deprecat.h"
-class destroyr_state : public driver_data_t
+class destroyr_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, destroyr_state(machine)); }
-
- destroyr_state(running_machine &machine)
- : driver_data_t(machine) { }
+ destroyr_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * major_obj_ram;
diff --git a/src/mame/drivers/dgpix.c b/src/mame/drivers/dgpix.c
index 52f6eb7c9f5..197658e1d23 100644
--- a/src/mame/drivers/dgpix.c
+++ b/src/mame/drivers/dgpix.c
@@ -303,7 +303,7 @@ static MACHINE_RESET( dgpix )
}
-static MACHINE_CONFIG_START( dgpix, driver_data_t )
+static MACHINE_CONFIG_START( dgpix, driver_device )
MDRV_CPU_ADD("maincpu", E132XT, 20000000*4) /* 4x internal multiplier */
MDRV_CPU_PROGRAM_MAP(cpu_map)
MDRV_CPU_IO_MAP(io_map)
diff --git a/src/mame/drivers/discoboy.c b/src/mame/drivers/discoboy.c
index c059a0db16c..977f1c8813b 100644
--- a/src/mame/drivers/discoboy.c
+++ b/src/mame/drivers/discoboy.c
@@ -43,13 +43,11 @@ Notes:
-class discoboy_state : public driver_data_t
+class discoboy_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, discoboy_state(machine)); }
-
- discoboy_state(running_machine &machine)
- : driver_data_t(machine) { }
+ discoboy_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram_1;
diff --git a/src/mame/drivers/diverboy.c b/src/mame/drivers/diverboy.c
index 538003ba0e1..b7b2b187eea 100644
--- a/src/mame/drivers/diverboy.c
+++ b/src/mame/drivers/diverboy.c
@@ -53,13 +53,11 @@
-class diverboy_state : public driver_data_t
+class diverboy_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, diverboy_state(machine)); }
-
- diverboy_state(running_machine &machine)
- : driver_data_t(machine) { }
+ diverboy_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * spriteram;
diff --git a/src/mame/drivers/djmain.c b/src/mame/drivers/djmain.c
index 4c722a8704c..ec1d4fab3d0 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_CONFIG_START( djmain, driver_data_t )
+static MACHINE_CONFIG_START( djmain, driver_device )
/* basic machine hardware */
// popn3 works 9.6 MHz or slower in some songs */
diff --git a/src/mame/drivers/dlair.c b/src/mame/drivers/dlair.c
index 82fb675a320..6e2e0a9c1fe 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_CONFIG_START( dlair_base, driver_data_t )
+static MACHINE_CONFIG_START( dlair_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK_US/4)
@@ -706,7 +706,7 @@ static MACHINE_CONFIG_DERIVED( dlair_ldv1000, dlair_base )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( dleuro, driver_data_t )
+static MACHINE_CONFIG_START( dleuro, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK_EURO/4)
diff --git a/src/mame/drivers/dmndrby.c b/src/mame/drivers/dmndrby.c
index 67d7c8ecb20..e87d36cec2b 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_CONFIG_START( dderby, driver_data_t )
+static MACHINE_CONFIG_START( dderby, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,4000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(memmap)
diff --git a/src/mame/drivers/dominob.c b/src/mame/drivers/dominob.c
index 812d5a09d3b..1001b944480 100644
--- a/src/mame/drivers/dominob.c
+++ b/src/mame/drivers/dominob.c
@@ -64,13 +64,11 @@ Notes:
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
-class dominob_state : public driver_data_t
+class dominob_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dominob_state(machine)); }
-
- dominob_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dominob_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * spriteram;
diff --git a/src/mame/drivers/dooyong.c b/src/mame/drivers/dooyong.c
index ed061e23f47..4dd59c70e85 100644
--- a/src/mame/drivers/dooyong.c
+++ b/src/mame/drivers/dooyong.c
@@ -809,7 +809,7 @@ static MACHINE_CONFIG_FRAGMENT( sound_2151_m68k )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( lastday, driver_data_t )
+static MACHINE_CONFIG_START( lastday, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ??? */
@@ -842,7 +842,7 @@ static MACHINE_CONFIG_START( lastday, driver_data_t )
MDRV_FRAGMENT_ADD( sound_2203 )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( gulfstrm, driver_data_t )
+static MACHINE_CONFIG_START( gulfstrm, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ??? */
@@ -875,7 +875,7 @@ static MACHINE_CONFIG_START( gulfstrm, driver_data_t )
MDRV_FRAGMENT_ADD( sound_2203 )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( pollux, driver_data_t )
+static MACHINE_CONFIG_START( pollux, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ??? */
@@ -908,7 +908,7 @@ static MACHINE_CONFIG_START( pollux, driver_data_t )
MDRV_FRAGMENT_ADD( sound_2203 )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( bluehawk, driver_data_t )
+static MACHINE_CONFIG_START( bluehawk, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ??? */
@@ -941,7 +941,7 @@ static MACHINE_CONFIG_START( bluehawk, driver_data_t )
MDRV_FRAGMENT_ADD( sound_2151 )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( flytiger, driver_data_t )
+static MACHINE_CONFIG_START( flytiger, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ??? */
@@ -974,7 +974,7 @@ static MACHINE_CONFIG_START( flytiger, driver_data_t )
MDRV_FRAGMENT_ADD( sound_2151 )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( primella, driver_data_t )
+static MACHINE_CONFIG_START( primella, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* ??? */
@@ -1013,7 +1013,7 @@ static INTERRUPT_GEN( rshark_interrupt )
cpu_set_input_line(device, 6, HOLD_LINE);
}
-static MACHINE_CONFIG_START( rshark, driver_data_t )
+static MACHINE_CONFIG_START( rshark, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* measured on super-x */
@@ -1044,7 +1044,7 @@ static MACHINE_CONFIG_START( rshark, driver_data_t )
MDRV_FRAGMENT_ADD( sound_2151_m68k )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( superx, driver_data_t ) // dif mem map
+static MACHINE_CONFIG_START( superx, driver_device ) // dif mem map
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* measured on super-x */
@@ -1075,7 +1075,7 @@ static MACHINE_CONFIG_START( superx, driver_data_t ) // dif mem map
MDRV_FRAGMENT_ADD( sound_2151_m68k )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( popbingo, driver_data_t )
+static MACHINE_CONFIG_START( popbingo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
diff --git a/src/mame/drivers/dorachan.c b/src/mame/drivers/dorachan.c
index 0f1284752f5..cbeecb7668b 100644
--- a/src/mame/drivers/dorachan.c
+++ b/src/mame/drivers/dorachan.c
@@ -16,13 +16,11 @@ Todo:
#define NUM_PENS (8)
-class dorachan_state : public driver_data_t
+class dorachan_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dorachan_state(machine)); }
-
- dorachan_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dorachan_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/dotrikun.c b/src/mame/drivers/dotrikun.c
index 70ed3ad576a..0b5767e80c7 100644
--- a/src/mame/drivers/dotrikun.c
+++ b/src/mame/drivers/dotrikun.c
@@ -24,13 +24,11 @@ SOUND : (none)
#include "cpu/z80/z80.h"
-class dotrikun_state : public driver_data_t
+class dotrikun_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dotrikun_state(machine)); }
-
- dotrikun_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dotrikun_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/dreamwld.c b/src/mame/drivers/dreamwld.c
index 8f33539ca4f..28a048fb5c0 100644
--- a/src/mame/drivers/dreamwld.c
+++ b/src/mame/drivers/dreamwld.c
@@ -90,13 +90,11 @@ Stephh's notes (based on the game M68EC020 code and some tests) :
#define MASTER_CLOCK 32000000
-class dreamwld_state : public driver_data_t
+class dreamwld_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dreamwld_state(machine)); }
-
- dreamwld_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dreamwld_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT32 * bg_videoram;
diff --git a/src/mame/drivers/drtomy.c b/src/mame/drivers/drtomy.c
index 92110770c8f..27b8a764070 100644
--- a/src/mame/drivers/drtomy.c
+++ b/src/mame/drivers/drtomy.c
@@ -11,13 +11,11 @@ similar hardware.
#include "cpu/m68000/m68000.h"
#include "sound/okim6295.h"
-class drtomy_state : public driver_data_t
+class drtomy_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, drtomy_state(machine)); }
-
- drtomy_state(running_machine &machine)
- : driver_data_t(machine) { }
+ drtomy_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * spriteram;
diff --git a/src/mame/drivers/drw80pkr.c b/src/mame/drivers/drw80pkr.c
index 14a8aac6dfb..3a644ebf218 100644
--- a/src/mame/drivers/drw80pkr.c
+++ b/src/mame/drivers/drw80pkr.c
@@ -444,7 +444,7 @@ INPUT_PORTS_END
* Machine Driver *
*************************/
-static MACHINE_CONFIG_START( drw80pkr, driver_data_t )
+static MACHINE_CONFIG_START( drw80pkr, driver_device )
// basic machine hardware
MDRV_CPU_ADD("maincpu", I8039, CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(drw80pkr_map)
diff --git a/src/mame/drivers/dunhuang.c b/src/mame/drivers/dunhuang.c
index 677550e3367..747da638a0e 100644
--- a/src/mame/drivers/dunhuang.c
+++ b/src/mame/drivers/dunhuang.c
@@ -58,13 +58,11 @@ Notes:
#define DUNHUANG_DEBUG 0
-class dunhuang_state : public driver_data_t
+class dunhuang_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dunhuang_state(machine)); }
-
- dunhuang_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dunhuang_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/drivers/dwarfd.c b/src/mame/drivers/dwarfd.c
index c3906992654..237a1407d9a 100644
--- a/src/mame/drivers/dwarfd.c
+++ b/src/mame/drivers/dwarfd.c
@@ -278,13 +278,11 @@ uPC1352C @ N3
#include "cpu/i8085/i8085.h"
#include "sound/ay8910.h"
-class dwarfd_state : public driver_data_t
+class dwarfd_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dwarfd_state(machine)); }
-
- dwarfd_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dwarfd_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * dw_ram;
diff --git a/src/mame/drivers/dynadice.c b/src/mame/drivers/dynadice.c
index 75896eea24a..f58f84036f3 100644
--- a/src/mame/drivers/dynadice.c
+++ b/src/mame/drivers/dynadice.c
@@ -37,13 +37,11 @@ dy_6.bin (near Z80)
#include "sound/ay8910.h"
-class dynadice_state : public driver_data_t
+class dynadice_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dynadice_state(machine)); }
-
- dynadice_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dynadice_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/dynduke.c b/src/mame/drivers/dynduke.c
index 113b09af09e..031a4772213 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_CONFIG_START( dynduke, driver_data_t )
+static MACHINE_CONFIG_START( dynduke, driver_device )
// basic machine hardware
MDRV_CPU_ADD("maincpu", V30, 16000000/2) // NEC V30-8 CPU
MDRV_CPU_PROGRAM_MAP(master_map)
diff --git a/src/mame/drivers/egghunt.c b/src/mame/drivers/egghunt.c
index a3829775e03..4bc1a2f3c5a 100644
--- a/src/mame/drivers/egghunt.c
+++ b/src/mame/drivers/egghunt.c
@@ -45,13 +45,11 @@ I dumped it with this configuration. In case I'll redump it desoldering pin 16 f
#include "cpu/z80/z80.h"
#include "sound/okim6295.h"
-class egghunt_state : public driver_data_t
+class egghunt_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, egghunt_state(machine)); }
-
- egghunt_state(running_machine &machine)
- : driver_data_t(machine) { }
+ egghunt_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bgram;
diff --git a/src/mame/drivers/embargo.c b/src/mame/drivers/embargo.c
index 8ffea03c675..25d1c54e4c0 100644
--- a/src/mame/drivers/embargo.c
+++ b/src/mame/drivers/embargo.c
@@ -8,13 +8,11 @@
#include "cpu/s2650/s2650.h"
-class embargo_state : public driver_data_t
+class embargo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, embargo_state(machine)); }
-
- embargo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ embargo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/enigma2.c b/src/mame/drivers/enigma2.c
index e8ab74d78a5..71aac277b44 100644
--- a/src/mame/drivers/enigma2.c
+++ b/src/mame/drivers/enigma2.c
@@ -57,13 +57,11 @@ TODO:
#define NUM_PENS (8)
-class enigma2_state : public driver_data_t
+class enigma2_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, enigma2_state(machine)); }
-
- enigma2_state(running_machine &machine)
- : driver_data_t(machine) { }
+ enigma2_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/eolith.c b/src/mame/drivers/eolith.c
index b0be411de11..79df461b373 100644
--- a/src/mame/drivers/eolith.c
+++ b/src/mame/drivers/eolith.c
@@ -337,7 +337,7 @@ INPUT_PORTS_END
-static MACHINE_CONFIG_START( eolith45, driver_data_t )
+static MACHINE_CONFIG_START( eolith45, driver_device )
MDRV_CPU_ADD("maincpu", E132N, 45000000) /* 45 MHz */
MDRV_CPU_PROGRAM_MAP(eolith_map)
MDRV_CPU_VBLANK_INT_HACK(eolith_speedup,262)
diff --git a/src/mame/drivers/eolith16.c b/src/mame/drivers/eolith16.c
index 2740e6544e7..b7a9681ed83 100644
--- a/src/mame/drivers/eolith16.c
+++ b/src/mame/drivers/eolith16.c
@@ -157,7 +157,7 @@ static PALETTE_INIT( eolith16 )
-static MACHINE_CONFIG_START( eolith16, driver_data_t )
+static MACHINE_CONFIG_START( eolith16, driver_device )
MDRV_CPU_ADD("maincpu", E116T, 60000000) /* no internal multiplier */
MDRV_CPU_PROGRAM_MAP(eolith16_map)
MDRV_CPU_VBLANK_INT_HACK(eolith_speedup,262)
diff --git a/src/mame/drivers/ertictac.c b/src/mame/drivers/ertictac.c
index 8e2eacf2d37..6b3974d9936 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_CONFIG_START( ertictac, driver_data_t )
+static MACHINE_CONFIG_START( ertictac, driver_device )
MDRV_CPU_ADD("maincpu", ARM, 8000000) /* guess */
MDRV_CPU_PROGRAM_MAP(ertictac_map)
diff --git a/src/mame/drivers/esh.c b/src/mame/drivers/esh.c
index 1c2b780dd32..d5c172020e7 100644
--- a/src/mame/drivers/esh.c
+++ b/src/mame/drivers/esh.c
@@ -277,7 +277,7 @@ static MACHINE_START( esh )
/* DRIVER */
-static MACHINE_CONFIG_START( esh, driver_data_t )
+static MACHINE_CONFIG_START( esh, driver_device )
/* main cpu */
MDRV_CPU_ADD("maincpu", Z80, PCB_CLOCK/6) /* The denominator is a Daphne guess based on PacMan's hardware */
diff --git a/src/mame/drivers/esripsys.c b/src/mame/drivers/esripsys.c
index 8f07c60293b..fc2fa10d63a 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_CONFIG_START( esripsys, driver_data_t )
+static MACHINE_CONFIG_START( esripsys, driver_device )
MDRV_CPU_ADD("game_cpu", M6809E, XTAL_8MHz)
MDRV_CPU_PROGRAM_MAP(game_cpu_map)
MDRV_CPU_VBLANK_INT("screen", esripsys_vblank_irq)
diff --git a/src/mame/drivers/ettrivia.c b/src/mame/drivers/ettrivia.c
index d9b80b9f41e..8325eab7d24 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_CONFIG_START( ettrivia, driver_data_t )
+static MACHINE_CONFIG_START( ettrivia, driver_device )
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)
diff --git a/src/mame/drivers/exidy.c b/src/mame/drivers/exidy.c
index 8a0928e0c3b..c434c58e7f2 100644
--- a/src/mame/drivers/exidy.c
+++ b/src/mame/drivers/exidy.c
@@ -789,7 +789,7 @@ static MACHINE_START( teetert )
*
*************************************/
-static MACHINE_CONFIG_START( base, driver_data_t )
+static MACHINE_CONFIG_START( base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, EXIDY_CPU_CLOCK)
diff --git a/src/mame/drivers/exidy440.c b/src/mame/drivers/exidy440.c
index 7e7e1883891..d4066e392cc 100644
--- a/src/mame/drivers/exidy440.c
+++ b/src/mame/drivers/exidy440.c
@@ -997,7 +997,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( exidy440, driver_data_t )
+static MACHINE_CONFIG_START( exidy440, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CPU_CLOCK)
diff --git a/src/mame/drivers/expro02.c b/src/mame/drivers/expro02.c
index 6a2d255fbba..83d5278efd9 100644
--- a/src/mame/drivers/expro02.c
+++ b/src/mame/drivers/expro02.c
@@ -475,7 +475,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_CONFIG_START( galsnew, driver_data_t )
+static MACHINE_CONFIG_START( galsnew, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
diff --git a/src/mame/drivers/exterm.c b/src/mame/drivers/exterm.c
index e088151416e..2bde9098a6d 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_CONFIG_START( exterm, driver_data_t )
+static MACHINE_CONFIG_START( exterm, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, 40000000)
diff --git a/src/mame/drivers/exzisus.c b/src/mame/drivers/exzisus.c
index 0ef08f6365f..551631f590e 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_CONFIG_START( exzisus, driver_data_t )
+static MACHINE_CONFIG_START( exzisus, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("cpua", Z80, 6000000)
diff --git a/src/mame/drivers/f-32.c b/src/mame/drivers/f-32.c
index 0411579a489..79a06f60523 100644
--- a/src/mame/drivers/f-32.c
+++ b/src/mame/drivers/f-32.c
@@ -17,13 +17,11 @@
#include "sound/2151intf.h"
#include "sound/okim6295.h"
-class mosaicf2_state : public driver_data_t
+class mosaicf2_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mosaicf2_state(machine)); }
-
- mosaicf2_state(running_machine &machine)
- : driver_data_t(machine),
+ mosaicf2_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
maincpu(machine.device<cpu_device>("maincpu")) { }
/* memory pointers */
diff --git a/src/mame/drivers/fastfred.c b/src/mame/drivers/fastfred.c
index 2d0c78bff9d..cdd8023eb00 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_CONFIG_START( fastfred, driver_data_t )
+static MACHINE_CONFIG_START( fastfred, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CLOCK/6) /* 3.072 MHz */
diff --git a/src/mame/drivers/feversoc.c b/src/mame/drivers/feversoc.c
index 88b20f8c9e1..819ba863260 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_CONFIG_START( feversoc, driver_data_t )
+static MACHINE_CONFIG_START( feversoc, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",SH2,MASTER_CLOCK)
diff --git a/src/mame/drivers/firebeat.c b/src/mame/drivers/firebeat.c
index 0cbc1750b9c..ccaf159c0f8 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_CONFIG_START( firebeat, driver_data_t )
+static MACHINE_CONFIG_START( firebeat, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GCX, 66000000)
@@ -1953,7 +1953,7 @@ static MACHINE_CONFIG_START( firebeat, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( firebeat2, driver_data_t )
+static MACHINE_CONFIG_START( firebeat2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GCX, 66000000)
diff --git a/src/mame/drivers/firefox.c b/src/mame/drivers/firefox.c
index 52d29e770d0..7e70d166f12 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_CONFIG_START( firefox, driver_data_t )
+static MACHINE_CONFIG_START( firefox, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809E, MASTER_XTAL/2)
diff --git a/src/mame/drivers/firetrk.c b/src/mame/drivers/firetrk.c
index af8a4691a4d..f0d9a75bcea 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_CONFIG_START( firetrk, driver_data_t )
+static MACHINE_CONFIG_START( firetrk, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, MASTER_CLOCK/12) /* 750Khz during service mode */
diff --git a/src/mame/drivers/flower.c b/src/mame/drivers/flower.c
index d4540936d23..1c334dd5cba 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_CONFIG_START( flower, driver_data_t )
+static MACHINE_CONFIG_START( flower, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000)
diff --git a/src/mame/drivers/flyball.c b/src/mame/drivers/flyball.c
index 27e2739fc42..83d4e2f5f04 100644
--- a/src/mame/drivers/flyball.c
+++ b/src/mame/drivers/flyball.c
@@ -11,13 +11,11 @@ Atari Flyball Driver
-class flyball_state : public driver_data_t
+class flyball_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, flyball_state(machine)); }
-
- flyball_state(running_machine &machine)
- : driver_data_t(machine) { }
+ flyball_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * rombase;
diff --git a/src/mame/drivers/forte2.c b/src/mame/drivers/forte2.c
index a8289b15334..e6e72901d18 100644
--- a/src/mame/drivers/forte2.c
+++ b/src/mame/drivers/forte2.c
@@ -115,7 +115,7 @@ static INTERRUPT_GEN( pesadelo_interrupt )
}
-static MACHINE_CONFIG_START( pesadelo, driver_data_t )
+static MACHINE_CONFIG_START( pesadelo, driver_device )
MDRV_CPU_ADD("maincpu", Z80, 3579545) /* 3.579545 Mhz */
MDRV_CPU_PROGRAM_MAP(program_mem)
diff --git a/src/mame/drivers/fortecar.c b/src/mame/drivers/fortecar.c
index 01f64912bd0..f5a231c3600 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_CONFIG_START( fortecar, driver_data_t )
+static MACHINE_CONFIG_START( fortecar, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,6000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(fortecar_map)
diff --git a/src/mame/drivers/funworld.c b/src/mame/drivers/funworld.c
index f43bf17e2e6..2a561aca66e 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_CONFIG_START( fw1stpal, driver_data_t )
+static MACHINE_CONFIG_START( fw1stpal, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M65SC02, MASTER_CLOCK/8) /* 2MHz */
MDRV_CPU_PROGRAM_MAP(funworld_map)
diff --git a/src/mame/drivers/gaelco2.c b/src/mame/drivers/gaelco2.c
index 4d3f23a4e05..69a64d95a5d 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_CONFIG_START( maniacsq, driver_data_t )
+static MACHINE_CONFIG_START( maniacsq, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 26000000/2) /* 13 MHz? */
MDRV_CPU_PROGRAM_MAP(maniacsq_map)
@@ -287,7 +287,7 @@ static const eeprom_interface gaelco2_eeprom_interface =
// "*10010xxxxxx", /* erase all */
};
-static MACHINE_CONFIG_START( bang, driver_data_t )
+static MACHINE_CONFIG_START( bang, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 30000000/2) /* 15 MHz */
MDRV_CPU_PROGRAM_MAP(bang_map)
@@ -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_CONFIG_START( alighunt, driver_data_t )
+static MACHINE_CONFIG_START( alighunt, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 24000000/2) /* 12 MHz */
MDRV_CPU_PROGRAM_MAP(alighunt_map)
@@ -774,7 +774,7 @@ static const gaelcosnd_interface touchgo_snd_interface =
{ 0*0x0400000, 1*0x0400000, 0, 0 } /* start of each ROM bank */
};
-static MACHINE_CONFIG_START( touchgo, driver_data_t )
+static MACHINE_CONFIG_START( touchgo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 32000000/2) /* 16 MHz */
MDRV_CPU_PROGRAM_MAP(touchgo_map)
@@ -967,7 +967,7 @@ static const gaelcosnd_interface snowboar_snd_interface =
{ 0*0x0400000, 1*0x0400000, 0, 0 } /* start of each ROM bank */
};
-static MACHINE_CONFIG_START( snowboar, driver_data_t )
+static MACHINE_CONFIG_START( snowboar, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 30000000/2) /* 15 MHz */
MDRV_CPU_PROGRAM_MAP(snowboar_map)
@@ -1209,7 +1209,7 @@ static const gaelcosnd_interface wrally2_snd_interface =
{ 0*0x0200000, 1*0x0200000, 0, 0 } /* start of each ROM bank */
};
-static MACHINE_CONFIG_START( wrally2, driver_data_t )
+static MACHINE_CONFIG_START( wrally2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 26000000/2) /* 13 MHz */
MDRV_CPU_PROGRAM_MAP(wrally2_map)
diff --git a/src/mame/drivers/gaelco3d.c b/src/mame/drivers/gaelco3d.c
index eefe9dae984..f3855cde6cd 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_CONFIG_START( gaelco3d, driver_data_t )
+static MACHINE_CONFIG_START( gaelco3d, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 15000000)
diff --git a/src/mame/drivers/gal3.c b/src/mame/drivers/gal3.c
index 04147a6d7a6..25dee8cad80 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_CONFIG_START( gal3, driver_data_t )
+static MACHINE_CONFIG_START( gal3, driver_device )
MDRV_CPU_ADD("cpumst", M68020, 49152000/2)
MDRV_CPU_PROGRAM_MAP(cpu_mst_map)
MDRV_CPU_VBLANK_INT("lscreen", irq1_line_hold)
diff --git a/src/mame/drivers/galastrm.c b/src/mame/drivers/galastrm.c
index 80a514289d2..1ace790cd2e 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_CONFIG_START( galastrm, driver_data_t )
+static MACHINE_CONFIG_START( galastrm, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz */
MDRV_CPU_PROGRAM_MAP(galastrm_map)
diff --git a/src/mame/drivers/galaxi.c b/src/mame/drivers/galaxi.c
index c97004a795e..33e994e61dd 100644
--- a/src/mame/drivers/galaxi.c
+++ b/src/mame/drivers/galaxi.c
@@ -44,13 +44,11 @@ Notes:
#include "sound/okim6295.h"
#include "galaxi.lh"
-class galaxi_state : public driver_data_t
+class galaxi_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, galaxi_state(machine)); }
-
- galaxi_state(running_machine &machine)
- : driver_data_t(machine) { }
+ galaxi_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bg1_ram;
diff --git a/src/mame/drivers/galaxia.c b/src/mame/drivers/galaxia.c
index 5f18ef8445d..b7946693b60 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_CONFIG_START( galaxia, driver_data_t )
+static MACHINE_CONFIG_START( galaxia, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650,2000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(mem_map)
diff --git a/src/mame/drivers/galaxian.c b/src/mame/drivers/galaxian.c
index 6a99bab9f50..8009256673d 100644
--- a/src/mame/drivers/galaxian.c
+++ b/src/mame/drivers/galaxian.c
@@ -1956,7 +1956,7 @@ DISCRETE_SOUND_END
*
*************************************/
-static MACHINE_CONFIG_START( galaxian_base, driver_data_t )
+static MACHINE_CONFIG_START( galaxian_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, GALAXIAN_PIXEL_CLOCK/3/2)
diff --git a/src/mame/drivers/galaxold.c b/src/mame/drivers/galaxold.c
index 3e4ec32e2be..7c86557a4de 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_CONFIG_START( galaxold_base, driver_data_t )
+static MACHINE_CONFIG_START( galaxold_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, PIXEL_CLOCK/2) /* 3.072 MHz */
@@ -2277,7 +2277,7 @@ static MACHINE_CONFIG_DERIVED( ozon1, galaxold_base )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( drivfrcg, driver_data_t )
+static MACHINE_CONFIG_START( drivfrcg, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, MASTER_CLOCK/6)
@@ -2370,7 +2370,7 @@ static MACHINE_CONFIG_DERIVED( tazzmang, galaxian )
MDRV_CPU_PROGRAM_MAP(tazzmang)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( racknrol, driver_data_t )
+static MACHINE_CONFIG_START( racknrol, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, PIXEL_CLOCK/2)
@@ -2426,7 +2426,7 @@ static MACHINE_CONFIG_DERIVED( ckongmc, galaxian )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( hexpoola, driver_data_t )
+static MACHINE_CONFIG_START( hexpoola, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, PIXEL_CLOCK/2)
diff --git a/src/mame/drivers/galpani2.c b/src/mame/drivers/galpani2.c
index 827cca529e0..5453570764d 100644
--- a/src/mame/drivers/galpani2.c
+++ b/src/mame/drivers/galpani2.c
@@ -574,7 +574,7 @@ static INTERRUPT_GEN( galpani2_interrupt2 )
}
}
-static MACHINE_CONFIG_START( galpani2, driver_data_t )
+static MACHINE_CONFIG_START( galpani2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz)
diff --git a/src/mame/drivers/galpani3.c b/src/mame/drivers/galpani3.c
index 056a2c8379b..192b179df2b 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_CONFIG_START( galpani3, driver_data_t )
+static MACHINE_CONFIG_START( galpani3, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 16000000) // ? (from which clock?)
MDRV_CPU_PROGRAM_MAP(galpani3_map)
MDRV_CPU_VBLANK_INT_HACK(galpani3_vblank, 3)
diff --git a/src/mame/drivers/galpanic.c b/src/mame/drivers/galpanic.c
index 3b3fa875582..04a73c2de60 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_CONFIG_START( galpanic, driver_data_t )
+static MACHINE_CONFIG_START( galpanic, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz) /* verified on pcb */
diff --git a/src/mame/drivers/gamecstl.c b/src/mame/drivers/gamecstl.c
index fb3e79f0718..fab7c710ec4 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_CONFIG_START( gamecstl, driver_data_t )
+static MACHINE_CONFIG_START( gamecstl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PENTIUM, 200000000)
diff --git a/src/mame/drivers/gaplus.c b/src/mame/drivers/gaplus.c
index 702a5f34fe9..3274775ea2f 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_CONFIG_START( gaplus, driver_data_t )
+static MACHINE_CONFIG_START( gaplus, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 24576000/16) /* 1.536 MHz */
diff --git a/src/mame/drivers/gatron.c b/src/mame/drivers/gatron.c
index ce6337a9176..c1bf042040a 100644
--- a/src/mame/drivers/gatron.c
+++ b/src/mame/drivers/gatron.c
@@ -437,7 +437,7 @@ GFXDECODE_END
* Machine Drivers *
*************************/
-static MACHINE_CONFIG_START( gat, driver_data_t )
+static MACHINE_CONFIG_START( gat, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/24) /* 666.66 kHz, guess */
diff --git a/src/mame/drivers/gei.c b/src/mame/drivers/gei.c
index a6dce169bde..b8b24d4ac6d 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_CONFIG_START( getrivia, driver_data_t )
+static MACHINE_CONFIG_START( getrivia, driver_device )
MDRV_CPU_ADD("maincpu",Z80,4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(getrivia_map)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
diff --git a/src/mame/drivers/ggconnie.c b/src/mame/drivers/ggconnie.c
index 28f53214f85..9782694d2ca 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_CONFIG_START( ggconnie, driver_data_t )
+static MACHINE_CONFIG_START( ggconnie, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H6280, PCE_MAIN_CLOCK/3)
MDRV_CPU_PROGRAM_MAP(sgx_mem)
diff --git a/src/mame/drivers/ghosteo.c b/src/mame/drivers/ghosteo.c
index 7e0d87d5431..ff9beeaed8c 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_CONFIG_START( bballoon, driver_data_t )
+static MACHINE_CONFIG_START( bballoon, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM7, 24000000)
diff --git a/src/mame/drivers/gladiatr.c b/src/mame/drivers/gladiatr.c
index 97fdcbd7286..dd08915e2b5 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_CONFIG_START( ppking, driver_data_t )
+static MACHINE_CONFIG_START( ppking, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on pcb */
@@ -724,7 +724,7 @@ static MACHINE_CONFIG_START( ppking, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( gladiatr, driver_data_t )
+static MACHINE_CONFIG_START( gladiatr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on pcb */
diff --git a/src/mame/drivers/go2000.c b/src/mame/drivers/go2000.c
index 14dcc92ceaf..798fde396d0 100644
--- a/src/mame/drivers/go2000.c
+++ b/src/mame/drivers/go2000.c
@@ -34,13 +34,11 @@ Notes:
#include "cpu/z80/z80.h"
#include "sound/dac.h"
-class go2000_state : public driver_data_t
+class go2000_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, go2000_state(machine)); }
-
- go2000_state(running_machine &machine)
- : driver_data_t(machine) { }
+ go2000_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/drivers/goldnpkr.c b/src/mame/drivers/goldnpkr.c
index 409ff7fd981..2a5cfd7b797 100644
--- a/src/mame/drivers/goldnpkr.c
+++ b/src/mame/drivers/goldnpkr.c
@@ -2287,7 +2287,7 @@ DISCRETE_SOUND_END
* Machine Drivers *
*********************************************/
-static MACHINE_CONFIG_START( goldnpkr_base, driver_data_t )
+static MACHINE_CONFIG_START( goldnpkr_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, CPU_CLOCK)
diff --git a/src/mame/drivers/gomoku.c b/src/mame/drivers/gomoku.c
index 5c9afd136c8..8a7844315b6 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_CONFIG_START( gomoku, driver_data_t )
+static MACHINE_CONFIG_START( gomoku, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/12) /* 1.536 MHz ? */
MDRV_CPU_PROGRAM_MAP(gomoku_map)
diff --git a/src/mame/drivers/good.c b/src/mame/drivers/good.c
index 9d81d6a88d7..eb7df53a0a3 100644
--- a/src/mame/drivers/good.c
+++ b/src/mame/drivers/good.c
@@ -35,13 +35,11 @@ voice.rom - VOICE ROM
#include "sound/okim6295.h"
-class good_state : public driver_data_t
+class good_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, good_state(machine)); }
-
- good_state(running_machine &machine)
- : driver_data_t(machine) { }
+ good_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bg_tilemapram;
diff --git a/src/mame/drivers/goodejan.c b/src/mame/drivers/goodejan.c
index ea69743cbf5..40fd7a4285c 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_CONFIG_START( goodejan, driver_data_t )
+static MACHINE_CONFIG_START( goodejan, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, GOODEJAN_MHZ2/2)
diff --git a/src/mame/drivers/gottlieb.c b/src/mame/drivers/gottlieb.c
index 886957810d9..32ec4b35fdb 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_CONFIG_START( gottlieb_core, driver_data_t )
+static MACHINE_CONFIG_START( gottlieb_core, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8088, CPU_CLOCK/3)
diff --git a/src/mame/drivers/gpworld.c b/src/mame/drivers/gpworld.c
index ebb6d188fce..20860d142a4 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_CONFIG_START( gpworld, driver_data_t )
+static MACHINE_CONFIG_START( gpworld, driver_device )
/* main cpu */
MDRV_CPU_ADD("maincpu", Z80, GUESSED_CLOCK)
diff --git a/src/mame/drivers/gridlee.c b/src/mame/drivers/gridlee.c
index 4c1955c65ad..89be324606d 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_CONFIG_START( gridlee, driver_data_t )
+static MACHINE_CONFIG_START( gridlee, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, BALSENTE_CPU_CLOCK)
diff --git a/src/mame/drivers/groundfx.c b/src/mame/drivers/groundfx.c
index 2c520924539..1980717f372 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_CONFIG_START( groundfx, driver_data_t )
+static MACHINE_CONFIG_START( groundfx, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz */
diff --git a/src/mame/drivers/gstream.c b/src/mame/drivers/gstream.c
index 738a8fd7952..1f6bd688149 100644
--- a/src/mame/drivers/gstream.c
+++ b/src/mame/drivers/gstream.c
@@ -124,13 +124,11 @@ RAM4 is HMC HM6264LP-70
#include "cpu/e132xs/e132xs.h"
#include "sound/okim6295.h"
-class gstream_state : public driver_data_t
+class gstream_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gstream_state(machine)); }
-
- gstream_state(running_machine &machine)
- : driver_data_t(machine),
+ gstream_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
maincpu(machine.device<cpu_device>("maincpu")),
oki_1(machine.device<okim6295_device>("oki1")),
oki_2(machine.device<okim6295_device>("oki2")) { }
diff --git a/src/mame/drivers/gstriker.c b/src/mame/drivers/gstriker.c
index 456f30548cf..4ae81b64090 100644
--- a/src/mame/drivers/gstriker.c
+++ b/src/mame/drivers/gstriker.c
@@ -546,7 +546,7 @@ INPUT_PORTS_END
/*** MACHINE DRIVER **********************************************************/
-static MACHINE_CONFIG_START( gstriker, driver_data_t )
+static MACHINE_CONFIG_START( gstriker, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 10000000)
MDRV_CPU_PROGRAM_MAP(gstriker_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -585,7 +585,7 @@ static MACHINE_CONFIG_DERIVED( twrldc94, gstriker )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( vgoal, driver_data_t )
+static MACHINE_CONFIG_START( vgoal, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 16000000)
MDRV_CPU_PROGRAM_MAP(vgoal_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
diff --git a/src/mame/drivers/gsword.c b/src/mame/drivers/gsword.c
index 8fb9eb7c305..d75e70f3325 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_CONFIG_START( gsword, driver_data_t )
+static MACHINE_CONFIG_START( gsword, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18MHz/6) /* verified on pcb */
@@ -747,7 +747,7 @@ static MACHINE_CONFIG_START( gsword, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( josvolly, driver_data_t )
+static MACHINE_CONFIG_START( josvolly, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18000000/6) /* ? */
diff --git a/src/mame/drivers/gticlub.c b/src/mame/drivers/gticlub.c
index 1dd99511e41..77e772b0f0c 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_CONFIG_START( gticlub, driver_data_t )
+static MACHINE_CONFIG_START( gticlub, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000/2) /* PowerPC 403GA 32MHz */
@@ -898,7 +898,7 @@ static MACHINE_RESET( hangplt )
cputag_set_input_line(machine, "dsp2", INPUT_LINE_RESET, ASSERT_LINE);
}
-static MACHINE_CONFIG_START( hangplt, driver_data_t )
+static MACHINE_CONFIG_START( hangplt, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000/2) /* PowerPC 403GA 32MHz */
diff --git a/src/mame/drivers/guab.c b/src/mame/drivers/guab.c
index d6e574cdb4b..028f4588fe2 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_CONFIG_START( guab, driver_data_t )
+static MACHINE_CONFIG_START( guab, driver_device )
/* TODO: Verify clock */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(guab_map)
diff --git a/src/mame/drivers/gunbustr.c b/src/mame/drivers/gunbustr.c
index 953840a3b44..76af00e33d0 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_CONFIG_START( gunbustr, driver_data_t )
+static MACHINE_CONFIG_START( gunbustr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz */
diff --git a/src/mame/drivers/gunpey.c b/src/mame/drivers/gunpey.c
index 5abdb6927ab..871fb532241 100644
--- a/src/mame/drivers/gunpey.c
+++ b/src/mame/drivers/gunpey.c
@@ -313,7 +313,7 @@ static INTERRUPT_GEN( gunpey_interrupt )
}
/***************************************************************************************/
-static MACHINE_CONFIG_START( gunpey, driver_data_t )
+static MACHINE_CONFIG_START( gunpey, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, 57242400 / 4)
diff --git a/src/mame/drivers/halleys.c b/src/mame/drivers/halleys.c
index 85ec701c53c..5ec017e809d 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_CONFIG_START( halleys, driver_data_t )
+static MACHINE_CONFIG_START( halleys, driver_device )
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)
diff --git a/src/mame/drivers/hexion.c b/src/mame/drivers/hexion.c
index 98ffd8366fd..4472166d635 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_CONFIG_START( hexion, driver_data_t )
+static MACHINE_CONFIG_START( hexion, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,24000000/4) /* Z80B 6 MHz */
diff --git a/src/mame/drivers/highvdeo.c b/src/mame/drivers/highvdeo.c
index 34bb7b24c14..c00c87a9292 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_CONFIG_START( tv_vcf, driver_data_t )
+static MACHINE_CONFIG_START( tv_vcf, driver_device )
MDRV_CPU_ADD("maincpu", V30, XTAL_12MHz/2 ) // ?
MDRV_CPU_PROGRAM_MAP(tv_vcf_map)
MDRV_CPU_IO_MAP(tv_vcf_io)
@@ -932,7 +932,7 @@ static MACHINE_CONFIG_DERIVED( ciclone, tv_tcf )
MDRV_CPU_VBLANK_INT("screen", vblank_irq)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( brasil, driver_data_t )
+static MACHINE_CONFIG_START( brasil, driver_device )
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)
diff --git a/src/mame/drivers/hikaru.c b/src/mame/drivers/hikaru.c
index 01e7b77a473..a60e89f6601 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_CONFIG_START( hikaru, driver_data_t )
+static MACHINE_CONFIG_START( hikaru, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", SH4, CPU_CLOCK)
// MDRV_CPU_CONFIG(sh4cpu_config)
diff --git a/src/mame/drivers/hitpoker.c b/src/mame/drivers/hitpoker.c
index fbdf814e9c8..5a681aaf405 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_CONFIG_START( hitpoker, driver_data_t )
+static MACHINE_CONFIG_START( hitpoker, driver_device )
MDRV_CPU_ADD("maincpu", MC68HC11,1000000)
MDRV_CPU_PROGRAM_MAP(hitpoker_map)
MDRV_CPU_IO_MAP(hitpoker_io)
diff --git a/src/mame/drivers/hornet.c b/src/mame/drivers/hornet.c
index 27e9894b20f..7815b4447eb 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_CONFIG_START( hornet, driver_data_t )
+static MACHINE_CONFIG_START( hornet, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000/2) /* PowerPC 403GA 32MHz */
diff --git a/src/mame/drivers/hotblock.c b/src/mame/drivers/hotblock.c
index f49dd56a7ad..c0f3ef2ebbb 100644
--- a/src/mame/drivers/hotblock.c
+++ b/src/mame/drivers/hotblock.c
@@ -45,13 +45,11 @@ so it could be by them instead
#include "cpu/i86/i86.h"
#include "sound/ay8910.h"
-class hotblock_state : public driver_data_t
+class hotblock_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, hotblock_state(machine)); }
-
- hotblock_state(running_machine &machine)
- : driver_data_t(machine) { }
+ hotblock_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * vram;
diff --git a/src/mame/drivers/hotstuff.c b/src/mame/drivers/hotstuff.c
index 20421a0061a..373ae706c3d 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_CONFIG_START( hotstuff, driver_data_t )
+static MACHINE_CONFIG_START( hotstuff, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 16000000)
MDRV_CPU_PROGRAM_MAP(hotstuff_map)
diff --git a/src/mame/drivers/hvyunit.c b/src/mame/drivers/hvyunit.c
index 0dc27b61169..2203e2dfe23 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_CONFIG_START( hvyunit, driver_data_t )
+static MACHINE_CONFIG_START( hvyunit, driver_device )
MDRV_CPU_ADD("master", Z80,6000000)
MDRV_CPU_PROGRAM_MAP(master_memory)
diff --git a/src/mame/drivers/hyhoo.c b/src/mame/drivers/hyhoo.c
index 136ef902923..0a29fb4e24d 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_CONFIG_START( hyhoo, driver_data_t )
+static MACHINE_CONFIG_START( hyhoo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5.00 MHz ?? */
diff --git a/src/mame/drivers/igs009.c b/src/mame/drivers/igs009.c
index b3f29d034db..73ffcc7de29 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_CONFIG_START( jingbell, driver_data_t )
+static MACHINE_CONFIG_START( jingbell, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 2) /* HD64180RP8, 8 MHz? */
MDRV_CPU_PROGRAM_MAP(jingbell_map)
diff --git a/src/mame/drivers/igs011.c b/src/mame/drivers/igs011.c
index fa6fd625246..537d6a71f9e 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_CONFIG_START( igs011_base, driver_data_t )
+static MACHINE_CONFIG_START( igs011_base, driver_device )
MDRV_CPU_ADD("maincpu",M68000, XTAL_22MHz/3)
MDRV_NVRAM_HANDLER(generic_0fill)
diff --git a/src/mame/drivers/igs017.c b/src/mame/drivers/igs017.c
index 60476089b48..388e4985641 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_CONFIG_START( iqblocka, driver_data_t )
+static MACHINE_CONFIG_START( iqblocka, driver_device )
MDRV_CPU_ADD("maincpu", Z180, XTAL_16MHz / 2)
MDRV_CPU_PROGRAM_MAP(iqblocka_map)
MDRV_CPU_IO_MAP(iqblocka_io)
@@ -2099,7 +2099,7 @@ static const ppi8255_interface mgcs_ppi8255_intf =
DEVCB_NULL // Port C write
};
-static MACHINE_CONFIG_START( mgcs, driver_data_t )
+static MACHINE_CONFIG_START( mgcs, driver_device )
MDRV_CPU_ADD("maincpu", M68000, XTAL_22MHz / 2)
MDRV_CPU_PROGRAM_MAP(mgcs)
MDRV_CPU_VBLANK_INT_HACK(mgcs_interrupt,2)
@@ -2144,7 +2144,7 @@ static const ppi8255_interface sdmg2_ppi8255_intf =
DEVCB_NULL // Port C write
};
-static MACHINE_CONFIG_START( sdmg2, driver_data_t )
+static MACHINE_CONFIG_START( sdmg2, driver_device )
MDRV_CPU_ADD("maincpu", M68000, XTAL_22MHz/2)
MDRV_CPU_PROGRAM_MAP(sdmg2)
MDRV_CPU_VBLANK_INT_HACK(mgcs_interrupt,2)
@@ -2202,7 +2202,7 @@ static const ppi8255_interface mgdh_ppi8255_intf =
DEVCB_NULL // Port C write
};
-static MACHINE_CONFIG_START( mgdh, driver_data_t )
+static MACHINE_CONFIG_START( mgdh, driver_device )
MDRV_CPU_ADD("maincpu", M68000, XTAL_22MHz / 2)
MDRV_CPU_PROGRAM_MAP(mgdh_map)
MDRV_CPU_VBLANK_INT_HACK(mgdh_interrupt,2)
diff --git a/src/mame/drivers/igs_m027.c b/src/mame/drivers/igs_m027.c
index 3df8a081bed..73d82582829 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_CONFIG_START( igs_majhong, driver_data_t )
+static MACHINE_CONFIG_START( igs_majhong, driver_device )
MDRV_CPU_ADD("maincpu",ARM7, 20000000)
MDRV_CPU_PROGRAM_MAP(igs_majhong_map)
diff --git a/src/mame/drivers/igspoker.c b/src/mame/drivers/igspoker.c
index 20b9fb149eb..6e00994f60f 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_CONFIG_START( igspoker, driver_data_t )
+static MACHINE_CONFIG_START( igspoker, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80, 3579545)
diff --git a/src/mame/drivers/ilpag.c b/src/mame/drivers/ilpag.c
index eaac062d4cb..76163aaf057 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_CONFIG_START( ilpag, driver_data_t )
+static MACHINE_CONFIG_START( ilpag, driver_device )
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?
diff --git a/src/mame/drivers/imolagp.c b/src/mame/drivers/imolagp.c
index 2e0aa6a6bfa..fb300069cde 100644
--- a/src/mame/drivers/imolagp.c
+++ b/src/mame/drivers/imolagp.c
@@ -83,13 +83,11 @@ Known issues:
#define HLE_COM
-class imolagp_state : public driver_data_t
+class imolagp_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, imolagp_state(machine)); }
-
- imolagp_state(running_machine &machine)
- : driver_data_t(machine) { }
+ imolagp_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *slave_workram; // used only ifdef HLE_COM
diff --git a/src/mame/drivers/intrscti.c b/src/mame/drivers/intrscti.c
index e7661e2c29e..c0f7278dd46 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_CONFIG_START( intrscti, driver_data_t )
+static MACHINE_CONFIG_START( intrscti, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,4000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(intrscti_map)
diff --git a/src/mame/drivers/iqblock.c b/src/mame/drivers/iqblock.c
index 43351df2b84..bd341c17c7b 100644
--- a/src/mame/drivers/iqblock.c
+++ b/src/mame/drivers/iqblock.c
@@ -265,7 +265,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( iqblock, driver_data_t )
+static MACHINE_CONFIG_START( iqblock, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6 MHz */
diff --git a/src/mame/drivers/irobot.c b/src/mame/drivers/irobot.c
index 3ba2633ac0c..88756824351 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_CONFIG_START( irobot, driver_data_t )
+static MACHINE_CONFIG_START( irobot, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CLOCK/8)
diff --git a/src/mame/drivers/istellar.c b/src/mame/drivers/istellar.c
index cf7bc058774..d81d369f813 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_CONFIG_START( istellar, driver_data_t )
+static MACHINE_CONFIG_START( istellar, driver_device )
/* main cpu */
MDRV_CPU_ADD("maincpu", Z80, GUESSED_CLOCK)
MDRV_CPU_PROGRAM_MAP(z80_0_mem)
diff --git a/src/mame/drivers/itech32.c b/src/mame/drivers/itech32.c
index c6cb7ea9fd4..72c4e0cac8e 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_CONFIG_START( timekill, driver_data_t )
+static MACHINE_CONFIG_START( timekill, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CPU_CLOCK)
diff --git a/src/mame/drivers/itech8.c b/src/mame/drivers/itech8.c
index 336e29c23eb..fb0293ead61 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_CONFIG_START( itech8_core_lo, driver_data_t )
+static MACHINE_CONFIG_START( itech8_core_lo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, CLOCK_8MHz/4)
diff --git a/src/mame/drivers/itgambl2.c b/src/mame/drivers/itgambl2.c
index ad7a3282a2e..2f4920af171 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_CONFIG_START( itgambl2, driver_data_t )
+static MACHINE_CONFIG_START( itgambl2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H83044, MAIN_CLOCK) /* wrong CPU, but we have not a H8/3337 core ATM */
diff --git a/src/mame/drivers/itgambl3.c b/src/mame/drivers/itgambl3.c
index 2ccd677fac5..bb5e53be08f 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_CONFIG_START( itgambl3, driver_data_t )
+static MACHINE_CONFIG_START( itgambl3, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H83044, MAIN_CLOCK) /* wrong CPU, but we have not a M16C core ATM */
diff --git a/src/mame/drivers/itgamble.c b/src/mame/drivers/itgamble.c
index 0cd5fb383d6..083c7e7ba5d 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_CONFIG_START( itgamble, driver_data_t )
+static MACHINE_CONFIG_START( itgamble, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H83044, MAIN_CLOCK/2) /* probably the wrong CPU */
diff --git a/src/mame/drivers/jackie.c b/src/mame/drivers/jackie.c
index 091f761cf46..78b97002f1d 100644
--- a/src/mame/drivers/jackie.c
+++ b/src/mame/drivers/jackie.c
@@ -519,7 +519,7 @@ static DRIVER_INIT( jackie )
}
-static MACHINE_CONFIG_START( jackie, driver_data_t )
+static MACHINE_CONFIG_START( jackie, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz / 2)
diff --git a/src/mame/drivers/jackpool.c b/src/mame/drivers/jackpool.c
index ee5d11df942..0997f00b080 100644
--- a/src/mame/drivers/jackpool.c
+++ b/src/mame/drivers/jackpool.c
@@ -239,7 +239,7 @@ static INTERRUPT_GEN( jackpool_interrupt )
}
-static MACHINE_CONFIG_START( jackpool, driver_data_t )
+static MACHINE_CONFIG_START( jackpool, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 12000000) // ?
MDRV_CPU_PROGRAM_MAP(jackpool_mem)
MDRV_CPU_VBLANK_INT("screen",jackpool_interrupt) // ?
diff --git a/src/mame/drivers/jalmah.c b/src/mame/drivers/jalmah.c
index 0c1dfd82da5..d997181fb44 100644
--- a/src/mame/drivers/jalmah.c
+++ b/src/mame/drivers/jalmah.c
@@ -1302,7 +1302,7 @@ static MACHINE_RESET ( jalmah )
}
}
-static MACHINE_CONFIG_START( jalmah, driver_data_t )
+static MACHINE_CONFIG_START( jalmah, driver_device )
MDRV_CPU_ADD("maincpu" , M68000, 12000000) /* 68000-8 */
MDRV_CPU_PROGRAM_MAP(jalmah)
MDRV_CPU_VBLANK_INT("screen", irq2_line_hold)
diff --git a/src/mame/drivers/jangou.c b/src/mame/drivers/jangou.c
index 4818e452392..ae0a352bcae 100644
--- a/src/mame/drivers/jangou.c
+++ b/src/mame/drivers/jangou.c
@@ -33,13 +33,11 @@ $c088-$c095 player tiles
#define MASTER_CLOCK XTAL_19_968MHz
-class jangou_state : public driver_data_t
+class jangou_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, jangou_state(machine)); }
-
- jangou_state(running_machine &machine)
- : driver_data_t(machine) { }
+ jangou_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
UINT8 *blit_buffer;
diff --git a/src/mame/drivers/jantotsu.c b/src/mame/drivers/jantotsu.c
index 1bf1ad7bd15..f206f00cbb9 100644
--- a/src/mame/drivers/jantotsu.c
+++ b/src/mame/drivers/jantotsu.c
@@ -99,13 +99,11 @@ dumped by sayu
#include "sound/sn76496.h"
#include "sound/msm5205.h"
-class jantotsu_state : public driver_data_t
+class jantotsu_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, jantotsu_state(machine)); }
-
- jantotsu_state(running_machine &machine)
- : driver_data_t(machine) { }
+ jantotsu_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
UINT8 *bitmap;
diff --git a/src/mame/drivers/jchan.c b/src/mame/drivers/jchan.c
index 2101029d5c4..158d3e31bd3 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_CONFIG_START( jchan, driver_data_t )
+static MACHINE_CONFIG_START( jchan, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 16000000)
MDRV_CPU_PROGRAM_MAP(jchan_main)
diff --git a/src/mame/drivers/jokrwild.c b/src/mame/drivers/jokrwild.c
index 5d27b6bf134..0784e836eba 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_CONFIG_START( jokrwild, driver_data_t )
+static MACHINE_CONFIG_START( jokrwild, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/2) /* guess */
diff --git a/src/mame/drivers/jollyjgr.c b/src/mame/drivers/jollyjgr.c
index 6d65257b039..ec6c51d0624 100644
--- a/src/mame/drivers/jollyjgr.c
+++ b/src/mame/drivers/jollyjgr.c
@@ -102,13 +102,11 @@ Notes:
#include "sound/ay8910.h"
-class jollyjgr_state : public driver_data_t
+class jollyjgr_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, jollyjgr_state(machine)); }
-
- jollyjgr_state(running_machine &machine)
- : driver_data_t(machine) { }
+ jollyjgr_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/jongkyo.c b/src/mame/drivers/jongkyo.c
index a0286627ba4..37cfa7d79e4 100644
--- a/src/mame/drivers/jongkyo.c
+++ b/src/mame/drivers/jongkyo.c
@@ -32,13 +32,11 @@
#define JONGKYO_CLOCK 18432000
-class jongkyo_state : public driver_data_t
+class jongkyo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, jongkyo_state(machine)); }
-
- jongkyo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ jongkyo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/jpmimpct.c b/src/mame/drivers/jpmimpct.c
index 7652e8d3be8..c1d663b9a9a 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_CONFIG_START( jpmimpct, driver_data_t )
+static MACHINE_CONFIG_START( jpmimpct, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(m68k_program_map)
@@ -1321,7 +1321,7 @@ ADDRESS_MAP_END
*
*************************************/
-static MACHINE_CONFIG_START( impctawp, driver_data_t )
+static MACHINE_CONFIG_START( impctawp, driver_device )
MDRV_CPU_ADD("maincpu",M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(awp68k_program_map)
diff --git a/src/mame/drivers/jpmsys5.c b/src/mame/drivers/jpmsys5.c
index 3ef624291c6..7594b5543ba 100644
--- a/src/mame/drivers/jpmsys5.c
+++ b/src/mame/drivers/jpmsys5.c
@@ -594,7 +594,7 @@ static MACHINE_RESET( jpmsys5v )
*
*************************************/
-static MACHINE_CONFIG_START( jpmsys5v, driver_data_t )
+static MACHINE_CONFIG_START( jpmsys5v, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(68000_map)
diff --git a/src/mame/drivers/jrpacman.c b/src/mame/drivers/jrpacman.c
index f9c4bb0d352..e39fdb3149c 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_CONFIG_START( jrpacman, driver_data_t )
+static MACHINE_CONFIG_START( jrpacman, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
diff --git a/src/mame/drivers/kaneko16.c b/src/mame/drivers/kaneko16.c
index fc7c1d418d4..9f3df73d70e 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_CONFIG_START( berlwall, driver_data_t )
+static MACHINE_CONFIG_START( berlwall, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* MC68000P12 */
@@ -1845,7 +1845,7 @@ MACHINE_CONFIG_END
Bakuretsu Breaker
***************************************************************************/
-static MACHINE_CONFIG_START( bakubrkr, driver_data_t )
+static MACHINE_CONFIG_START( bakubrkr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz) /* verified on pcb */
@@ -1900,7 +1900,7 @@ MACHINE_CONFIG_END
6-7] busy loop
*/
-static MACHINE_CONFIG_START( blazeon, driver_data_t )
+static MACHINE_CONFIG_START( blazeon, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000) /* TMP68HC000-12 */
@@ -1953,7 +1953,7 @@ MACHINE_CONFIG_END
VIDEO_UPDATE_AFTER_VBLANK fixes the mangled/wrong colored sprites
*/
-static MACHINE_CONFIG_START( gtmr, driver_data_t )
+static MACHINE_CONFIG_START( gtmr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("gtmr", M68000, XTAL_16MHz) /* verified on pcb */
@@ -2040,7 +2040,7 @@ MACHINE_CONFIG_END
Magical Crystal
***************************************************************************/
-static MACHINE_CONFIG_START( mgcrystl, driver_data_t )
+static MACHINE_CONFIG_START( mgcrystl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz) /* verified on pcb */
@@ -2158,7 +2158,7 @@ static ADDRESS_MAP_START( shogwarr_oki2_map, 0, 8 )
AM_RANGE(0x00000, 0x3ffff) AM_ROMBANK("bank11")
ADDRESS_MAP_END
-static MACHINE_CONFIG_START( shogwarr, driver_data_t )
+static MACHINE_CONFIG_START( shogwarr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz)
diff --git a/src/mame/drivers/kingdrby.c b/src/mame/drivers/kingdrby.c
index 7b0dd21b6b8..43476ba976b 100644
--- a/src/mame/drivers/kingdrby.c
+++ b/src/mame/drivers/kingdrby.c
@@ -965,7 +965,7 @@ static PALETTE_INIT(kingdrbb)
}
}
-static MACHINE_CONFIG_START( kingdrby, driver_data_t )
+static MACHINE_CONFIG_START( kingdrby, driver_device )
MDRV_CPU_ADD("master", Z80, CLK_2)
MDRV_CPU_PROGRAM_MAP(master_map)
MDRV_CPU_IO_MAP(master_io_map)
diff --git a/src/mame/drivers/kingpin.c b/src/mame/drivers/kingpin.c
index fb32c4cee9e..b7cf7dee17c 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_CONFIG_START( kingpin, driver_data_t )
+static MACHINE_CONFIG_START( kingpin, driver_device )
/* MAIN CPU */
MDRV_CPU_ADD("maincpu", Z80, 3579545)
MDRV_CPU_PROGRAM_MAP(kingpin_program_map)
diff --git a/src/mame/drivers/kinst.c b/src/mame/drivers/kinst.c
index ddaef34876c..0aef1abe858 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_CONFIG_START( kinst, driver_data_t )
+static MACHINE_CONFIG_START( kinst, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R4600LE, MASTER_CLOCK*2)
diff --git a/src/mame/drivers/koftball.c b/src/mame/drivers/koftball.c
index 4ef4c2d51de..91620ad9b99 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_CONFIG_START( koftball, driver_data_t )
+static MACHINE_CONFIG_START( koftball, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 21477270/2 )
MDRV_CPU_PROGRAM_MAP(koftball_mem)
MDRV_CPU_VBLANK_INT_HACK(bmc_interrupt,3)
diff --git a/src/mame/drivers/koikoi.c b/src/mame/drivers/koikoi.c
index 1776fe019b2..97e6c72e64f 100644
--- a/src/mame/drivers/koikoi.c
+++ b/src/mame/drivers/koikoi.c
@@ -45,13 +45,11 @@ to prevent disabling inputs.
static const int input_tab[]= { 0x22, 0x64, 0x44, 0x68, 0x30, 0x50, 0x70, 0x48, 0x28, 0x21, 0x41, 0x82, 0x81, 0x42 };
-class koikoi_state : public driver_data_t
+class koikoi_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, koikoi_state(machine)); }
-
- koikoi_state(running_machine &machine)
- : driver_data_t(machine) { }
+ koikoi_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/konamigq.c b/src/mame/drivers/konamigq.c
index 86924b22dcb..835d61a194a 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_CONFIG_START( konamigq, driver_data_t )
+static MACHINE_CONFIG_START( konamigq, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PSXCPU, XTAL_67_7376MHz )
MDRV_CPU_PROGRAM_MAP( konamigq_map)
diff --git a/src/mame/drivers/konamigv.c b/src/mame/drivers/konamigv.c
index 8e815b5915d..c9aa9a46dc9 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_CONFIG_START( konamigv, driver_data_t )
+static MACHINE_CONFIG_START( konamigv, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PSXCPU, XTAL_67_7376MHz )
MDRV_CPU_PROGRAM_MAP( konamigv_map)
diff --git a/src/mame/drivers/konamigx.c b/src/mame/drivers/konamigx.c
index 1f94e63310d..57e55193394 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_CONFIG_START( konamigx, driver_data_t )
+static MACHINE_CONFIG_START( konamigx, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 24000000)
MDRV_CPU_PROGRAM_MAP(gx_type2_map)
diff --git a/src/mame/drivers/konamim2.c b/src/mame/drivers/konamim2.c
index a8538b0e354..e28d05f5346 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_CONFIG_START( m2, driver_data_t )
+static MACHINE_CONFIG_START( m2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC602, 33000000) /* actually PPC602, 66MHz */
diff --git a/src/mame/drivers/kongambl.c b/src/mame/drivers/kongambl.c
index b4dac4e88fc..4b9081e18b3 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_CONFIG_START( kongambl, driver_data_t )
+static MACHINE_CONFIG_START( kongambl, driver_device )
MDRV_CPU_ADD("maincpu", M68EC020, 25000000)
MDRV_CPU_PROGRAM_MAP(kongambl_map)
diff --git a/src/mame/drivers/ksys573.c b/src/mame/drivers/ksys573.c
index b53d274b9a9..d2e52e5a247 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_CONFIG_START( konami573, driver_data_t )
+static MACHINE_CONFIG_START( konami573, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PSXCPU, XTAL_67_7376MHz )
MDRV_CPU_PROGRAM_MAP( konami573_map)
diff --git a/src/mame/drivers/kungfur.c b/src/mame/drivers/kungfur.c
index cb426560e71..4ffbc479e23 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_CONFIG_START( kungfur, driver_data_t )
+static MACHINE_CONFIG_START( kungfur, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M6809,8000000/2)
diff --git a/src/mame/drivers/laserbas.c b/src/mame/drivers/laserbas.c
index e7e37c059b8..8bf7523fadb 100644
--- a/src/mame/drivers/laserbas.c
+++ b/src/mame/drivers/laserbas.c
@@ -20,13 +20,11 @@
#include "cpu/z80/z80.h"
#include "deprecat.h"
-class laserbas_state : public driver_data_t
+class laserbas_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, laserbas_state(machine)); }
-
- laserbas_state(running_machine &machine)
- : driver_data_t(machine) { }
+ laserbas_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
UINT8 *vram1;
diff --git a/src/mame/drivers/lastfght.c b/src/mame/drivers/lastfght.c
index 15565ba63ab..9b7fbc5f882 100644
--- a/src/mame/drivers/lastfght.c
+++ b/src/mame/drivers/lastfght.c
@@ -66,13 +66,11 @@ Notes:
#include "deprecat.h"
#include "cpu/h83002/h8.h"
-class lastfght_state : public driver_data_t
+class lastfght_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, lastfght_state(machine)); }
-
- lastfght_state(running_machine &machine)
- : driver_data_t(machine) { }
+ lastfght_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * colorram;
diff --git a/src/mame/drivers/legionna.c b/src/mame/drivers/legionna.c
index a43fc0e6bfb..1117aefb3e4 100644
--- a/src/mame/drivers/legionna.c
+++ b/src/mame/drivers/legionna.c
@@ -1039,7 +1039,7 @@ GFXDECODE_END
/*****************************************************************************/
-static MACHINE_CONFIG_START( legionna, driver_data_t )
+static MACHINE_CONFIG_START( legionna, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,20000000/2) /* ??? */
@@ -1071,7 +1071,7 @@ static MACHINE_CONFIG_START( legionna, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( heatbrl, driver_data_t )
+static MACHINE_CONFIG_START( heatbrl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,20000000/2) /* ??? */
@@ -1102,7 +1102,7 @@ static MACHINE_CONFIG_START( heatbrl, driver_data_t )
SEIBU_SOUND_SYSTEM_YM3812_INTERFACE(14318180/4,1320000)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( godzilla, driver_data_t )
+static MACHINE_CONFIG_START( godzilla, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 20000000/2)
@@ -1133,7 +1133,7 @@ static MACHINE_CONFIG_START( godzilla, driver_data_t )
SEIBU_SOUND_SYSTEM_YM2151_INTERFACE(14318180/4,1320000)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( denjinmk, driver_data_t )
+static MACHINE_CONFIG_START( denjinmk, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 20000000/2)
@@ -1164,7 +1164,7 @@ static MACHINE_CONFIG_START( denjinmk, driver_data_t )
SEIBU_SOUND_SYSTEM_YM2151_INTERFACE(14318180/4,1320000)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( grainbow, driver_data_t )
+static MACHINE_CONFIG_START( grainbow, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 20000000/2)
@@ -1196,7 +1196,7 @@ static MACHINE_CONFIG_START( grainbow, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( cupsoc, driver_data_t )
+static MACHINE_CONFIG_START( cupsoc, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,20000000/2)
@@ -1228,7 +1228,7 @@ static MACHINE_CONFIG_START( cupsoc, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( cupsocbl, driver_data_t )
+static MACHINE_CONFIG_START( cupsocbl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000)
diff --git a/src/mame/drivers/leland.c b/src/mame/drivers/leland.c
index b756417317e..659a566757f 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_CONFIG_START( leland, driver_data_t )
+static MACHINE_CONFIG_START( leland, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("master", Z80, MASTER_CLOCK/2)
diff --git a/src/mame/drivers/lethalj.c b/src/mame/drivers/lethalj.c
index c96077b18b1..286ffe3b4b7 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_CONFIG_START( gameroom, driver_data_t )
+static MACHINE_CONFIG_START( gameroom, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, MASTER_CLOCK)
diff --git a/src/mame/drivers/lgp.c b/src/mame/drivers/lgp.c
index 319f77b53dc..ce5c2d270c0 100644
--- a/src/mame/drivers/lgp.c
+++ b/src/mame/drivers/lgp.c
@@ -338,7 +338,7 @@ static MACHINE_START( lgp )
/* DRIVER */
-static MACHINE_CONFIG_START( lgp, driver_data_t )
+static MACHINE_CONFIG_START( lgp, driver_device )
/* main cpu */
MDRV_CPU_ADD("maincpu", Z80, CPU_PCB_CLOCK)
MDRV_CPU_PROGRAM_MAP(main_program_map)
diff --git a/src/mame/drivers/liberatr.c b/src/mame/drivers/liberatr.c
index da8601f5784..e47c7f51041 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_CONFIG_START( liberatr, driver_data_t )
+static MACHINE_CONFIG_START( liberatr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/16) /* 1.25Mhz divided from 20Mhz master clock */
diff --git a/src/mame/drivers/limenko.c b/src/mame/drivers/limenko.c
index 220163ea42b..bc2e6db5f52 100644
--- a/src/mame/drivers/limenko.c
+++ b/src/mame/drivers/limenko.c
@@ -640,7 +640,7 @@ GFXDECODE_END
*****************************************************************************************************/
-static MACHINE_CONFIG_START( limenko, driver_data_t )
+static MACHINE_CONFIG_START( limenko, driver_device )
MDRV_CPU_ADD("maincpu", E132XN, 20000000*4) /* 4x internal multiplier */
MDRV_CPU_PROGRAM_MAP(limenko_map)
MDRV_CPU_IO_MAP(limenko_io_map)
@@ -665,7 +665,7 @@ static MACHINE_CONFIG_START( limenko, driver_data_t )
/* sound hardware */
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( spotty, driver_data_t )
+static MACHINE_CONFIG_START( spotty, driver_device )
MDRV_CPU_ADD("maincpu", GMS30C2232, 20000000) /* 20 MHz, no internal multiplier */
MDRV_CPU_PROGRAM_MAP(spotty_map)
MDRV_CPU_IO_MAP(spotty_io_map)
diff --git a/src/mame/drivers/littlerb.c b/src/mame/drivers/littlerb.c
index 01632fa629d..d0ccfec96de 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_CONFIG_START( littlerb, driver_data_t )
+static MACHINE_CONFIG_START( littlerb, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(littlerb_main)
MDRV_CPU_VBLANK_INT("screen", littlerb)
diff --git a/src/mame/drivers/looping.c b/src/mame/drivers/looping.c
index d85a4cb8db6..3214deb65e2 100644
--- a/src/mame/drivers/looping.c
+++ b/src/mame/drivers/looping.c
@@ -95,13 +95,11 @@ static UINT8 *cop_io;
*
*************************************/
-class looping_state : public driver_data_t
+class looping_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, looping_state(machine)); }
-
- looping_state(running_machine &machine)
- : driver_data_t(machine) { }
+ looping_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/lordgun.c b/src/mame/drivers/lordgun.c
index e95e9dfc040..08c266a359a 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_CONFIG_START( lordgun, driver_data_t )
+static MACHINE_CONFIG_START( lordgun, driver_device )
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
MDRV_CPU_PROGRAM_MAP(lordgun_map)
MDRV_CPU_VBLANK_INT("screen", irq4_line_hold)
@@ -694,7 +694,7 @@ static const ymf278b_interface ymf278b_config =
soundirq
};
-static MACHINE_CONFIG_START( aliencha, driver_data_t )
+static MACHINE_CONFIG_START( aliencha, driver_device )
MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
MDRV_CPU_PROGRAM_MAP(aliencha_map)
MDRV_CPU_VBLANK_INT("screen", irq4_line_hold)
diff --git a/src/mame/drivers/ltcasino.c b/src/mame/drivers/ltcasino.c
index dc2fd5a9505..b030adbda9b 100644
--- a/src/mame/drivers/ltcasino.c
+++ b/src/mame/drivers/ltcasino.c
@@ -626,7 +626,7 @@ static VIDEO_UPDATE(ltcasino)
}
-static MACHINE_CONFIG_START( ltcasino, driver_data_t )
+static MACHINE_CONFIG_START( ltcasino, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,2000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(ltcasino_map)
diff --git a/src/mame/drivers/luckgrln.c b/src/mame/drivers/luckgrln.c
index 651a7a46289..5bec2954f5d 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_CONFIG_START( luckgrln, driver_data_t )
+static MACHINE_CONFIG_START( luckgrln, driver_device )
MDRV_CPU_ADD("maincpu", Z180,8000000)
MDRV_CPU_PROGRAM_MAP(mainmap)
MDRV_CPU_IO_MAP(portmap)
diff --git a/src/mame/drivers/lucky74.c b/src/mame/drivers/lucky74.c
index 943a0f57130..2db3fc574bd 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_CONFIG_START( lucky74, driver_data_t )
+static MACHINE_CONFIG_START( lucky74, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, C_06B49P_CLKOUT_03) /* 3 MHz. */
diff --git a/src/mame/drivers/lvcards.c b/src/mame/drivers/lvcards.c
index 5f79f2ebe4e..2bae3b22608 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_CONFIG_START( lvcards, driver_data_t )
+static MACHINE_CONFIG_START( lvcards, driver_device )
// basic machine hardware
MDRV_CPU_ADD("maincpu",Z80, 18432000/6) // 3.072 MHz ?
diff --git a/src/mame/drivers/m107.c b/src/mame/drivers/m107.c
index 7b103b5f65e..93a291070a3 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_CONFIG_START( firebarr, driver_data_t )
+static MACHINE_CONFIG_START( firebarr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V33, 28000000/2) /* NEC V33, 28MHz clock */
diff --git a/src/mame/drivers/m14.c b/src/mame/drivers/m14.c
index 62f00bf4a4a..c856e467219 100644
--- a/src/mame/drivers/m14.c
+++ b/src/mame/drivers/m14.c
@@ -53,13 +53,11 @@ Dumped by Chackn
#include "cpu/i8085/i8085.h"
-class m14_state : public driver_data_t
+class m14_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, m14_state(machine)); }
-
- m14_state(running_machine &machine)
- : driver_data_t(machine) { }
+ m14_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
tilemap_t *m14_tilemap;
diff --git a/src/mame/drivers/m63.c b/src/mame/drivers/m63.c
index a9248c6844e..48455da647e 100644
--- a/src/mame/drivers/m63.c
+++ b/src/mame/drivers/m63.c
@@ -121,13 +121,11 @@ Dip locations verified for:
#include "sound/ay8910.h"
#include "sound/samples.h"
-class m63_state : public driver_data_t
+class m63_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, m63_state(machine)); }
-
- m63_state(running_machine &machine)
- : driver_data_t(machine) { }
+ m63_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 * videoram;
UINT8 * colorram;
diff --git a/src/mame/drivers/m72.c b/src/mame/drivers/m72.c
index 69de9d343f7..c5e68c8b9bd 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_CONFIG_START( m72_base, driver_data_t )
+static MACHINE_CONFIG_START( m72_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -1847,7 +1847,7 @@ static MACHINE_CONFIG_DERIVED( m72_8751, m72_base )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( rtype, driver_data_t )
+static MACHINE_CONFIG_START( rtype, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -1885,7 +1885,7 @@ static MACHINE_CONFIG_START( rtype, driver_data_t )
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( xmultipl, driver_data_t )
+static MACHINE_CONFIG_START( xmultipl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -1928,7 +1928,7 @@ static MACHINE_CONFIG_START( xmultipl, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( xmultiplm72, driver_data_t )
+static MACHINE_CONFIG_START( xmultiplm72, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -1971,7 +1971,7 @@ static MACHINE_CONFIG_START( xmultiplm72, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( dbreed, driver_data_t )
+static MACHINE_CONFIG_START( dbreed, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2014,7 +2014,7 @@ static MACHINE_CONFIG_START( dbreed, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( dbreedm72, driver_data_t )
+static MACHINE_CONFIG_START( dbreedm72, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2057,7 +2057,7 @@ static MACHINE_CONFIG_START( dbreedm72, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( rtype2, driver_data_t )
+static MACHINE_CONFIG_START( rtype2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2100,7 +2100,7 @@ static MACHINE_CONFIG_START( rtype2, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( majtitle, driver_data_t )
+static MACHINE_CONFIG_START( majtitle, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2143,7 +2143,7 @@ static MACHINE_CONFIG_START( majtitle, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( hharry, driver_data_t )
+static MACHINE_CONFIG_START( hharry, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2186,7 +2186,7 @@ static MACHINE_CONFIG_START( hharry, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( hharryu, driver_data_t )
+static MACHINE_CONFIG_START( hharryu, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2229,7 +2229,7 @@ static MACHINE_CONFIG_START( hharryu, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( dkgenm72, driver_data_t )
+static MACHINE_CONFIG_START( dkgenm72, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2272,7 +2272,7 @@ static MACHINE_CONFIG_START( dkgenm72, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( poundfor, driver_data_t )
+static MACHINE_CONFIG_START( poundfor, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2) /* 16 MHz external freq (8MHz internal) */
@@ -2315,7 +2315,7 @@ static MACHINE_CONFIG_START( poundfor, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( cosmccop, driver_data_t )
+static MACHINE_CONFIG_START( cosmccop, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,MASTER_CLOCK/2/2)
diff --git a/src/mame/drivers/m79amb.c b/src/mame/drivers/m79amb.c
index 50155d0c7b3..30260417c01 100644
--- a/src/mame/drivers/m79amb.c
+++ b/src/mame/drivers/m79amb.c
@@ -58,13 +58,11 @@ and two large (paddles pretending to be) guns.
#include "includes/m79amb.h"
#include "cpu/i8085/i8085.h"
-class m79amb_state : public driver_data_t
+class m79amb_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, m79amb_state(machine)); }
-
- m79amb_state(running_machine &machine)
- : driver_data_t(machine) { }
+ m79amb_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/m90.c b/src/mame/drivers/m90.c
index 2fb656070a5..37dcc8c8e5f 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_CONFIG_START( m90, driver_data_t )
+static MACHINE_CONFIG_START( m90, driver_device )
/* 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)
@@ -773,7 +773,7 @@ MACHINE_CONFIG_END
static const nec_config bomberman_config ={ bomberman_decryption_table, };
-static MACHINE_CONFIG_START( bombrman, driver_data_t )
+static MACHINE_CONFIG_START( bombrman, driver_device )
/* 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,7 +818,7 @@ MACHINE_CONFIG_END
static const nec_config dynablaster_config ={ dynablaster_decryption_table, };
-static MACHINE_CONFIG_START( bbmanw, driver_data_t )
+static MACHINE_CONFIG_START( bbmanw, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,XTAL_32MHz/2/2) /* verified clock on cpu is 16Mhz but probably divided internally by 2 */
@@ -885,7 +885,7 @@ static MACHINE_CONFIG_DERIVED( bomblord, bbmanw )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( dynablsb, driver_data_t )
+static MACHINE_CONFIG_START( dynablsb, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,32000000/4)
diff --git a/src/mame/drivers/m92.c b/src/mame/drivers/m92.c
index a39cc972e59..73cce810dca 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_CONFIG_START( m92, driver_data_t )
+static MACHINE_CONFIG_START( m92, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V33,18000000/2) /* NEC V33, 18 MHz clock */
@@ -1003,7 +1003,7 @@ static MACHINE_CONFIG_DERIVED( hook, m92 )
MDRV_CPU_CONFIG(hook_config)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( ppan, driver_data_t )
+static MACHINE_CONFIG_START( ppan, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",V33,18000000/2)
diff --git a/src/mame/drivers/macs.c b/src/mame/drivers/macs.c
index 9c5dc690fd9..119e5e9da11 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_CONFIG_START( macs, driver_data_t )
+static MACHINE_CONFIG_START( macs, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,8000000) /* 8 MHz ? */
MDRV_CPU_PROGRAM_MAP(macs_mem)
diff --git a/src/mame/drivers/madalien.c b/src/mame/drivers/madalien.c
index 8e74ff5c531..c63b1f055a4 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_CONFIG_START( madalien, driver_data_t )
+static MACHINE_CONFIG_START( madalien, driver_device )
/* main CPU */
MDRV_CPU_ADD("maincpu", M6502, MADALIEN_MAIN_CLOCK / 8) /* 1324kHz */
diff --git a/src/mame/drivers/magic10.c b/src/mame/drivers/magic10.c
index 8b7cff2b3cf..eb25068ed4b 100644
--- a/src/mame/drivers/magic10.c
+++ b/src/mame/drivers/magic10.c
@@ -645,7 +645,7 @@ GFXDECODE_END
* Machine Drivers *
****************************/
-static MACHINE_CONFIG_START( magic10, driver_data_t )
+static MACHINE_CONFIG_START( magic10, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) // ?
MDRV_CPU_PROGRAM_MAP(magic10_map)
diff --git a/src/mame/drivers/magicard.c b/src/mame/drivers/magicard.c
index 67cdb4ebacb..e3a8635551a 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_CONFIG_START( magicard, driver_data_t )
+static MACHINE_CONFIG_START( magicard, driver_device )
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..) */
diff --git a/src/mame/drivers/magicfly.c b/src/mame/drivers/magicfly.c
index 57428cea6fa..570dde8f546 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_CONFIG_START( magicfly, driver_data_t )
+static MACHINE_CONFIG_START( magicfly, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/12) /* guess */
diff --git a/src/mame/drivers/magictg.c b/src/mame/drivers/magictg.c
index 3827385a4be..a45f2f786c4 100644
--- a/src/mame/drivers/magictg.c
+++ b/src/mame/drivers/magictg.c
@@ -139,7 +139,7 @@ ADDRESS_MAP_END
-static MACHINE_CONFIG_START( magictg, driver_data_t )
+static MACHINE_CONFIG_START( magictg, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R4600BE, 10000000) // ?? what cpu?
MDRV_CPU_CONFIG(r4600_config)
diff --git a/src/mame/drivers/magmax.c b/src/mame/drivers/magmax.c
index f750989bf1e..f5967fd2429 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_CONFIG_START( magmax, driver_data_t )
+static MACHINE_CONFIG_START( magmax, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_16MHz/2) /* verified on pcb */
diff --git a/src/mame/drivers/marinedt.c b/src/mame/drivers/marinedt.c
index 0d94ebd1ba9..188a5e7494c 100644
--- a/src/mame/drivers/marinedt.c
+++ b/src/mame/drivers/marinedt.c
@@ -97,13 +97,11 @@ p2 ink doesn't always light up in test mode
#include "emu.h"
#include "cpu/z80/z80.h"
-class marinedt_state : public driver_data_t
+class marinedt_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, marinedt_state(machine)); }
-
- marinedt_state(running_machine &machine)
- : driver_data_t(machine) { }
+ marinedt_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * tx_tileram;
diff --git a/src/mame/drivers/mastboy.c b/src/mame/drivers/mastboy.c
index 4e9d27bb695..47e2aa3eabc 100644
--- a/src/mame/drivers/mastboy.c
+++ b/src/mame/drivers/mastboy.c
@@ -855,7 +855,7 @@ static MACHINE_RESET( mastboy )
-static MACHINE_CONFIG_START( mastboy, driver_data_t )
+static MACHINE_CONFIG_START( mastboy, driver_device )
MDRV_CPU_ADD("maincpu", Z180, 12000000/2) /* HD647180X0CP6-1M1R */
MDRV_CPU_PROGRAM_MAP(mastboy_map)
MDRV_CPU_IO_MAP(mastboy_io_map)
diff --git a/src/mame/drivers/maxaflex.c b/src/mame/drivers/maxaflex.c
index 97326f356a3..bb7d85dc2ac 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_CONFIG_START( a600xl, driver_data_t )
+static MACHINE_CONFIG_START( a600xl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, FREQ_17_EXACT)
MDRV_CPU_PROGRAM_MAP(a600xl_mem)
diff --git a/src/mame/drivers/maygay1b.c b/src/mame/drivers/maygay1b.c
index 85d5ec60497..f88d8a97cff 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_CONFIG_START( m1, driver_data_t )
+static MACHINE_CONFIG_START( m1, driver_device )
MDRV_MACHINE_START(m1)
MDRV_MACHINE_RESET(m1)
diff --git a/src/mame/drivers/maygayv1.c b/src/mame/drivers/maygayv1.c
index 4beb2cd0a1d..f1e136ee3ca 100644
--- a/src/mame/drivers/maygayv1.c
+++ b/src/mame/drivers/maygayv1.c
@@ -989,7 +989,7 @@ static INTERRUPT_GEN( vsync_interrupt )
}
-static MACHINE_CONFIG_START( maygayv1, driver_data_t )
+static MACHINE_CONFIG_START( maygayv1, driver_device )
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK / 2)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", vsync_interrupt)
diff --git a/src/mame/drivers/mayumi.c b/src/mame/drivers/mayumi.c
index 2d73e8e8a3d..9b981f58ae9 100644
--- a/src/mame/drivers/mayumi.c
+++ b/src/mame/drivers/mayumi.c
@@ -13,13 +13,11 @@
#define MCLK 10000000
-class mayumi_state : public driver_data_t
+class mayumi_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mayumi_state(machine)); }
-
- mayumi_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mayumi_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/mazerbla.c b/src/mame/drivers/mazerbla.c
index 37d27bf6259..223e4d31c95 100644
--- a/src/mame/drivers/mazerbla.c
+++ b/src/mame/drivers/mazerbla.c
@@ -48,13 +48,11 @@ TO DO:
#define SOUND_CLOCK XTAL_14_31818MHz
-class mazerbla_state : public driver_data_t
+class mazerbla_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mazerbla_state(machine)); }
-
- mazerbla_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mazerbla_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * cfb_ram;
diff --git a/src/mame/drivers/mcr.c b/src/mame/drivers/mcr.c
index 4d9a7d3befb..f0d1e11734a 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_CONFIG_START( mcr_90009, driver_data_t )
+static MACHINE_CONFIG_START( mcr_90009, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_OSC_MCR_I/8)
diff --git a/src/mame/drivers/mcr3.c b/src/mame/drivers/mcr3.c
index 903800962f1..baff30c9e05 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_CONFIG_START( mcr3_base, driver_data_t )
+static MACHINE_CONFIG_START( mcr3_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/4)
diff --git a/src/mame/drivers/mcr68.c b/src/mame/drivers/mcr68.c
index 3a28b13036f..40d720d383e 100644
--- a/src/mame/drivers/mcr68.c
+++ b/src/mame/drivers/mcr68.c
@@ -945,7 +945,7 @@ GFXDECODE_END
=================================================================*/
-static MACHINE_CONFIG_START( zwackery, driver_data_t )
+static MACHINE_CONFIG_START( zwackery, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 7652400) /* should be XTAL_16MHz/2 */
@@ -979,7 +979,7 @@ static MACHINE_CONFIG_START( zwackery, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( mcr68, driver_data_t )
+static MACHINE_CONFIG_START( mcr68, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 7723800)
diff --git a/src/mame/drivers/meadows.c b/src/mame/drivers/meadows.c
index 304aec2f745..c0b34598aa4 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_CONFIG_START( meadows, driver_data_t )
+static MACHINE_CONFIG_START( meadows, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, MASTER_CLOCK/8) /* 5MHz / 8 = 625 kHz */
@@ -687,7 +687,7 @@ static MACHINE_CONFIG_START( meadows, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( minferno, driver_data_t )
+static MACHINE_CONFIG_START( minferno, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, MASTER_CLOCK/24) /* 5MHz / 8 / 3 = 208.33 kHz */
@@ -713,7 +713,7 @@ static MACHINE_CONFIG_START( minferno, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( bowl3d, driver_data_t )
+static MACHINE_CONFIG_START( bowl3d, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, MASTER_CLOCK/8) /* 5MHz / 8 = 625 kHz */
MDRV_CPU_PROGRAM_MAP(bowl3d_main_map)
diff --git a/src/mame/drivers/mediagx.c b/src/mame/drivers/mediagx.c
index 851d84f46cb..be5642d417b 100644
--- a/src/mame/drivers/mediagx.c
+++ b/src/mame/drivers/mediagx.c
@@ -86,13 +86,11 @@ struct _speedup_entry
UINT32 pc;
};
-class mediagx_state : public driver_data_t
+class mediagx_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mediagx_state(machine)); }
-
- mediagx_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mediagx_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT32 *cga_ram;
UINT32 *bios_ram;
diff --git a/src/mame/drivers/megadriv.c b/src/mame/drivers/megadriv.c
index d6be45aa379..cb403bf0b4b 100644
--- a/src/mame/drivers/megadriv.c
+++ b/src/mame/drivers/megadriv.c
@@ -6190,7 +6190,7 @@ MACHINE_CONFIG_FRAGMENT( megadriv_timers )
MACHINE_CONFIG_END
-MACHINE_CONFIG_START( megadriv, driver_data_t )
+MACHINE_CONFIG_START( megadriv, driver_device )
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK_NTSC / 7) /* 7.67 MHz */
MDRV_CPU_PROGRAM_MAP(megadriv_map)
/* IRQs are handled via the timers */
@@ -6237,7 +6237,7 @@ MACHINE_CONFIG_END
/************ PAL hardware has a different master clock *************/
-MACHINE_CONFIG_START( megadpal, driver_data_t )
+MACHINE_CONFIG_START( megadpal, driver_device )
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK_PAL / 7) /* 7.67 MHz */
MDRV_CPU_PROGRAM_MAP(megadriv_map)
/* IRQs are handled via the timers */
diff --git a/src/mame/drivers/megasys1.c b/src/mame/drivers/megasys1.c
index 84690d09b1a..7cc08ef308e 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_CONFIG_START( system_A, driver_data_t )
+static MACHINE_CONFIG_START( system_A, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, SYS_A_CPU_CLOCK) /* 6MHz verified */
@@ -1519,7 +1519,7 @@ static MACHINE_CONFIG_DERIVED( system_B, system_A )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( system_Bbl, driver_data_t )
+static MACHINE_CONFIG_START( system_Bbl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, SYS_B_CPU_CLOCK)
@@ -1591,7 +1591,7 @@ MACHINE_CONFIG_END
***************************************************************************/
-static MACHINE_CONFIG_START( system_D, driver_data_t )
+static MACHINE_CONFIG_START( system_D, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, SYS_D_CPU_CLOCK) /* 8MHz */
@@ -1653,7 +1653,7 @@ static const ym2203_interface ym2203_config =
irq_handler
};
-static MACHINE_CONFIG_START( system_Z, driver_data_t )
+static MACHINE_CONFIG_START( system_Z, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, SYS_A_CPU_CLOCK) /* 6MHz (12MHz / 2) */
diff --git a/src/mame/drivers/meijinsn.c b/src/mame/drivers/meijinsn.c
index 39d9d3b69fb..d7d693bde5e 100644
--- a/src/mame/drivers/meijinsn.c
+++ b/src/mame/drivers/meijinsn.c
@@ -65,13 +65,11 @@ SOFT PSG & VOICE BY M.C & S.H
#include "video/resnet.h"
#include "sound/ay8910.h"
-class meijinsn_state : public driver_data_t
+class meijinsn_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, meijinsn_state(machine)); }
-
- meijinsn_state(running_machine &machine)
- : driver_data_t(machine) { }
+ meijinsn_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * shared_ram;
diff --git a/src/mame/drivers/merit.c b/src/mame/drivers/merit.c
index 2f45455f1a7..fc2ee7ac4ef 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_CONFIG_START( pitboss, driver_data_t )
+static MACHINE_CONFIG_START( pitboss, driver_device )
MDRV_CPU_ADD("maincpu",Z80, CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(pitboss_map)
MDRV_CPU_IO_MAP(trvwhiz_io_map)
diff --git a/src/mame/drivers/meritm.c b/src/mame/drivers/meritm.c
index ea63a979f6c..7d29cb3ca4b 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_CONFIG_START( meritm_crt250, driver_data_t )
+static MACHINE_CONFIG_START( meritm_crt250, driver_device )
MDRV_CPU_ADD("maincpu", Z80, SYSTEM_CLK/6)
MDRV_CPU_PROGRAM_MAP(meritm_crt250_map)
MDRV_CPU_IO_MAP(meritm_crt250_io_map)
diff --git a/src/mame/drivers/mgolf.c b/src/mame/drivers/mgolf.c
index 954d6e37e4f..c0b5ba75b31 100644
--- a/src/mame/drivers/mgolf.c
+++ b/src/mame/drivers/mgolf.c
@@ -7,13 +7,11 @@
#include "emu.h"
#include "cpu/m6502/m6502.h"
-class mgolf_state : public driver_data_t
+class mgolf_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mgolf_state(machine)); }
-
- mgolf_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mgolf_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8* video_ram;
diff --git a/src/mame/drivers/mhavoc.c b/src/mame/drivers/mhavoc.c
index d6f43ed6519..0921f2d1966 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_CONFIG_START( mhavoc, driver_data_t )
+static MACHINE_CONFIG_START( mhavoc, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("alpha", M6502, MHAVOC_CLOCK_2_5M) /* 2.5 MHz */
diff --git a/src/mame/drivers/midas.c b/src/mame/drivers/midas.c
index 0618c5837b9..37b9e3cca1b 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_CONFIG_START( livequiz, driver_data_t )
+static MACHINE_CONFIG_START( livequiz, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz / 2)
@@ -702,7 +702,7 @@ static MACHINE_CONFIG_START( livequiz, driver_data_t )
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( hammer, driver_data_t )
+static MACHINE_CONFIG_START( hammer, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_28MHz / 2)
diff --git a/src/mame/drivers/midtunit.c b/src/mame/drivers/midtunit.c
index 81501088563..19598a9202c 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_CONFIG_START( tunit_core, driver_data_t )
+static MACHINE_CONFIG_START( tunit_core, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, CPU_CLOCK)
diff --git a/src/mame/drivers/midvunit.c b/src/mame/drivers/midvunit.c
index 16f6acef453..b0863778e31 100644
--- a/src/mame/drivers/midvunit.c
+++ b/src/mame/drivers/midvunit.c
@@ -1018,7 +1018,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( midvcommon, driver_data_t )
+static MACHINE_CONFIG_START( midvcommon, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS32031, CPU_CLOCK)
diff --git a/src/mame/drivers/midwunit.c b/src/mame/drivers/midwunit.c
index dfb2a8c8c64..0914dfdab0a 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_CONFIG_START( wunit, driver_data_t )
+static MACHINE_CONFIG_START( wunit, driver_device )
MDRV_CPU_ADD("maincpu", TMS34010, 50000000)
MDRV_CPU_CONFIG(tms_config)
diff --git a/src/mame/drivers/midxunit.c b/src/mame/drivers/midxunit.c
index 169bd3244fd..9bb187056e1 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_CONFIG_START( midxunit, driver_data_t )
+static MACHINE_CONFIG_START( midxunit, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34020, 40000000)
diff --git a/src/mame/drivers/midyunit.c b/src/mame/drivers/midyunit.c
index e24b2112675..f598f763ca3 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_CONFIG_START( zunit, driver_data_t )
+static MACHINE_CONFIG_START( zunit, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, FAST_MASTER_CLOCK)
@@ -1047,7 +1047,7 @@ MACHINE_CONFIG_END
*
*************************************/
-static MACHINE_CONFIG_START( yunit_core, driver_data_t )
+static MACHINE_CONFIG_START( yunit_core, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, SLOW_MASTER_CLOCK)
diff --git a/src/mame/drivers/midzeus.c b/src/mame/drivers/midzeus.c
index 7b660129314..39509fffd33 100644
--- a/src/mame/drivers/midzeus.c
+++ b/src/mame/drivers/midzeus.c
@@ -1107,7 +1107,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( midzeus, driver_data_t )
+static MACHINE_CONFIG_START( midzeus, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS32032, CPU_CLOCK)
@@ -1148,7 +1148,7 @@ static MACHINE_CONFIG_DERIVED( invasn, midzeus )
MDRV_CPU_IO_MAP(pic_io_map)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( midzeus2, driver_data_t )
+static MACHINE_CONFIG_START( midzeus2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS32032, CPU_CLOCK)
diff --git a/src/mame/drivers/mil4000.c b/src/mame/drivers/mil4000.c
index 0edd44fe1bb..1293fbfd8c8 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_CONFIG_START( mil4000, driver_data_t )
+static MACHINE_CONFIG_START( mil4000, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 12000000 ) // ?
MDRV_CPU_PROGRAM_MAP(mil4000_map)
// irq 2/4/5 point to the same place, others invalid
diff --git a/src/mame/drivers/miniboy7.c b/src/mame/drivers/miniboy7.c
index e78a76df7c6..77ac03511fc 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_CONFIG_START( miniboy7, driver_data_t )
+static MACHINE_CONFIG_START( miniboy7, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/16) /* guess */
diff --git a/src/mame/drivers/minivadr.c b/src/mame/drivers/minivadr.c
index 1fb0011de75..942ab4e96bb 100644
--- a/src/mame/drivers/minivadr.c
+++ b/src/mame/drivers/minivadr.c
@@ -14,13 +14,11 @@ Japan). It has no sound.
#include "cpu/z80/z80.h"
-class minivadr_state : public driver_data_t
+class minivadr_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, minivadr_state(machine)); }
-
- minivadr_state(running_machine &machine)
- : driver_data_t(machine) { }
+ minivadr_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/mirage.c b/src/mame/drivers/mirage.c
index ee27cc21ed6..d1a786cf620 100644
--- a/src/mame/drivers/mirage.c
+++ b/src/mame/drivers/mirage.c
@@ -39,13 +39,11 @@ MR_01-.3A [a0b758aa]
#include "video/deco16ic.h"
#include "sound/okim6295.h"
-class mirage_state : public driver_data_t
+class mirage_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mirage_state(machine)); }
-
- mirage_state(running_machine &machine)
- : driver_data_t(machine),
+ mirage_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
maincpu(machine.device<cpu_device>("maincpu")),
deco16ic(machine.device<deco16ic_device>("deco_custom")),
oki_sfx(machine.device<okim6295_device>("oki_sfx")),
diff --git a/src/mame/drivers/mirax.c b/src/mame/drivers/mirax.c
index bd8e06781f8..657dd9333e6 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_CONFIG_START( mirax, driver_data_t )
+static MACHINE_CONFIG_START( mirax, driver_device )
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)
diff --git a/src/mame/drivers/missile.c b/src/mame/drivers/missile.c
index a3630b5681e..550c71b54ae 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_CONFIG_START( missile, driver_data_t )
+static MACHINE_CONFIG_START( missile, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK/8)
diff --git a/src/mame/drivers/mjsister.c b/src/mame/drivers/mjsister.c
index 02290b8ec81..10fae305a23 100644
--- a/src/mame/drivers/mjsister.c
+++ b/src/mame/drivers/mjsister.c
@@ -15,13 +15,11 @@
#define MCLK 12000000
-class mjsister_state : public driver_data_t
+class mjsister_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mjsister_state(machine)); }
-
- mjsister_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mjsister_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram0, *videoram1;
diff --git a/src/mame/drivers/mlanding.c b/src/mame/drivers/mlanding.c
index 47abc2ef55a..121e8540e1f 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_CONFIG_START( mlanding, driver_data_t )
+static MACHINE_CONFIG_START( mlanding, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000 ) /* 12 MHz ??? (guess) */
diff --git a/src/mame/drivers/model1.c b/src/mame/drivers/model1.c
index 9a678cee0d4..4eb64158a6d 100644
--- a/src/mame/drivers/model1.c
+++ b/src/mame/drivers/model1.c
@@ -1496,7 +1496,7 @@ ROM_START( wingwarj )
ROM_END
-static MACHINE_CONFIG_START( model1, driver_data_t )
+static MACHINE_CONFIG_START( model1, driver_device )
MDRV_CPU_ADD("maincpu", V60, 16000000)
MDRV_CPU_PROGRAM_MAP(model1_mem)
MDRV_CPU_IO_MAP(model1_io)
@@ -1536,7 +1536,7 @@ static MACHINE_CONFIG_START( model1, driver_data_t )
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( model1_vr, driver_data_t )
+static MACHINE_CONFIG_START( model1_vr, driver_device )
MDRV_CPU_ADD("maincpu", V60, 16000000)
MDRV_CPU_PROGRAM_MAP(model1_vr_mem)
MDRV_CPU_IO_MAP(model1_vr_io)
diff --git a/src/mame/drivers/model2.c b/src/mame/drivers/model2.c
index 77df6450da7..c502241e92f 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_CONFIG_START( model2o, driver_data_t )
+static MACHINE_CONFIG_START( model2o, driver_device )
MDRV_CPU_ADD("maincpu", I960, 25000000)
MDRV_CPU_PROGRAM_MAP(model2o_mem)
MDRV_CPU_VBLANK_INT_HACK(model2_interrupt,2)
@@ -2065,7 +2065,7 @@ static MACHINE_CONFIG_START( model2o, driver_data_t )
MACHINE_CONFIG_END
/* 2A-CRX */
-static MACHINE_CONFIG_START( model2a, driver_data_t )
+static MACHINE_CONFIG_START( model2a, driver_device )
MDRV_CPU_ADD("maincpu", I960, 25000000)
MDRV_CPU_PROGRAM_MAP(model2a_crx_mem)
MDRV_CPU_VBLANK_INT_HACK(model2_interrupt,2)
@@ -2160,7 +2160,7 @@ static const sharc_config sharc_cfg =
};
/* 2B-CRX */
-static MACHINE_CONFIG_START( model2b, driver_data_t )
+static MACHINE_CONFIG_START( model2b, driver_device )
MDRV_CPU_ADD("maincpu", I960, 25000000)
MDRV_CPU_PROGRAM_MAP(model2b_crx_mem)
MDRV_CPU_VBLANK_INT_HACK(model2_interrupt,2)
@@ -2215,7 +2215,7 @@ static MACHINE_CONFIG_START( model2b, driver_data_t )
MACHINE_CONFIG_END
/* 2C-CRX */
-static MACHINE_CONFIG_START( model2c, driver_data_t )
+static MACHINE_CONFIG_START( model2c, driver_device )
MDRV_CPU_ADD("maincpu", I960, 25000000)
MDRV_CPU_PROGRAM_MAP(model2c_crx_mem)
MDRV_CPU_VBLANK_INT_HACK(model2c_interrupt,3)
diff --git a/src/mame/drivers/model3.c b/src/mame/drivers/model3.c
index d0d6ecf907c..b5ba4b712b9 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_CONFIG_START( model3_10, driver_data_t )
+static MACHINE_CONFIG_START( model3_10, driver_device )
MDRV_CPU_ADD("maincpu", PPC603E, 66000000)
MDRV_CPU_CONFIG(model3_10)
MDRV_CPU_PROGRAM_MAP(model3_mem)
@@ -5034,7 +5034,7 @@ static MACHINE_CONFIG_START( model3_10, driver_data_t )
MDRV_SOUND_ROUTE(0, "rspeaker", 2.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( model3_15, driver_data_t )
+static MACHINE_CONFIG_START( model3_15, driver_device )
MDRV_CPU_ADD("maincpu", PPC603E, 100000000)
MDRV_CPU_CONFIG(model3_15)
MDRV_CPU_PROGRAM_MAP(model3_mem)
@@ -5074,7 +5074,7 @@ static MACHINE_CONFIG_START( model3_15, driver_data_t )
MDRV_SOUND_ROUTE(0, "rspeaker", 2.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( model3_20, driver_data_t )
+static MACHINE_CONFIG_START( model3_20, driver_device )
MDRV_CPU_ADD("maincpu", PPC603R, 166000000)
MDRV_CPU_CONFIG(model3_2x)
MDRV_CPU_PROGRAM_MAP(model3_mem)
@@ -5114,7 +5114,7 @@ static MACHINE_CONFIG_START( model3_20, driver_data_t )
MDRV_SOUND_ROUTE(0, "rspeaker", 2.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( model3_21, driver_data_t )
+static MACHINE_CONFIG_START( model3_21, driver_device )
MDRV_CPU_ADD("maincpu", PPC603R, 166000000)
MDRV_CPU_CONFIG(model3_2x)
MDRV_CPU_PROGRAM_MAP(model3_mem)
diff --git a/src/mame/drivers/mogura.c b/src/mame/drivers/mogura.c
index a132450d608..111694ad7b3 100644
--- a/src/mame/drivers/mogura.c
+++ b/src/mame/drivers/mogura.c
@@ -5,13 +5,11 @@
#include "sound/dac.h"
#include "includes/konamipt.h"
-class mogura_state : public driver_data_t
+class mogura_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mogura_state(machine)); }
-
- mogura_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mogura_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * tileram;
diff --git a/src/mame/drivers/mole.c b/src/mame/drivers/mole.c
index 78dece0dc36..3b943e47641 100644
--- a/src/mame/drivers/mole.c
+++ b/src/mame/drivers/mole.c
@@ -53,13 +53,11 @@
#include "sound/ay8910.h"
-class mole_state : public driver_data_t
+class mole_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mole_state(machine)); }
-
- mole_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mole_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * tileram;
diff --git a/src/mame/drivers/monzagp.c b/src/mame/drivers/monzagp.c
index 5a72bc4c563..30fa202e33e 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_CONFIG_START( monzagp, driver_data_t )
+static MACHINE_CONFIG_START( monzagp, driver_device )
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)
diff --git a/src/mame/drivers/mpoker.c b/src/mame/drivers/mpoker.c
index f758472d9fd..86cecbabb68 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_CONFIG_START( mpoker, driver_data_t )
+static MACHINE_CONFIG_START( mpoker, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,MASTER_CLOCK/6) /* 3 MHz? */
MDRV_CPU_PROGRAM_MAP(main_map)
diff --git a/src/mame/drivers/mpu4.c b/src/mame/drivers/mpu4.c
index 6dbb6fc01d7..905e91163d1 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_CONFIG_START( mpu4mod2, driver_data_t )
+static MACHINE_CONFIG_START( mpu4mod2, driver_device )
MDRV_MACHINE_START(mpu4mod2)
MDRV_MACHINE_RESET(mpu4)
diff --git a/src/mame/drivers/mpu4drvr.c b/src/mame/drivers/mpu4drvr.c
index f7ba50e749e..077e4a1f618 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_CONFIG_START( mpu4_vid, driver_data_t )
+static MACHINE_CONFIG_START( mpu4_vid, driver_device )
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))
@@ -2298,7 +2298,7 @@ MACHINE_CONFIG_END
/* machine driver for Zenitone Deal 'Em board */
-static MACHINE_CONFIG_START( dealem, driver_data_t )
+static MACHINE_CONFIG_START( dealem, driver_device )
MDRV_MACHINE_START(mpu4mod2) /* main mpu4 board initialisation */
MDRV_MACHINE_RESET(mpu4_vid)
MDRV_CPU_ADD("maincpu", M6809, MPU4_MASTER_CLOCK/4)
diff --git a/src/mame/drivers/mpu5.c b/src/mame/drivers/mpu5.c
index 96ba31e6eca..bf246fe6d42 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_CONFIG_START( mpu5, driver_data_t )
+static MACHINE_CONFIG_START( mpu5, driver_device )
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) // ?
MDRV_CPU_PROGRAM_MAP(mpu5_map)
diff --git a/src/mame/drivers/mquake.c b/src/mame/drivers/mquake.c
index 74c7492579c..0a63b590513 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_CONFIG_START( mquake, driver_data_t )
+static MACHINE_CONFIG_START( mquake, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, AMIGA_68000_NTSC_CLOCK)
diff --git a/src/mame/drivers/ms32.c b/src/mame/drivers/ms32.c
index 4f23f3ad261..446fc149b48 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_CONFIG_START( ms32, driver_data_t )
+static MACHINE_CONFIG_START( ms32, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V70, 20000000) // 20MHz
diff --git a/src/mame/drivers/multfish.c b/src/mame/drivers/multfish.c
index d3c4ca153ff..2d7c57bd0fc 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_CONFIG_START( multfish, driver_data_t )
+static MACHINE_CONFIG_START( multfish, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,6000000) /* 6 MHz? */
MDRV_CPU_PROGRAM_MAP(multfish_map)
diff --git a/src/mame/drivers/multigam.c b/src/mame/drivers/multigam.c
index 98c51f217bc..fdf3bab3f7c 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_CONFIG_START( multigam, driver_data_t )
+static MACHINE_CONFIG_START( multigam, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", N2A03, N2A03_DEFAULTCLOCK)
MDRV_CPU_PROGRAM_MAP(multigam_map)
diff --git a/src/mame/drivers/murogem.c b/src/mame/drivers/murogem.c
index d2fb74d6a7c..73dc4bc9254 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_CONFIG_START( murogem, driver_data_t )
+static MACHINE_CONFIG_START( murogem, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6802,8000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(murogem_map)
diff --git a/src/mame/drivers/murogmbl.c b/src/mame/drivers/murogmbl.c
index 29ee0effc77..5c106721639 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_CONFIG_START( murogmbl, driver_data_t )
+static MACHINE_CONFIG_START( murogmbl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 1000000) /* Z80? */
MDRV_CPU_PROGRAM_MAP(murogmbl_map)
diff --git a/src/mame/drivers/mustache.c b/src/mame/drivers/mustache.c
index 071a69d7aaf..bdd6e2d48c6 100644
--- a/src/mame/drivers/mustache.c
+++ b/src/mame/drivers/mustache.c
@@ -195,7 +195,7 @@ static INTERRUPT_GEN( assert_irq )
*/
}
-static MACHINE_CONFIG_START( mustache, driver_data_t )
+static MACHINE_CONFIG_START( mustache, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK)
diff --git a/src/mame/drivers/mwarr.c b/src/mame/drivers/mwarr.c
index 7ef53232b4f..d5ab3749273 100644
--- a/src/mame/drivers/mwarr.c
+++ b/src/mame/drivers/mwarr.c
@@ -46,13 +46,11 @@ Notes:
#define SOUND_CLOCK XTAL_45MHz
-class mwarr_state : public driver_data_t
+class mwarr_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mwarr_state(machine)); }
-
- mwarr_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mwarr_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 *bg_videoram, *mlow_videoram, *mhigh_videoram, *tx_videoram, *sprites_buffer;
diff --git a/src/mame/drivers/mystwarr.c b/src/mame/drivers/mystwarr.c
index 365240149a8..9d6f6d54378 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_CONFIG_START( mystwarr, driver_data_t )
+static MACHINE_CONFIG_START( mystwarr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz (confirmed) */
diff --git a/src/mame/drivers/namcofl.c b/src/mame/drivers/namcofl.c
index 3bae9d7c672..8366c80b206 100644
--- a/src/mame/drivers/namcofl.c
+++ b/src/mame/drivers/namcofl.c
@@ -590,7 +590,7 @@ static MACHINE_RESET( namcofl )
}
-static MACHINE_CONFIG_START( namcofl, driver_data_t )
+static MACHINE_CONFIG_START( namcofl, driver_device )
MDRV_CPU_ADD("maincpu", I960, 20000000) // i80960KA-20 == 20 MHz part
MDRV_CPU_PROGRAM_MAP(namcofl_mem)
diff --git a/src/mame/drivers/namcona1.c b/src/mame/drivers/namcona1.c
index 57d8f334d29..16ace557937 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_CONFIG_START( namcona1, driver_data_t )
+static MACHINE_CONFIG_START( namcona1, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 50113000/4)
MDRV_CPU_PROGRAM_MAP(namcona1_main_map)
diff --git a/src/mame/drivers/namconb1.c b/src/mame/drivers/namconb1.c
index 046777f9daa..74605a90ff0 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_CONFIG_START( namconb1, driver_data_t )
+static MACHINE_CONFIG_START( namconb1, driver_device )
MDRV_CPU_ADD("maincpu", M68EC020,MASTER_CLOCK_HZ/2)
MDRV_CPU_PROGRAM_MAP(namconb1_am)
MDRV_CPU_VBLANK_INT("screen", namconb1_interrupt)
@@ -1044,7 +1044,7 @@ static MACHINE_CONFIG_START( namconb1, driver_data_t )
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( namconb2, driver_data_t )
+static MACHINE_CONFIG_START( namconb2, driver_device )
MDRV_CPU_ADD("maincpu", M68EC020,MASTER_CLOCK_HZ/2)
MDRV_CPU_PROGRAM_MAP(namconb2_am)
MDRV_CPU_VBLANK_INT("screen", namconb2_interrupt)
diff --git a/src/mame/drivers/namcond1.c b/src/mame/drivers/namcond1.c
index 8146fdc98a5..f07b8a168fc 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_CONFIG_START( namcond1, driver_data_t )
+static MACHINE_CONFIG_START( namcond1, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12288000)
diff --git a/src/mame/drivers/namcops2.c b/src/mame/drivers/namcops2.c
index cd34239302b..59976573720 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_CONFIG_START( system246, driver_data_t )
+static MACHINE_CONFIG_START( system246, driver_device )
MDRV_CPU_ADD("maincpu", R5000LE, 294000000) // actually R5900 @ 294 MHz
MDRV_CPU_PROGRAM_MAP(ps2_map)
MDRV_CPU_CONFIG(r5000_config)
diff --git a/src/mame/drivers/namcos1.c b/src/mame/drivers/namcos1.c
index a26f7edcc96..4e6f3269700 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_CONFIG_START( ns1, driver_data_t )
+static MACHINE_CONFIG_START( ns1, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809,49152000/32)
diff --git a/src/mame/drivers/namcos10.c b/src/mame/drivers/namcos10.c
index e3ee4445173..69ccd09fd22 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_CONFIG_START( namcos10, driver_data_t )
+static MACHINE_CONFIG_START( namcos10, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PSXCPU, XTAL_101_4912MHz )
MDRV_CPU_PROGRAM_MAP( namcos10_map)
diff --git a/src/mame/drivers/namcos11.c b/src/mame/drivers/namcos11.c
index 50cd3116999..48d56f6d88e 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_CONFIG_START( coh100, driver_data_t )
+static MACHINE_CONFIG_START( coh100, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PSXCPU, XTAL_67_7376MHz )
MDRV_CPU_PROGRAM_MAP( namcos11_map)
diff --git a/src/mame/drivers/namcos12.c b/src/mame/drivers/namcos12.c
index 4645aa2c018..b2a49496276 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_CONFIG_START( coh700, driver_data_t )
+static MACHINE_CONFIG_START( coh700, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", CXD8661R, XTAL_100MHz )
MDRV_CPU_PROGRAM_MAP( namcos12_map)
diff --git a/src/mame/drivers/namcos2.c b/src/mame/drivers/namcos2.c
index 6dba8c552d9..4ca6afabaae 100644
--- a/src/mame/drivers/namcos2.c
+++ b/src/mame/drivers/namcos2.c
@@ -1605,7 +1605,7 @@ via software as INT1
/* */
/*************************************************************/
-static MACHINE_CONFIG_START( default, driver_data_t )
+static MACHINE_CONFIG_START( default, driver_device )
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)
@@ -1682,7 +1682,7 @@ static MACHINE_CONFIG_DERIVED( default3, default )
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( gollygho, driver_data_t )
+static MACHINE_CONFIG_START( gollygho, driver_device )
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)
@@ -1732,7 +1732,7 @@ static MACHINE_CONFIG_START( gollygho, driver_data_t )
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( finallap, driver_data_t )
+static MACHINE_CONFIG_START( finallap, driver_device )
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)
@@ -1782,7 +1782,7 @@ static MACHINE_CONFIG_START( finallap, driver_data_t )
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( sgunner, driver_data_t )
+static MACHINE_CONFIG_START( sgunner, driver_device )
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)
@@ -1832,7 +1832,7 @@ static MACHINE_CONFIG_START( sgunner, driver_data_t )
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( luckywld, driver_data_t )
+static MACHINE_CONFIG_START( luckywld, driver_device )
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)
@@ -1882,7 +1882,7 @@ static MACHINE_CONFIG_START( luckywld, driver_data_t )
MDRV_SOUND_ROUTE(1, "rspeaker", 0.80)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( metlhawk, driver_data_t )
+static MACHINE_CONFIG_START( metlhawk, driver_device )
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)
diff --git a/src/mame/drivers/namcos21.c b/src/mame/drivers/namcos21.c
index b9c0658e629..b2383696784 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_CONFIG_START( s21base, driver_data_t )
+static MACHINE_CONFIG_START( s21base, driver_device )
MDRV_CPU_ADD("maincpu", M68000,12288000) /* Master */
MDRV_CPU_PROGRAM_MAP(namcos21_68k_master)
MDRV_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
@@ -1599,7 +1599,7 @@ static MACHINE_CONFIG_DERIVED( poly_c140_typeB, s21base )
MDRV_SOUND_ROUTE(1, "rspeaker", 0.30)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( driveyes, driver_data_t )
+static MACHINE_CONFIG_START( driveyes, driver_device )
MDRV_CPU_ADD("maincpu", M68000,12288000) /* Master */
MDRV_CPU_PROGRAM_MAP(driveyes_68k_master)
MDRV_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
@@ -1654,7 +1654,7 @@ static MACHINE_CONFIG_START( driveyes, driver_data_t )
MDRV_SOUND_ROUTE(1, "rspeaker", 0.30)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( winrun_c140_typeB, driver_data_t )
+static MACHINE_CONFIG_START( winrun_c140_typeB, driver_device )
MDRV_CPU_ADD("maincpu", M68000,12288000) /* Master */
MDRV_CPU_PROGRAM_MAP(am_master_winrun)
MDRV_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank)
diff --git a/src/mame/drivers/namcos22.c b/src/mame/drivers/namcos22.c
index dcad5c8c556..b0ae1a17d2a 100644
--- a/src/mame/drivers/namcos22.c
+++ b/src/mame/drivers/namcos22.c
@@ -2868,7 +2868,7 @@ static INTERRUPT_GEN( mcu_interrupt )
}
}
-static MACHINE_CONFIG_START( namcos22s, driver_data_t )
+static MACHINE_CONFIG_START( namcos22s, driver_device )
MDRV_CPU_ADD("maincpu", M68EC020,SS22_MASTER_CLOCK/2)
MDRV_CPU_PROGRAM_MAP(namcos22s_am)
MDRV_CPU_VBLANK_INT_HACK(namcos22s_interrupt,2)
@@ -3284,7 +3284,7 @@ static MACHINE_RESET(namcos22)
InitDSP(machine, 0);
}
-static MACHINE_CONFIG_START( namcos22, driver_data_t )
+static MACHINE_CONFIG_START( namcos22, driver_device )
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)
diff --git a/src/mame/drivers/namcos23.c b/src/mame/drivers/namcos23.c
index c67bcbe1043..ec011cee143 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_CONFIG_START( gorgon, driver_data_t )
+static MACHINE_CONFIG_START( gorgon, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R4650BE, S23_BUSCLOCK*4)
@@ -2918,7 +2918,7 @@ static MACHINE_CONFIG_START( gorgon, driver_data_t )
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( s23, driver_data_t )
+static MACHINE_CONFIG_START( s23, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R4650BE, S23_BUSCLOCK*4)
MDRV_CPU_CONFIG(r4650_config)
@@ -2964,7 +2964,7 @@ static MACHINE_CONFIG_START( s23, driver_data_t )
MDRV_SOUND_ROUTE(3, "lspeaker", 1.00)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( ss23, driver_data_t )
+static MACHINE_CONFIG_START( ss23, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R4650BE, S23_BUSCLOCK*5)
MDRV_CPU_CONFIG(r4650_config)
diff --git a/src/mame/drivers/namcos86.c b/src/mame/drivers/namcos86.c
index a41255b1d65..6328023f3c5 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_CONFIG_START( hopmappy, driver_data_t )
+static MACHINE_CONFIG_START( hopmappy, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("cpu1", M6809, 49152000/32)
diff --git a/src/mame/drivers/naomi.c b/src/mame/drivers/naomi.c
index 94634608fda..86c0384d204 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_CONFIG_START( naomi_base, driver_data_t )
+static MACHINE_CONFIG_START( naomi_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", SH4, CPU_CLOCK) // SH4!!!
MDRV_CPU_CONFIG(sh4cpu_config)
diff --git a/src/mame/drivers/naughtyb.c b/src/mame/drivers/naughtyb.c
index 616682e0668..d9c695a3161 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_CONFIG_START( naughtyb, driver_data_t )
+static MACHINE_CONFIG_START( naughtyb, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CLOCK_XTAL / 4) /* 12 MHz clock, divided by 4. CPU is a Z80A */
@@ -469,7 +469,7 @@ MACHINE_CONFIG_END
/* Exactly the same but for certain address writes */
-static MACHINE_CONFIG_START( popflame, driver_data_t )
+static MACHINE_CONFIG_START( popflame, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CLOCK_XTAL / 4) /* 12 MHz clock, divided by 4. CPU is a Z80A */
diff --git a/src/mame/drivers/nbmj8688.c b/src/mame/drivers/nbmj8688.c
index 573fa3b4cf8..77bba2aee03 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_CONFIG_START( NBMJDRV_4096, driver_data_t )
+static MACHINE_CONFIG_START( NBMJDRV_4096, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5.00 MHz */
@@ -3038,7 +3038,7 @@ static MACHINE_CONFIG_DERIVED( mbmj_p16bit, NBMJDRV_65536 )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( mbmj_p16bit_LCD, driver_data_t )
+static MACHINE_CONFIG_START( mbmj_p16bit_LCD, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5.00 MHz */
diff --git a/src/mame/drivers/nbmj8891.c b/src/mame/drivers/nbmj8891.c
index d58cd1bb3cc..608516532f7 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_CONFIG_START( gionbana, driver_data_t )
+static MACHINE_CONFIG_START( gionbana, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 20000000/4) /* 5.00 MHz ? */
diff --git a/src/mame/drivers/nbmj8900.c b/src/mame/drivers/nbmj8900.c
index 959c7ba7c24..d5353950203 100644
--- a/src/mame/drivers/nbmj8900.c
+++ b/src/mame/drivers/nbmj8900.c
@@ -328,7 +328,7 @@ INPUT_PORTS_END
-static MACHINE_CONFIG_START( ohpaipee, driver_data_t )
+static MACHINE_CONFIG_START( ohpaipee, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 20000000/4) /* 5.00 MHz ? */
diff --git a/src/mame/drivers/nbmj8991.c b/src/mame/drivers/nbmj8991.c
index 718dd255984..eae0e4328b2 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_CONFIG_START( nbmjdrv1, driver_data_t ) // galkoku
+static MACHINE_CONFIG_START( nbmjdrv1, driver_device ) // galkoku
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 25000000/5) /* 5.00 MHz ? */
@@ -1507,7 +1507,7 @@ static MACHINE_CONFIG_START( nbmjdrv1, driver_data_t ) // galkoku
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( nbmjdrv2, driver_data_t ) // pstadium
+static MACHINE_CONFIG_START( nbmjdrv2, driver_device ) // pstadium
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 6000000/2) /* 3.00 MHz */
diff --git a/src/mame/drivers/nbmj9195.c b/src/mame/drivers/nbmj9195.c
index f69c9fe3b4c..4589de38c8c 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_CONFIG_START( NBMJDRV1, driver_data_t )
+static MACHINE_CONFIG_START( NBMJDRV1, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 12000000/2) /* TMPZ84C011, 6.00 MHz */
diff --git a/src/mame/drivers/neptunp2.c b/src/mame/drivers/neptunp2.c
index fe7cef3c689..0a9267c1e28 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_CONFIG_START( neptunp2, driver_data_t )
+static MACHINE_CONFIG_START( neptunp2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",I80188,20000000) // N80C188-20 AMD
diff --git a/src/mame/drivers/nightgal.c b/src/mame/drivers/nightgal.c
index 1d2a4f37011..e7bd5aa8de4 100644
--- a/src/mame/drivers/nightgal.c
+++ b/src/mame/drivers/nightgal.c
@@ -27,13 +27,11 @@ TODO:
#define MASTER_CLOCK XTAL_19_968MHz
-class nightgal_state : public driver_data_t
+class nightgal_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, nightgal_state(machine)); }
-
- nightgal_state(running_machine &machine)
- : driver_data_t(machine) { }
+ nightgal_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * blit_buffer;
diff --git a/src/mame/drivers/ninjakd2.c b/src/mame/drivers/ninjakd2.c
index 042b5b0e7ff..90519185c5f 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_CONFIG_START( ninjakd2, driver_data_t )
+static MACHINE_CONFIG_START( ninjakd2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CLOCK_12/2) /* verified */
diff --git a/src/mame/drivers/niyanpai.c b/src/mame/drivers/niyanpai.c
index ddab10020a6..4d3cdf0418c 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_CONFIG_START( niyanpai, driver_data_t )
+static MACHINE_CONFIG_START( niyanpai, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12288000/2) /* TMP68301, 6.144 MHz */
diff --git a/src/mame/drivers/nmg5.c b/src/mame/drivers/nmg5.c
index c018191f7ef..e02c1a7ed1f 100644
--- a/src/mame/drivers/nmg5.c
+++ b/src/mame/drivers/nmg5.c
@@ -226,13 +226,11 @@ Stephh's notes (based on the games M68000 code and some tests) :
#include "sound/3812intf.h"
-class nmg5_state : public driver_data_t
+class nmg5_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, nmg5_state(machine)); }
-
- nmg5_state(running_machine &machine)
- : driver_data_t(machine) { }
+ nmg5_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * fg_videoram;
diff --git a/src/mame/drivers/nmk16.c b/src/mame/drivers/nmk16.c
index 61d95c4bd1b..a4f03187b33 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_CONFIG_START( tharrier, driver_data_t )
+static MACHINE_CONFIG_START( tharrier, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz */
@@ -3574,7 +3574,7 @@ static MACHINE_CONFIG_START( tharrier, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( manybloc, driver_data_t )
+static MACHINE_CONFIG_START( manybloc, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10? MHz - check */
@@ -3618,7 +3618,7 @@ static MACHINE_CONFIG_START( manybloc, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( mustang, driver_data_t )
+static MACHINE_CONFIG_START( mustang, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ? */
@@ -3661,7 +3661,7 @@ static MACHINE_CONFIG_START( mustang, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( mustangb, driver_data_t )
+static MACHINE_CONFIG_START( mustangb, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ? */
@@ -3696,7 +3696,7 @@ MACHINE_CONFIG_END
#define BIOSHIP_CRYSTAL1 10000000
#define BIOSHIP_CRYSTAL2 12000000
-static MACHINE_CONFIG_START( bioship, driver_data_t )
+static MACHINE_CONFIG_START( bioship, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, BIOSHIP_CRYSTAL1 ) /* 10.0 MHz (verified) */
@@ -3738,7 +3738,7 @@ static MACHINE_CONFIG_START( bioship, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( vandyke, driver_data_t )
+static MACHINE_CONFIG_START( vandyke, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz) /* 68000p12 running at 10Mhz, verified on pcb */
@@ -3780,7 +3780,7 @@ static MACHINE_CONFIG_START( vandyke, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( vandykeb, driver_data_t )
+static MACHINE_CONFIG_START( vandykeb, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ? */
@@ -3815,7 +3815,7 @@ static MACHINE_CONFIG_START( vandykeb, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( acrobatm, driver_data_t )
+static MACHINE_CONFIG_START( acrobatm, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz (verified on pcb) */
@@ -3858,7 +3858,7 @@ static MACHINE_CONFIG_START( acrobatm, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( tdragonb, driver_data_t ) /* bootleg using Raiden sound hardware */
+static MACHINE_CONFIG_START( tdragonb, driver_device ) /* bootleg using Raiden sound hardware */
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
@@ -3890,7 +3890,7 @@ static MACHINE_CONFIG_START( tdragonb, driver_data_t ) /* bootleg using Raiden s
SEIBU_SOUND_SYSTEM_YM3812_INTERFACE(14318180/4, 1320000)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( tdragon, driver_data_t )
+static MACHINE_CONFIG_START( tdragon, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_8MHz) /* verified on pcb */
@@ -3934,7 +3934,7 @@ static MACHINE_CONFIG_START( tdragon, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( ssmissin, driver_data_t )
+static MACHINE_CONFIG_START( ssmissin, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 Mhz */
@@ -3969,7 +3969,7 @@ static MACHINE_CONFIG_START( ssmissin, driver_data_t )
MDRV_NMK112_ADD("nmk112", nmk16_nmk112_intf)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( strahl, driver_data_t )
+static MACHINE_CONFIG_START( strahl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz ? */
@@ -4011,7 +4011,7 @@ static MACHINE_CONFIG_START( strahl, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( hachamf, driver_data_t )
+static MACHINE_CONFIG_START( hachamf, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ? */
@@ -4054,7 +4054,7 @@ static MACHINE_CONFIG_START( hachamf, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( macross, driver_data_t )
+static MACHINE_CONFIG_START( macross, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ? */
@@ -4096,7 +4096,7 @@ static MACHINE_CONFIG_START( macross, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( blkheart, driver_data_t )
+static MACHINE_CONFIG_START( blkheart, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_8MHz) /* verified on pcb */
@@ -4138,7 +4138,7 @@ static MACHINE_CONFIG_START( blkheart, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( gunnail, driver_data_t )
+static MACHINE_CONFIG_START( gunnail, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12 MHz? */
@@ -4180,7 +4180,7 @@ static MACHINE_CONFIG_START( gunnail, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( macross2, driver_data_t )
+static MACHINE_CONFIG_START( macross2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz ? */
@@ -4223,7 +4223,7 @@ static MACHINE_CONFIG_START( macross2, driver_data_t )
MDRV_NMK112_ADD("nmk112", nmk16_nmk112_intf)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( tdragon2, driver_data_t )
+static MACHINE_CONFIG_START( tdragon2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz */
@@ -4266,7 +4266,7 @@ static MACHINE_CONFIG_START( tdragon2, driver_data_t )
MDRV_NMK112_ADD("nmk112", nmk16_nmk112_intf)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( raphero, driver_data_t )
+static MACHINE_CONFIG_START( raphero, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 14000000) /* 14 MHz measured */
@@ -4308,7 +4308,7 @@ static MACHINE_CONFIG_START( raphero, driver_data_t )
MDRV_NMK112_ADD("nmk112", nmk16_nmk112_intf)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( bjtwin, driver_data_t )
+static MACHINE_CONFIG_START( bjtwin, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* verified on pcb */
@@ -4814,7 +4814,7 @@ static const ym2151_interface afega_ym2151_intf =
};
-static MACHINE_CONFIG_START( stagger1, driver_data_t )
+static MACHINE_CONFIG_START( stagger1, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,XTAL_12MHz) /* 68000p10 running at 12mhz, verified on pcb */
@@ -4895,7 +4895,7 @@ static MACHINE_CONFIG_DERIVED( popspops, grdnstrm )
MDRV_VIDEO_UPDATE(bubl2000)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( firehawk, driver_data_t )
+static MACHINE_CONFIG_START( firehawk, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000)
@@ -4930,7 +4930,7 @@ static MACHINE_CONFIG_START( firehawk, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( twinactn, driver_data_t )
+static MACHINE_CONFIG_START( twinactn, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000)
diff --git a/src/mame/drivers/norautp.c b/src/mame/drivers/norautp.c
index 6e0f6c94578..2082e603c30 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_CONFIG_START( noraut_base, driver_data_t )
+static MACHINE_CONFIG_START( noraut_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, NORAUT_CPU_CLOCK)
diff --git a/src/mame/drivers/nova2001.c b/src/mame/drivers/nova2001.c
index 684d97f5d00..6a6f97763c5 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_CONFIG_START( nova2001, driver_data_t )
+static MACHINE_CONFIG_START( nova2001, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CLOCK/4) // 3 MHz verified on schematics
@@ -713,7 +713,7 @@ static MACHINE_CONFIG_START( nova2001, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( ninjakun, driver_data_t )
+static MACHINE_CONFIG_START( ninjakun, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CLOCK/4) // 3 MHz
@@ -754,7 +754,7 @@ static MACHINE_CONFIG_START( ninjakun, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( pkunwar, driver_data_t )
+static MACHINE_CONFIG_START( pkunwar, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CLOCK/4) // 3 MHz
@@ -788,7 +788,7 @@ static MACHINE_CONFIG_START( pkunwar, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( raiders5, driver_data_t )
+static MACHINE_CONFIG_START( raiders5, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MAIN_CLOCK/4) // 3 MHz
diff --git a/src/mame/drivers/nwk-tr.c b/src/mame/drivers/nwk-tr.c
index da9b0aa9a44..4a039b5af1e 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_CONFIG_START( nwktr, driver_data_t )
+static MACHINE_CONFIG_START( nwktr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000/2) /* PowerPC 403GA 32MHz */
diff --git a/src/mame/drivers/nyny.c b/src/mame/drivers/nyny.c
index abfaa1119ad..de41bfe15f8 100644
--- a/src/mame/drivers/nyny.c
+++ b/src/mame/drivers/nyny.c
@@ -81,13 +81,11 @@
#define AUDIO_CPU_2_CLOCK AUDIO_2_MASTER_CLOCK
-class nyny_state : public driver_data_t
+class nyny_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, nyny_state(machine)); }
-
- nyny_state(running_machine &machine)
- : driver_data_t(machine) { }
+ nyny_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram1;
diff --git a/src/mame/drivers/olibochu.c b/src/mame/drivers/olibochu.c
index eecf333bac8..417d087c7df 100644
--- a/src/mame/drivers/olibochu.c
+++ b/src/mame/drivers/olibochu.c
@@ -56,13 +56,11 @@ $7004 writes, related to $7000 reads
#include "deprecat.h"
#include "sound/ay8910.h"
-class olibochu_state : public driver_data_t
+class olibochu_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, olibochu_state(machine)); }
-
- olibochu_state(running_machine &machine)
- : driver_data_t(machine) { }
+ olibochu_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/omegrace.c b/src/mame/drivers/omegrace.c
index 450f847cd56..bd8029642e3 100644
--- a/src/mame/drivers/omegrace.c
+++ b/src/mame/drivers/omegrace.c
@@ -466,7 +466,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( omegrace, driver_data_t )
+static MACHINE_CONFIG_START( omegrace, driver_device )
/* basic machine hardware */
diff --git a/src/mame/drivers/onetwo.c b/src/mame/drivers/onetwo.c
index e88e13426ed..5ae46ec094a 100644
--- a/src/mame/drivers/onetwo.c
+++ b/src/mame/drivers/onetwo.c
@@ -46,13 +46,11 @@ Note: this is quite clearly a 'Korean bootleg' of Shisensho - Joshiryo-Hen / Mat
#define MASTER_CLOCK XTAL_4MHz
-class onetwo_state : public driver_data_t
+class onetwo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, onetwo_state(machine)); }
-
- onetwo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ onetwo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * fgram;
diff --git a/src/mame/drivers/othello.c b/src/mame/drivers/othello.c
index d5b93c985b9..f2691b777dc 100644
--- a/src/mame/drivers/othello.c
+++ b/src/mame/drivers/othello.c
@@ -47,13 +47,11 @@ Limit for help/undo (matta):
#define TILE_WIDTH 6
-class othello_state : public driver_data_t
+class othello_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, othello_state(machine)); }
-
- othello_state(running_machine &machine)
- : driver_data_t(machine) { }
+ othello_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/pachifev.c b/src/mame/drivers/pachifev.c
index 7d231ac1d47..1c0f6d96d3d 100644
--- a/src/mame/drivers/pachifev.c
+++ b/src/mame/drivers/pachifev.c
@@ -86,13 +86,11 @@ Stephh's notes (based on the game TMS9995 code and some tests) :
#define USE_MSM 0
#define NUM_PLUNGER_REPEATS 50
-class pachifev_state : public driver_data_t
+class pachifev_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, pachifev_state(machine)); }
-
- pachifev_state(running_machine &machine)
- : driver_data_t(machine) { }
+ pachifev_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* controls related */
diff --git a/src/mame/drivers/pacland.c b/src/mame/drivers/pacland.c
index d0ce3181dd7..ac979e7eaeb 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_CONFIG_START( pacland, driver_data_t )
+static MACHINE_CONFIG_START( pacland, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 49152000/32) /* 1.536 MHz */
diff --git a/src/mame/drivers/pacman.c b/src/mame/drivers/pacman.c
index fa45da890d4..45f29d4f4bb 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_CONFIG_START( pacman, driver_data_t )
+static MACHINE_CONFIG_START( pacman, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6)
diff --git a/src/mame/drivers/pangofun.c b/src/mame/drivers/pangofun.c
index 99fd66f7383..524ea9ebcca 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_CONFIG_START( pangofun, driver_data_t )
+static MACHINE_CONFIG_START( pangofun, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I486, 14318180*2) /* I486 ?? Mhz */
MDRV_CPU_PROGRAM_MAP(pangofun_map)
diff --git a/src/mame/drivers/panicr.c b/src/mame/drivers/panicr.c
index e4c9e486f22..02d75c14346 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_CONFIG_START( panicr, driver_data_t )
+static MACHINE_CONFIG_START( panicr, driver_device )
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)
diff --git a/src/mame/drivers/paranoia.c b/src/mame/drivers/paranoia.c
index f7a806aa163..347646f5724 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_CONFIG_START( paranoia, driver_data_t )
+static MACHINE_CONFIG_START( paranoia, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H6280, PCE_MAIN_CLOCK/3)
MDRV_CPU_PROGRAM_MAP(pce_mem)
diff --git a/src/mame/drivers/pasha2.c b/src/mame/drivers/pasha2.c
index 73abbeb035c..eeae1e64860 100644
--- a/src/mame/drivers/pasha2.c
+++ b/src/mame/drivers/pasha2.c
@@ -76,13 +76,11 @@ Notes:
#include "machine/eeprom.h"
#include "sound/okim6295.h"
-class pasha2_state : public driver_data_t
+class pasha2_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, pasha2_state(machine)); }
-
- pasha2_state(running_machine &machine)
- : driver_data_t(machine) { }
+ pasha2_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bitmap0;
diff --git a/src/mame/drivers/pastelg.c b/src/mame/drivers/pastelg.c
index c77adb62e78..20356dedd89 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_CONFIG_START( pastelg, driver_data_t )
+static MACHINE_CONFIG_START( pastelg, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 19968000/8) /* 2.496 MHz ? */
@@ -461,7 +461,7 @@ Note
*/
-static MACHINE_CONFIG_START( threeds, driver_data_t )
+static MACHINE_CONFIG_START( threeds, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 19968000/8) /* 2.496 MHz ? */
diff --git a/src/mame/drivers/pcat_dyn.c b/src/mame/drivers/pcat_dyn.c
index b5f39512cd2..edf61d9cfb3 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_CONFIG_START( pcat_dyn, driver_data_t )
+static MACHINE_CONFIG_START( pcat_dyn, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I486, 40000000) /* Am486 DX-40 */
MDRV_CPU_PROGRAM_MAP(pcat_map)
diff --git a/src/mame/drivers/pcat_nit.c b/src/mame/drivers/pcat_nit.c
index 551b8ef12d8..461bd786ed9 100644
--- a/src/mame/drivers/pcat_nit.c
+++ b/src/mame/drivers/pcat_nit.c
@@ -224,7 +224,7 @@ static MACHINE_START( streetg2 )
microtouch_init(machine, pcat_nit_microtouch_tx_callback, NULL);
}
-static MACHINE_CONFIG_START( pcat_nit, driver_data_t )
+static MACHINE_CONFIG_START( pcat_nit, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I386, 14318180*2) /* I386 ?? Mhz */
MDRV_CPU_PROGRAM_MAP(pcat_map)
diff --git a/src/mame/drivers/pcktgal.c b/src/mame/drivers/pcktgal.c
index dc748a4c18d..8f2f21691a4 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_CONFIG_START( pcktgal, driver_data_t )
+static MACHINE_CONFIG_START( pcktgal, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 2000000)
diff --git a/src/mame/drivers/pcxt.c b/src/mame/drivers/pcxt.c
index 51a3273cdc0..deee903e868 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_CONFIG_START( filetto, driver_data_t )
+static MACHINE_CONFIG_START( filetto, driver_device )
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)
@@ -962,7 +962,7 @@ static MACHINE_CONFIG_START( filetto, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.33)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( tetriskr, driver_data_t )
+static MACHINE_CONFIG_START( tetriskr, driver_device )
MDRV_CPU_ADD("maincpu", I8088, 14318180/3)
MDRV_CPU_PROGRAM_MAP(filetto_map)
MDRV_CPU_IO_MAP(tetriskr_io)
diff --git a/src/mame/drivers/pengadvb.c b/src/mame/drivers/pengadvb.c
index 7ddc8b015a4..c2586fe27fb 100644
--- a/src/mame/drivers/pengadvb.c
+++ b/src/mame/drivers/pengadvb.c
@@ -259,7 +259,7 @@ static INTERRUPT_GEN( pengadvb_interrupt )
}
-static MACHINE_CONFIG_START( pengadvb, driver_data_t )
+static MACHINE_CONFIG_START( pengadvb, driver_device )
MDRV_CPU_ADD("maincpu", Z80, XTAL_10_738635MHz/3) /* 3.579545 Mhz */
MDRV_CPU_PROGRAM_MAP(program_mem)
diff --git a/src/mame/drivers/pengo.c b/src/mame/drivers/pengo.c
index fc77b39398a..aa638574cbf 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_CONFIG_START( pengo, driver_data_t )
+static MACHINE_CONFIG_START( pengo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6)
diff --git a/src/mame/drivers/peplus.c b/src/mame/drivers/peplus.c
index e60e23c8c32..32d3a394045 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_CONFIG_START( peplus, driver_data_t )
+static MACHINE_CONFIG_START( peplus, driver_device )
// basic machine hardware
MDRV_CPU_ADD("maincpu", I80C32, CPU_CLOCK)
MDRV_CPU_PROGRAM_MAP(peplus_map)
diff --git a/src/mame/drivers/phoenix.c b/src/mame/drivers/phoenix.c
index 86bb57762f6..b2d84124ec2 100644
--- a/src/mame/drivers/phoenix.c
+++ b/src/mame/drivers/phoenix.c
@@ -449,7 +449,7 @@ static MACHINE_RESET( phoenix )
}
-static MACHINE_CONFIG_START( phoenix, driver_data_t )
+static MACHINE_CONFIG_START( phoenix, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8085A, CPU_CLOCK) /* 2.75 MHz */
@@ -520,7 +520,7 @@ static I8085_CONFIG( survival_i8085_config )
DEVCB_NULL /* SOD changed callback (8085A only) */
};
-static MACHINE_CONFIG_START( survival, driver_data_t )
+static MACHINE_CONFIG_START( survival, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8085A, CPU_CLOCK) /* 5.50 MHz */
diff --git a/src/mame/drivers/photon.c b/src/mame/drivers/photon.c
index 2dfb65967b7..e25bda354d9 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_CONFIG_START( photon, driver_data_t )
+static MACHINE_CONFIG_START( photon, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",I8080, 1780000)
diff --git a/src/mame/drivers/photon2.c b/src/mame/drivers/photon2.c
index 400864ba66e..c65a12f8e39 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_CONFIG_START( photon2, driver_data_t )
+static MACHINE_CONFIG_START( photon2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3500000) /* 3.5 MHz */
MDRV_CPU_PROGRAM_MAP(spectrum_mem)
diff --git a/src/mame/drivers/photoply.c b/src/mame/drivers/photoply.c
index d9a4f274f7b..47f376031e2 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_CONFIG_START( photoply, driver_data_t )
+static MACHINE_CONFIG_START( photoply, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I486, 75000000) /* I486DX4, 75 or 100 Mhz */
MDRV_CPU_PROGRAM_MAP(photoply_map)
diff --git a/src/mame/drivers/pingpong.c b/src/mame/drivers/pingpong.c
index 31d142a73e4..5a14de574f7 100644
--- a/src/mame/drivers/pingpong.c
+++ b/src/mame/drivers/pingpong.c
@@ -457,7 +457,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( pingpong, driver_data_t )
+static MACHINE_CONFIG_START( pingpong, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,18432000/6) /* 3.072 MHz (probably) */
diff --git a/src/mame/drivers/pinkiri8.c b/src/mame/drivers/pinkiri8.c
index bda0f74af7f..4bfd9d59cbd 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_CONFIG_START( pinkiri8, driver_data_t )
+static MACHINE_CONFIG_START( pinkiri8, driver_device )
MDRV_CPU_ADD("maincpu",Z180,16000000)
MDRV_CPU_PROGRAM_MAP(pinkiri8_map)
MDRV_CPU_IO_MAP(pinkiri8_io)
diff --git a/src/mame/drivers/pipeline.c b/src/mame/drivers/pipeline.c
index 300cd5042b8..7fafd785dfc 100644
--- a/src/mame/drivers/pipeline.c
+++ b/src/mame/drivers/pipeline.c
@@ -358,7 +358,7 @@ static PALETTE_INIT(pipeline)
}
}
-static MACHINE_CONFIG_START( pipeline, driver_data_t )
+static MACHINE_CONFIG_START( pipeline, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 7372800/2)
diff --git a/src/mame/drivers/pirates.c b/src/mame/drivers/pirates.c
index f6a53a00bc0..5c97f009c51 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_CONFIG_START( pirates, driver_data_t )
+static MACHINE_CONFIG_START( pirates, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16mhz */
MDRV_CPU_PROGRAM_MAP(pirates_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
diff --git a/src/mame/drivers/pitnrun.c b/src/mame/drivers/pitnrun.c
index b9b5fa34b93..1b630e152fe 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_CONFIG_START( pitnrun, driver_data_t )
+static MACHINE_CONFIG_START( pitnrun, driver_device )
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)
diff --git a/src/mame/drivers/pkscram.c b/src/mame/drivers/pkscram.c
index e35b6585a17..d0ff94b53d0 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_CONFIG_START( pkscramble, driver_data_t )
+static MACHINE_CONFIG_START( pkscramble, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000 )
MDRV_CPU_PROGRAM_MAP(pkscramble_map)
diff --git a/src/mame/drivers/playch10.c b/src/mame/drivers/playch10.c
index e07c1676c03..08d17385c3b 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_CONFIG_START( playch10, driver_data_t )
+static MACHINE_CONFIG_START( playch10, driver_device )
// basic machine hardware
MDRV_CPU_ADD("maincpu", Z80, 8000000/2) // 4 MHz
MDRV_CPU_PROGRAM_MAP(bios_map)
diff --git a/src/mame/drivers/pntnpuzl.c b/src/mame/drivers/pntnpuzl.c
index ca89ac552d6..c4c8071369c 100644
--- a/src/mame/drivers/pntnpuzl.c
+++ b/src/mame/drivers/pntnpuzl.c
@@ -436,7 +436,7 @@ INPUT_PORTS_END
-static MACHINE_CONFIG_START( pntnpuzl, driver_data_t )
+static MACHINE_CONFIG_START( pntnpuzl, driver_device )
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
diff --git a/src/mame/drivers/pokechmp.c b/src/mame/drivers/pokechmp.c
index 97e513ac22b..6510dc94436 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_CONFIG_START( pokechmp, driver_data_t )
+static MACHINE_CONFIG_START( pokechmp, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 4000000)
diff --git a/src/mame/drivers/poker72.c b/src/mame/drivers/poker72.c
index 5e36e804759..5b790046bc9 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_CONFIG_START( poker72, driver_data_t )
+static MACHINE_CONFIG_START( poker72, driver_device )
/* basic machine hardware */
diff --git a/src/mame/drivers/polepos.c b/src/mame/drivers/polepos.c
index fdbed8d036e..2c8720872e1 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_CONFIG_START( polepos, driver_data_t )
+static MACHINE_CONFIG_START( polepos, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/8) /* 3.072 MHz */
@@ -949,7 +949,7 @@ static const namco_51xx_interface namco_51xx_bl_intf =
};
-static MACHINE_CONFIG_START( topracern, driver_data_t )
+static MACHINE_CONFIG_START( topracern, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/8) /* 3.072 MHz */
diff --git a/src/mame/drivers/policetr.c b/src/mame/drivers/policetr.c
index 0c5d9e178e9..936450b6911 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_CONFIG_START( policetr, driver_data_t )
+static MACHINE_CONFIG_START( policetr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R3000BE, MASTER_CLOCK/2)
diff --git a/src/mame/drivers/polyplay.c b/src/mame/drivers/polyplay.c
index d151ea40135..425140d49d8 100644
--- a/src/mame/drivers/polyplay.c
+++ b/src/mame/drivers/polyplay.c
@@ -276,7 +276,7 @@ GFXDECODE_END
/* the machine driver */
-static MACHINE_CONFIG_START( polyplay, driver_data_t )
+static MACHINE_CONFIG_START( polyplay, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 9830400/4)
diff --git a/src/mame/drivers/poo.c b/src/mame/drivers/poo.c
index 42cbefb24d5..dcf684fdd3e 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_CONFIG_START( unclepoo, driver_data_t )
+static MACHINE_CONFIG_START( unclepoo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,18000000/6) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(unclepoo_main_map)
diff --git a/src/mame/drivers/poolshrk.c b/src/mame/drivers/poolshrk.c
index 976d1563917..81687be1502 100644
--- a/src/mame/drivers/poolshrk.c
+++ b/src/mame/drivers/poolshrk.c
@@ -212,7 +212,7 @@ static PALETTE_INIT( poolshrk )
}
-static MACHINE_CONFIG_START( poolshrk, driver_data_t )
+static MACHINE_CONFIG_START( poolshrk, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, 11055000 / 8) /* ? */
diff --git a/src/mame/drivers/popeye.c b/src/mame/drivers/popeye.c
index fd0e2ea167f..99ab44829f8 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_CONFIG_START( skyskipr, driver_data_t )
+static MACHINE_CONFIG_START( skyskipr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_8MHz/2) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(skyskipr_map)
diff --git a/src/mame/drivers/portrait.c b/src/mame/drivers/portrait.c
index c97ac4ca89a..c3f02f8c845 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_CONFIG_START( portrait, driver_data_t )
+static MACHINE_CONFIG_START( portrait, driver_device )
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz ? */
MDRV_CPU_PROGRAM_MAP(portrait_map)
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
diff --git a/src/mame/drivers/powerins.c b/src/mame/drivers/powerins.c
index 7dfda59e359..f136adbf54c 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_CONFIG_START( powerins, driver_data_t )
+static MACHINE_CONFIG_START( powerins, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 12MHz */
diff --git a/src/mame/drivers/ppmast93.c b/src/mame/drivers/ppmast93.c
index 51fcdbb1ae8..8aa725fbf46 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_CONFIG_START( ppmast93, driver_data_t )
+static MACHINE_CONFIG_START( ppmast93, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,5000000) /* 5 MHz */
MDRV_CPU_PROGRAM_MAP(ppmast93_cpu1_map)
diff --git a/src/mame/drivers/progolf.c b/src/mame/drivers/progolf.c
index d32c8fddb4e..2dbd5385e88 100644
--- a/src/mame/drivers/progolf.c
+++ b/src/mame/drivers/progolf.c
@@ -425,7 +425,7 @@ static PALETTE_INIT( progolf )
}
}
-static MACHINE_CONFIG_START( progolf, driver_data_t )
+static MACHINE_CONFIG_START( progolf, driver_device )
/* 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)
diff --git a/src/mame/drivers/psattack.c b/src/mame/drivers/psattack.c
index a19605415cf..b26c1f88445 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_CONFIG_START( psattack, driver_data_t )
+static MACHINE_CONFIG_START( psattack, driver_device )
MDRV_CPU_ADD("maincpu", SE3208, 43000000)
MDRV_CPU_PROGRAM_MAP(psattack_mem)
MDRV_CPU_VBLANK_INT("screen", psattack_interrupt)
diff --git a/src/mame/drivers/psychic5.c b/src/mame/drivers/psychic5.c
index 7567f04fc1c..ad0eab2092d 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_CONFIG_START( psychic5, driver_data_t )
+static MACHINE_CONFIG_START( psychic5, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2)
@@ -724,7 +724,7 @@ static MACHINE_CONFIG_START( psychic5, driver_data_t )
MDRV_SOUND_ROUTE(3, "mono", 0.50)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( bombsa, driver_data_t )
+static MACHINE_CONFIG_START( bombsa, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2 ) /* 6 MHz */
diff --git a/src/mame/drivers/pturn.c b/src/mame/drivers/pturn.c
index 3b67e86b23d..e67a19c18b1 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_CONFIG_START( pturn, driver_data_t )
+static MACHINE_CONFIG_START( pturn, driver_device )
MDRV_CPU_ADD("maincpu", Z80, 12000000/3)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", pturn_main_intgen)
diff --git a/src/mame/drivers/punchout.c b/src/mame/drivers/punchout.c
index 5b2e67e2425..9c0da8b8485 100644
--- a/src/mame/drivers/punchout.c
+++ b/src/mame/drivers/punchout.c
@@ -946,7 +946,7 @@ static MACHINE_RESET( punchout )
}
-static MACHINE_CONFIG_START( punchout, driver_data_t )
+static MACHINE_CONFIG_START( punchout, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000/2) /* 4 MHz */
diff --git a/src/mame/drivers/pzletime.c b/src/mame/drivers/pzletime.c
index ca850a50b4b..8436a7cb2cc 100644
--- a/src/mame/drivers/pzletime.c
+++ b/src/mame/drivers/pzletime.c
@@ -19,13 +19,11 @@
#include "sound/okim6295.h"
#include "machine/eeprom.h"
-class pzletime_state : public driver_data_t
+class pzletime_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, pzletime_state(machine)); }
-
- pzletime_state(running_machine &machine)
- : driver_data_t(machine) { }
+ pzletime_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bg_videoram;
diff --git a/src/mame/drivers/qdrmfgp.c b/src/mame/drivers/qdrmfgp.c
index 0368ae5119a..96a19211142 100644
--- a/src/mame/drivers/qdrmfgp.c
+++ b/src/mame/drivers/qdrmfgp.c
@@ -641,7 +641,7 @@ static MACHINE_RESET( qdrmfgp )
*
*************************************/
-static MACHINE_CONFIG_START( qdrmfgp, driver_data_t )
+static MACHINE_CONFIG_START( qdrmfgp, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 32000000/2) /* 16.000 MHz */
@@ -679,7 +679,7 @@ static MACHINE_CONFIG_START( qdrmfgp, driver_data_t )
MDRV_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( qdrmfgp2, driver_data_t )
+static MACHINE_CONFIG_START( qdrmfgp2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 32000000/2) /* 16.000 MHz */
diff --git a/src/mame/drivers/quakeat.c b/src/mame/drivers/quakeat.c
index 2d331342b79..6388e4c1b5f 100644
--- a/src/mame/drivers/quakeat.c
+++ b/src/mame/drivers/quakeat.c
@@ -147,7 +147,7 @@ static MACHINE_START(quakeat)
}
/*************************************************************/
-static MACHINE_CONFIG_START( quake, driver_data_t )
+static MACHINE_CONFIG_START( quake, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PENTIUM, 233000000) /* Pentium II, 233MHz */
MDRV_CPU_PROGRAM_MAP(quake_map)
diff --git a/src/mame/drivers/quantum.c b/src/mame/drivers/quantum.c
index 6d1574da3b0..e326f86fbb0 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_CONFIG_START( quantum, driver_data_t )
+static MACHINE_CONFIG_START( quantum, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK / 2)
diff --git a/src/mame/drivers/queen.c b/src/mame/drivers/queen.c
index c1717116286..9d5ac3b8921 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_CONFIG_START( queen, driver_data_t )
+static MACHINE_CONFIG_START( queen, driver_device )
MDRV_CPU_ADD("maincpu", PENTIUM, 533000000) // Celeron or Pentium 3, 533 Mhz
MDRV_CPU_PROGRAM_MAP(queen_map)
MDRV_CPU_IO_MAP(queen_io)
diff --git a/src/mame/drivers/quizdna.c b/src/mame/drivers/quizdna.c
index 01ea14e4707..4370680ccba 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_CONFIG_START( quizdna, driver_data_t )
+static MACHINE_CONFIG_START( quizdna, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MCLK/2) /* 8.000 MHz */
diff --git a/src/mame/drivers/quizo.c b/src/mame/drivers/quizo.c
index ad7c23b4dae..8ecba83d494 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_CONFIG_START( quizo, driver_data_t )
+static MACHINE_CONFIG_START( quizo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,XTAL1/2)
MDRV_CPU_PROGRAM_MAP(memmap)
diff --git a/src/mame/drivers/quizpani.c b/src/mame/drivers/quizpani.c
index e155a288833..081b80cdf21 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_CONFIG_START( quizpani, driver_data_t )
+static MACHINE_CONFIG_START( quizpani, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 10000000)
MDRV_CPU_PROGRAM_MAP(quizpani_map)
MDRV_CPU_VBLANK_INT("screen", irq4_line_hold)
diff --git a/src/mame/drivers/quizpun2.c b/src/mame/drivers/quizpun2.c
index 6ad3115adf8..6b8034af461 100644
--- a/src/mame/drivers/quizpun2.c
+++ b/src/mame/drivers/quizpun2.c
@@ -415,7 +415,7 @@ GFXDECODE_END
Machine Drivers
***************************************************************************/
-static MACHINE_CONFIG_START( quizpun2, driver_data_t )
+static MACHINE_CONFIG_START( quizpun2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_8MHz / 2) // 4 MHz?
MDRV_CPU_PROGRAM_MAP(quizpun2_map)
diff --git a/src/mame/drivers/r2dtank.c b/src/mame/drivers/r2dtank.c
index 5b898c6634b..e17067c7e84 100644
--- a/src/mame/drivers/r2dtank.c
+++ b/src/mame/drivers/r2dtank.c
@@ -515,7 +515,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( r2dtank, driver_data_t )
+static MACHINE_CONFIG_START( r2dtank, driver_device )
MDRV_CPU_ADD("maincpu", M6809,3000000) /* ?? too fast ? */
MDRV_CPU_PROGRAM_MAP(r2dtank_main_map)
diff --git a/src/mame/drivers/rabbit.c b/src/mame/drivers/rabbit.c
index c3bcb70d5ad..b537a5c8911 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_CONFIG_START( rabbit, driver_data_t )
+static MACHINE_CONFIG_START( rabbit, driver_device )
MDRV_CPU_ADD("maincpu",M68EC020,24000000) /* 24 MHz */
MDRV_CPU_PROGRAM_MAP(rabbit_map)
MDRV_CPU_VBLANK_INT_HACK(rabbit_interrupts,262)
diff --git a/src/mame/drivers/raiden.c b/src/mame/drivers/raiden.c
index 2d2318e5680..077305ef2c6 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_CONFIG_START( raiden, driver_data_t )
+static MACHINE_CONFIG_START( raiden, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,XTAL_20MHz/2) /* NEC V30 CPU, 20MHz verified on pcb */
diff --git a/src/mame/drivers/raiden2.c b/src/mame/drivers/raiden2.c
index c53ac6835b4..18907c964e3 100644
--- a/src/mame/drivers/raiden2.c
+++ b/src/mame/drivers/raiden2.c
@@ -1184,7 +1184,7 @@ GFXDECODE_END
/* MACHINE DRIVERS */
-static MACHINE_CONFIG_START( raiden2, driver_data_t )
+static MACHINE_CONFIG_START( raiden2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,XTAL_32MHz/2) /* verified on pcb */
@@ -2273,7 +2273,7 @@ static MACHINE_RESET( rdx_v33 )
common_reset();
}
-static MACHINE_CONFIG_START( rdx_v33, driver_data_t )
+static MACHINE_CONFIG_START( rdx_v33, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V33, 32000000/2 ) // ?
diff --git a/src/mame/drivers/rbmk.c b/src/mame/drivers/rbmk.c
index 4d729d8878d..10af89bc31f 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_CONFIG_START( rbmk, driver_data_t )
+static MACHINE_CONFIG_START( rbmk, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 22000000 /2)
MDRV_CPU_PROGRAM_MAP(rbmk_mem)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
diff --git a/src/mame/drivers/rcorsair.c b/src/mame/drivers/rcorsair.c
index c28796ccb47..6a8445d52a5 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_CONFIG_START( rcorsair, driver_data_t )
+static MACHINE_CONFIG_START( rcorsair, driver_device )
/* Main CPU is probably inside Custom Block with
program code, unknown type */
diff --git a/src/mame/drivers/re900.c b/src/mame/drivers/re900.c
index d89db4b0f39..201de50f468 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_CONFIG_START( re900, driver_data_t )
+static MACHINE_CONFIG_START( re900, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8051, MAIN_CLOCK)
diff --git a/src/mame/drivers/realbrk.c b/src/mame/drivers/realbrk.c
index dacb5e0ad03..b08a2e55655 100644
--- a/src/mame/drivers/realbrk.c
+++ b/src/mame/drivers/realbrk.c
@@ -673,7 +673,7 @@ static INTERRUPT_GEN( realbrk_interrupt )
}
}
-static MACHINE_CONFIG_START( realbrk, driver_data_t )
+static MACHINE_CONFIG_START( realbrk, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M68000, XTAL_32MHz / 2) /* !! TMP68301 !! */
diff --git a/src/mame/drivers/redalert.c b/src/mame/drivers/redalert.c
index 68647ee053c..973aedfcc16 100644
--- a/src/mame/drivers/redalert.c
+++ b/src/mame/drivers/redalert.c
@@ -385,7 +385,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( redalert, driver_data_t )
+static MACHINE_CONFIG_START( redalert, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MAIN_CPU_CLOCK)
@@ -399,7 +399,7 @@ static MACHINE_CONFIG_START( redalert, driver_data_t )
MDRV_FRAGMENT_ADD(redalert_audio)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( ww3, driver_data_t )
+static MACHINE_CONFIG_START( ww3, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MAIN_CPU_CLOCK)
@@ -413,7 +413,7 @@ static MACHINE_CONFIG_START( ww3, driver_data_t )
MDRV_FRAGMENT_ADD(ww3_audio)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( panther, driver_data_t )
+static MACHINE_CONFIG_START( panther, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MAIN_CPU_CLOCK)
@@ -427,7 +427,7 @@ static MACHINE_CONFIG_START( panther, driver_data_t )
MDRV_FRAGMENT_ADD(ww3_audio)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( demoneye, driver_data_t )
+static MACHINE_CONFIG_START( demoneye, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MAIN_CPU_CLOCK)
diff --git a/src/mame/drivers/renegade.c b/src/mame/drivers/renegade.c
index 4d273ac7e6d..871efceae1b 100644
--- a/src/mame/drivers/renegade.c
+++ b/src/mame/drivers/renegade.c
@@ -927,7 +927,7 @@ static MACHINE_RESET( renegade )
}
-static MACHINE_CONFIG_START( renegade, driver_data_t )
+static MACHINE_CONFIG_START( renegade, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12000000/8) /* 1.5 MHz (measured) */
diff --git a/src/mame/drivers/retofinv.c b/src/mame/drivers/retofinv.c
index 91b268dee83..4b4c4bb9973 100644
--- a/src/mame/drivers/retofinv.c
+++ b/src/mame/drivers/retofinv.c
@@ -336,7 +336,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( retofinv, driver_data_t )
+static MACHINE_CONFIG_START( retofinv, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz? */
diff --git a/src/mame/drivers/rgum.c b/src/mame/drivers/rgum.c
index 6eeac3d3142..d2b9f45cf67 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_CONFIG_START( rgum, driver_data_t )
+static MACHINE_CONFIG_START( rgum, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M65C02,24000000/16) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(rgum_map)
diff --git a/src/mame/drivers/rmhaihai.c b/src/mame/drivers/rmhaihai.c
index f4fc5b39215..2685575fd3d 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_CONFIG_START( rmhaihai, driver_data_t )
+static MACHINE_CONFIG_START( rmhaihai, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,20000000/4) /* 5 MHz ??? */
diff --git a/src/mame/drivers/rollrace.c b/src/mame/drivers/rollrace.c
index 944de9b0204..01c40da275f 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_CONFIG_START( rollrace, driver_data_t )
+static MACHINE_CONFIG_START( rollrace, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,XTAL_24MHz/8) /* verified on pcb */
diff --git a/src/mame/drivers/rotaryf.c b/src/mame/drivers/rotaryf.c
index 68a795fc3b5..c37026e9865 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_CONFIG_START( rotaryf, driver_data_t )
+static MACHINE_CONFIG_START( rotaryf, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",I8085A,4000000) /* 8080? */ /* 2 MHz? */
diff --git a/src/mame/drivers/roul.c b/src/mame/drivers/roul.c
index 5da92888146..95aded1a8dc 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_CONFIG_START( roul, driver_data_t )
+static MACHINE_CONFIG_START( roul, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000)
MDRV_CPU_PROGRAM_MAP(roul_map)
diff --git a/src/mame/drivers/route16.c b/src/mame/drivers/route16.c
index 98d00caa0a9..0ee26824b77 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_CONFIG_START( route16, driver_data_t )
+static MACHINE_CONFIG_START( route16, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("cpu1", Z80, 2500000) /* 10MHz / 4 = 2.5MHz */
diff --git a/src/mame/drivers/royalmah.c b/src/mame/drivers/royalmah.c
index e47f5d03111..d6bba87bb25 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_CONFIG_START( royalmah, driver_data_t )
+static MACHINE_CONFIG_START( royalmah, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
diff --git a/src/mame/drivers/rpunch.c b/src/mame/drivers/rpunch.c
index f2ea4492e1e..0b9c7f1842e 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_CONFIG_START( rpunch, driver_data_t )
+static MACHINE_CONFIG_START( rpunch, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK/2)
diff --git a/src/mame/drivers/runaway.c b/src/mame/drivers/runaway.c
index b1d412f848b..c604cfd8dc1 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_CONFIG_START( runaway, driver_data_t )
+static MACHINE_CONFIG_START( runaway, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12096000 / 8) /* ? */
diff --git a/src/mame/drivers/safarir.c b/src/mame/drivers/safarir.c
index dca35aa4ac1..7d59da2bb68 100644
--- a/src/mame/drivers/safarir.c
+++ b/src/mame/drivers/safarir.c
@@ -50,13 +50,11 @@ modified by Hau
#include "cpu/i8085/i8085.h"
#include "sound/samples.h"
-class safarir_state : public driver_data_t
+class safarir_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, safarir_state(machine)); }
-
- safarir_state(running_machine &machine)
- : driver_data_t(machine) { }
+ safarir_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *ram_1, *ram_2;
size_t ram_size;
diff --git a/src/mame/drivers/sandscrp.c b/src/mame/drivers/sandscrp.c
index bd8f3ece68a..d1efce8b8c0 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_CONFIG_START( sandscrp, driver_data_t )
+static MACHINE_CONFIG_START( sandscrp, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,12000000) /* TMP68HC000N-12 */
diff --git a/src/mame/drivers/sangho.c b/src/mame/drivers/sangho.c
index c2e799ea124..359ee309c64 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_CONFIG_START( pzlestar, driver_data_t )
+static MACHINE_CONFIG_START( pzlestar, driver_device )
MDRV_CPU_ADD("maincpu", Z80,8000000) // ?
MDRV_CPU_PROGRAM_MAP(sangho_map)
@@ -385,7 +385,7 @@ static MACHINE_CONFIG_START( pzlestar, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( sexyboom, driver_data_t )
+static MACHINE_CONFIG_START( sexyboom, driver_device )
MDRV_CPU_ADD("maincpu", Z80,8000000) // ?
MDRV_CPU_PROGRAM_MAP(sangho_map)
diff --git a/src/mame/drivers/sauro.c b/src/mame/drivers/sauro.c
index d34a3a524a0..03963d0f953 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_CONFIG_START( tecfri, driver_data_t )
+static MACHINE_CONFIG_START( tecfri, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_20MHz/4) /* verified on pcb */
MDRV_CPU_VBLANK_INT("screen", irq0_line_hold)
diff --git a/src/mame/drivers/savquest.c b/src/mame/drivers/savquest.c
index ec72e861c3e..6db612a8fbe 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_CONFIG_START( savquest, driver_data_t )
+static MACHINE_CONFIG_START( savquest, driver_device )
MDRV_CPU_ADD("maincpu", PENTIUM, 450000000) // actually Pentium II 450
MDRV_CPU_PROGRAM_MAP(savquest_map)
MDRV_CPU_IO_MAP(savquest_io)
diff --git a/src/mame/drivers/sbowling.c b/src/mame/drivers/sbowling.c
index 5c40d2cc132..f878680bce5 100644
--- a/src/mame/drivers/sbowling.c
+++ b/src/mame/drivers/sbowling.c
@@ -45,13 +45,11 @@ PROMs : NEC B406 (1kx4) x2
#include "sound/ay8910.h"
-class sbowling_state : public driver_data_t
+class sbowling_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, sbowling_state(machine)); }
-
- sbowling_state(running_machine &machine)
- : driver_data_t(machine) { }
+ sbowling_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
int bgmap;
UINT8 *videoram;
diff --git a/src/mame/drivers/sbrkout.c b/src/mame/drivers/sbrkout.c
index eaceeca4f1e..bc30859b4c8 100644
--- a/src/mame/drivers/sbrkout.c
+++ b/src/mame/drivers/sbrkout.c
@@ -475,7 +475,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_CONFIG_START( sbrkout, driver_data_t )
+static MACHINE_CONFIG_START( sbrkout, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,MAIN_CLOCK/16) /* 375 KHz? Should be 750KHz? */
diff --git a/src/mame/drivers/scobra.c b/src/mame/drivers/scobra.c
index dfdad493cd3..965f6864334 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_CONFIG_START( type1, driver_data_t )
+static MACHINE_CONFIG_START( type1, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
@@ -975,7 +975,7 @@ static MACHINE_CONFIG_DERIVED( darkplnt, type2 )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( hustler, driver_data_t )
+static MACHINE_CONFIG_START( hustler, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
diff --git a/src/mame/drivers/scotrsht.c b/src/mame/drivers/scotrsht.c
index 6acea79aaa3..356f2fa7b3e 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_CONFIG_START( scotrsht, driver_data_t )
+static MACHINE_CONFIG_START( scotrsht, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 18432000/6) /* 3.072 MHz */
diff --git a/src/mame/drivers/scramble.c b/src/mame/drivers/scramble.c
index e3c923f221a..f523daf7cfa 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_CONFIG_START( scramble, driver_data_t )
+static MACHINE_CONFIG_START( scramble, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
@@ -1462,7 +1462,7 @@ static MACHINE_CONFIG_DERIVED( hncholms, hunchbks )
MDRV_VIDEO_START(scorpion)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( ad2083, driver_data_t )
+static MACHINE_CONFIG_START( ad2083, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
MDRV_CPU_PROGRAM_MAP(ad2083_map)
diff --git a/src/mame/drivers/seattle.c b/src/mame/drivers/seattle.c
index 713d7bfd069..aa79c519cfd 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_CONFIG_START( seattle_common, driver_data_t )
+static MACHINE_CONFIG_START( seattle_common, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R5000LE, SYSTEM_CLOCK*3)
diff --git a/src/mame/drivers/segac2.c b/src/mame/drivers/segac2.c
index b15e80f0e2a..aeccffdd6de 100644
--- a/src/mame/drivers/segac2.c
+++ b/src/mame/drivers/segac2.c
@@ -1360,7 +1360,7 @@ static VIDEO_UPDATE(segac2_new)
}
-static MACHINE_CONFIG_START( segac, driver_data_t )
+static MACHINE_CONFIG_START( segac, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XL2_CLOCK/6)
diff --git a/src/mame/drivers/segae.c b/src/mame/drivers/segae.c
index 28cacc15868..ce743a872da 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_CONFIG_START( systeme, driver_data_t )
+static MACHINE_CONFIG_START( systeme, driver_device )
MDRV_CPU_ADD("maincpu", Z80, 10738600/2) /* correct? */
MDRV_CPU_PROGRAM_MAP(systeme_map)
MDRV_CPU_IO_MAP(io_map)
diff --git a/src/mame/drivers/segag80r.c b/src/mame/drivers/segag80r.c
index a6fc1b4cbe7..83085a94411 100644
--- a/src/mame/drivers/segag80r.c
+++ b/src/mame/drivers/segag80r.c
@@ -831,7 +831,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_CONFIG_START( g80r_base, driver_data_t )
+static MACHINE_CONFIG_START( g80r_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, VIDEO_CLOCK/4)
diff --git a/src/mame/drivers/segag80v.c b/src/mame/drivers/segag80v.c
index e81a547c52a..9e1a3be747d 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_CONFIG_START( g80v_base, driver_data_t )
+static MACHINE_CONFIG_START( g80v_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK/2)
diff --git a/src/mame/drivers/segald.c b/src/mame/drivers/segald.c
index b78743f44de..a59b17d71b2 100644
--- a/src/mame/drivers/segald.c
+++ b/src/mame/drivers/segald.c
@@ -334,7 +334,7 @@ static MACHINE_START( astron )
/* DRIVER */
-static MACHINE_CONFIG_START( astron, driver_data_t )
+static MACHINE_CONFIG_START( astron, driver_device )
/* main cpu */
MDRV_CPU_ADD("maincpu", Z80, SCHEMATIC_CLOCK/4)
diff --git a/src/mame/drivers/segamsys.c b/src/mame/drivers/segamsys.c
index f4d69222cc8..7f76552b00a 100644
--- a/src/mame/drivers/segamsys.c
+++ b/src/mame/drivers/segamsys.c
@@ -1711,7 +1711,7 @@ static NVRAM_HANDLER( sms )
}
}
-MACHINE_CONFIG_START( sms, driver_data_t )
+MACHINE_CONFIG_START( sms, driver_device )
MDRV_CPU_ADD("maincpu", Z80, 3579540)
//MDRV_CPU_PROGRAM_MAP(sms_map)
MDRV_CPU_IO_MAP(sms_io_map)
diff --git a/src/mame/drivers/segas24.c b/src/mame/drivers/segas24.c
index 224662bca50..a6510f2ecf0 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_CONFIG_START( system24, driver_data_t )
+static MACHINE_CONFIG_START( system24, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, MASTER_CLOCK/2)
MDRV_CPU_PROGRAM_MAP(system24_cpu1_map)
diff --git a/src/mame/drivers/segas32.c b/src/mame/drivers/segas32.c
index 98f1c6468d5..cc0816ab172 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_CONFIG_START( system32, driver_data_t )
+static MACHINE_CONFIG_START( system32, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V60, MASTER_CLOCK/2)
@@ -2240,7 +2240,7 @@ static MACHINE_CONFIG_DERIVED( system32_v25, system32 )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( multi32, driver_data_t )
+static MACHINE_CONFIG_START( multi32, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V70, MULTI32_CLOCK/2)
diff --git a/src/mame/drivers/seibuspi.c b/src/mame/drivers/seibuspi.c
index a3ffa68df43..3b9f11c7a8c 100644
--- a/src/mame/drivers/seibuspi.c
+++ b/src/mame/drivers/seibuspi.c
@@ -1858,7 +1858,7 @@ static MACHINE_RESET( spi )
}
}
-static MACHINE_CONFIG_START( spi, driver_data_t )
+static MACHINE_CONFIG_START( spi, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I386, 50000000/2) /* Intel 386DX, 25MHz */
@@ -2198,7 +2198,7 @@ static MACHINE_RESET( seibu386 )
cpu_set_irq_callback(machine->device("maincpu"), spi_irq_callback);
}
-static MACHINE_CONFIG_START( seibu386, driver_data_t )
+static MACHINE_CONFIG_START( seibu386, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I386, 40000000) /* AMD 386DX, 40MHz */
@@ -2252,7 +2252,7 @@ static DRIVER_INIT( sys386f2 )
}
}
-static MACHINE_CONFIG_START( sys386f2, driver_data_t )
+static MACHINE_CONFIG_START( sys386f2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I386, 25000000) /* 25mhz */
diff --git a/src/mame/drivers/seicross.c b/src/mame/drivers/seicross.c
index 96e0e425ba1..0540bcf6d38 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_CONFIG_START( nvram, driver_data_t )
+static MACHINE_CONFIG_START( nvram, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3072000) /* 3.072 MHz? */
diff --git a/src/mame/drivers/sengokmj.c b/src/mame/drivers/sengokmj.c
index 8e0f4df4a6b..eac4e00fabd 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_CONFIG_START( sengokmj, driver_data_t )
+static MACHINE_CONFIG_START( sengokmj, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, 16000000/2) /* V30-8 */
diff --git a/src/mame/drivers/senjyo.c b/src/mame/drivers/senjyo.c
index 1a34f61fea5..c91a5f8a931 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_CONFIG_START( senjyo, driver_data_t )
+static MACHINE_CONFIG_START( senjyo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz? */
diff --git a/src/mame/drivers/sfbonus.c b/src/mame/drivers/sfbonus.c
index 9fd2f5dd549..b00bbc0fb6f 100644
--- a/src/mame/drivers/sfbonus.c
+++ b/src/mame/drivers/sfbonus.c
@@ -1246,7 +1246,7 @@ static NVRAM_HANDLER( sfbonus )
}
-static MACHINE_CONFIG_START( sfbonus, driver_data_t )
+static MACHINE_CONFIG_START( sfbonus, driver_device )
MDRV_CPU_ADD("maincpu", Z80, 6000000) // custom packaged z80 CPU ?? Mhz
MDRV_CPU_PROGRAM_MAP(sfbonus_map)
MDRV_CPU_IO_MAP(sfbonus_io)
diff --git a/src/mame/drivers/sfkick.c b/src/mame/drivers/sfkick.c
index b540b78f003..1f9abe90520 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_CONFIG_START( sfkick, driver_data_t )
+static MACHINE_CONFIG_START( sfkick, driver_device )
MDRV_CPU_ADD("maincpu",Z80,MASTER_CLOCK/6)
MDRV_CPU_PROGRAM_MAP(sfkick_map)
diff --git a/src/mame/drivers/sg1000a.c b/src/mame/drivers/sg1000a.c
index 9188653e8f6..48ad2792f7e 100644
--- a/src/mame/drivers/sg1000a.c
+++ b/src/mame/drivers/sg1000a.c
@@ -263,7 +263,7 @@ static I8255A_INTERFACE( ppi8255_intf )
*
*************************************/
-static MACHINE_CONFIG_START( sg1000a, driver_data_t )
+static MACHINE_CONFIG_START( sg1000a, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_3_579545MHz)
MDRV_CPU_PROGRAM_MAP(program_map)
diff --git a/src/mame/drivers/shangha3.c b/src/mame/drivers/shangha3.c
index ae5e9f38185..411eaa2b414 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_CONFIG_START( shangha3, driver_data_t )
+static MACHINE_CONFIG_START( shangha3, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -511,7 +511,7 @@ static MACHINE_CONFIG_START( shangha3, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( heberpop, driver_data_t )
+static MACHINE_CONFIG_START( heberpop, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -551,7 +551,7 @@ static MACHINE_CONFIG_START( heberpop, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( blocken, driver_data_t )
+static MACHINE_CONFIG_START( blocken, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
diff --git a/src/mame/drivers/shanghai.c b/src/mame/drivers/shanghai.c
index 1221a3cf2df..ef96644db54 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_CONFIG_START( shanghai, driver_data_t )
+static MACHINE_CONFIG_START( shanghai, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,16000000/2) /* ? */
@@ -459,7 +459,7 @@ static MACHINE_CONFIG_START( shanghai, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( shangha2, driver_data_t )
+static MACHINE_CONFIG_START( shangha2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,16000000/2) /* ? */
@@ -493,7 +493,7 @@ static MACHINE_CONFIG_START( shangha2, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( kothello, driver_data_t )
+static MACHINE_CONFIG_START( kothello, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30,16000000/2) /* ? */
diff --git a/src/mame/drivers/shangkid.c b/src/mame/drivers/shangkid.c
index 6e99a023bec..c4412182d93 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_CONFIG_START( chinhero, driver_data_t )
+static MACHINE_CONFIG_START( chinhero, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_18_432MHz/6) /* verified on pcb */
@@ -465,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_CONFIG_START( dynamski, driver_data_t )
+static MACHINE_CONFIG_START( dynamski, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3000000) /* ? */
diff --git a/src/mame/drivers/shaolins.c b/src/mame/drivers/shaolins.c
index 357097865b2..bcda4003780 100644
--- a/src/mame/drivers/shaolins.c
+++ b/src/mame/drivers/shaolins.c
@@ -200,7 +200,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( shaolins, driver_data_t )
+static MACHINE_CONFIG_START( shaolins, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/12) /* verified on pcb */
diff --git a/src/mame/drivers/shisen.c b/src/mame/drivers/shisen.c
index c829f1fed6f..0ef6209ee57 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_CONFIG_START( shisen, driver_data_t )
+static MACHINE_CONFIG_START( shisen, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 6000000) /* 6 MHz ? */
diff --git a/src/mame/drivers/shougi.c b/src/mame/drivers/shougi.c
index 8f05c3add68..872ab0a58bc 100644
--- a/src/mame/drivers/shougi.c
+++ b/src/mame/drivers/shougi.c
@@ -87,13 +87,11 @@ PROM : Type MB7051
#include "sound/ay8910.h"
#include "video/resnet.h"
-class shougi_state : public driver_data_t
+class shougi_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, shougi_state(machine)); }
-
- shougi_state(running_machine &machine)
- : driver_data_t(machine) { }
+ shougi_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *videoram;
int nmi_enabled;
diff --git a/src/mame/drivers/sigmab52.c b/src/mame/drivers/sigmab52.c
index e3a15b3720d..333ff41c6d3 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_CONFIG_START( jwildb52, driver_data_t )
+static MACHINE_CONFIG_START( jwildb52, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MAIN_CLOCK/9) /* 2 MHz */
diff --git a/src/mame/drivers/sigmab98.c b/src/mame/drivers/sigmab98.c
index 1206a60cd21..54cb04da4b4 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_CONFIG_START( gegege, driver_data_t )
+static MACHINE_CONFIG_START( gegege, driver_device )
MDRV_CPU_ADD("maincpu", Z80, XTAL_27MHz / 4) // ?
MDRV_CPU_PROGRAM_MAP(gegege_mem_map)
MDRV_CPU_IO_MAP(gegege_io_map)
diff --git a/src/mame/drivers/skeetsht.c b/src/mame/drivers/skeetsht.c
index 418318455f3..deeb2552a01 100644
--- a/src/mame/drivers/skeetsht.c
+++ b/src/mame/drivers/skeetsht.c
@@ -17,13 +17,11 @@
*
*************************************/
-class skeetsht_state : public driver_data_t
+class skeetsht_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, skeetsht_state(machine)); }
-
- skeetsht_state(running_machine &machine)
- : driver_data_t(machine) { }
+ skeetsht_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 *tms_vram;
UINT8 porta_latch;
diff --git a/src/mame/drivers/skimaxx.c b/src/mame/drivers/skimaxx.c
index 46b84a371ef..886180608b8 100644
--- a/src/mame/drivers/skimaxx.c
+++ b/src/mame/drivers/skimaxx.c
@@ -503,7 +503,7 @@ static MACHINE_RESET( skimaxx )
*
*************************************/
-static MACHINE_CONFIG_START( skimaxx, driver_data_t )
+static MACHINE_CONFIG_START( skimaxx, driver_device )
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
diff --git a/src/mame/drivers/skyarmy.c b/src/mame/drivers/skyarmy.c
index 8c8cc03e443..be7aa4569e9 100644
--- a/src/mame/drivers/skyarmy.c
+++ b/src/mame/drivers/skyarmy.c
@@ -29,13 +29,11 @@
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
-class skyarmy_state : public driver_data_t
+class skyarmy_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, skyarmy_state(machine)); }
-
- skyarmy_state(running_machine &machine)
- : driver_data_t(machine) { }
+ skyarmy_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *spriteram;
UINT8 *videoram;
diff --git a/src/mame/drivers/skydiver.c b/src/mame/drivers/skydiver.c
index 50ad6684456..fecf0fdc7c9 100644
--- a/src/mame/drivers/skydiver.c
+++ b/src/mame/drivers/skydiver.c
@@ -371,7 +371,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_CONFIG_START( skydiver, driver_data_t )
+static MACHINE_CONFIG_START( skydiver, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800,MASTER_CLOCK/16) /* ???? */
diff --git a/src/mame/drivers/skykid.c b/src/mame/drivers/skykid.c
index 4e1fee3a340..54363138f52 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_CONFIG_START( skykid, driver_data_t )
+static MACHINE_CONFIG_START( skykid, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809,49152000/32)
diff --git a/src/mame/drivers/skylncr.c b/src/mame/drivers/skylncr.c
index 95f2a1fb227..5fb7f189cfb 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_CONFIG_START( skylncr, driver_data_t )
+static MACHINE_CONFIG_START( skylncr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK/4)
diff --git a/src/mame/drivers/skyraid.c b/src/mame/drivers/skyraid.c
index 21e82323bf5..3602df1ce69 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_CONFIG_START( skyraid, driver_data_t )
+static MACHINE_CONFIG_START( skyraid, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12096000 / 12)
diff --git a/src/mame/drivers/slapfght.c b/src/mame/drivers/slapfght.c
index 53344bf6804..6cc6bbc57aa 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_CONFIG_START( perfrman, driver_data_t )
+static MACHINE_CONFIG_START( perfrman, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,16000000/4) /* 4MHz ???, 16MHz Oscillator */
@@ -790,7 +790,7 @@ static MACHINE_CONFIG_START( perfrman, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( tigerhb, driver_data_t )
+static MACHINE_CONFIG_START( tigerhb, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 6000000)
@@ -836,7 +836,7 @@ static MACHINE_CONFIG_START( tigerhb, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( tigerh, driver_data_t )
+static MACHINE_CONFIG_START( tigerh, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_36MHz/6) /* verified on pcb */
@@ -886,7 +886,7 @@ static MACHINE_CONFIG_START( tigerh, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( slapfigh, driver_data_t )
+static MACHINE_CONFIG_START( slapfigh, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80, XTAL_36MHz/6) /* verified on pcb */
diff --git a/src/mame/drivers/sliver.c b/src/mame/drivers/sliver.c
index 4b66a0dabf0..2f4db6d992c 100644
--- a/src/mame/drivers/sliver.c
+++ b/src/mame/drivers/sliver.c
@@ -76,13 +76,11 @@ Notes:
#define x_offset 0x45
#define y_offset 0x0d
-class sliver_state : public driver_data_t
+class sliver_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, sliver_state(machine)); }
-
- sliver_state(running_machine &machine)
- : driver_data_t(machine) { }
+ sliver_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 io_offset;
UINT16 io_reg[IO_SIZE];
diff --git a/src/mame/drivers/slotcarn.c b/src/mame/drivers/slotcarn.c
index 83e37df37e6..95c86a09414 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_CONFIG_START( slotcarn, driver_data_t )
+static MACHINE_CONFIG_START( slotcarn, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, CPU_CLOCK) // 2.5 Mhz?
diff --git a/src/mame/drivers/sms.c b/src/mame/drivers/sms.c
index ca3fc9c8d6f..287af7790f7 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_CONFIG_START( sms, driver_data_t )
+static MACHINE_CONFIG_START( sms, driver_device )
MDRV_CPU_ADD("maincpu", I8088, XTAL_24MHz/8)
MDRV_CPU_PROGRAM_MAP(sms_map)
diff --git a/src/mame/drivers/snookr10.c b/src/mame/drivers/snookr10.c
index 15fbf81fa44..f22cfebc54b 100644
--- a/src/mame/drivers/snookr10.c
+++ b/src/mame/drivers/snookr10.c
@@ -698,7 +698,7 @@ GFXDECODE_END
* Machine Drivers *
**************************/
-static MACHINE_CONFIG_START( snookr10, driver_data_t )
+static MACHINE_CONFIG_START( snookr10, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M65SC02, MASTER_CLOCK/8) /* 2 MHz (1.999 MHz measured) */
diff --git a/src/mame/drivers/snowbros.c b/src/mame/drivers/snowbros.c
index 5a409f7ec38..bb1e3c177f3 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_CONFIG_START( snowbros, driver_data_t )
+static MACHINE_CONFIG_START( snowbros, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 Mhz - confirmed */
@@ -1556,7 +1556,7 @@ CPU : 1 X MC68000P12
See included pics
*/
-static MACHINE_CONFIG_START( honeydol, driver_data_t )
+static MACHINE_CONFIG_START( honeydol, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -1594,7 +1594,7 @@ static MACHINE_CONFIG_START( honeydol, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( twinadv, driver_data_t )
+static MACHINE_CONFIG_START( twinadv, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) // or 12
@@ -1673,7 +1673,7 @@ static MACHINE_CONFIG_DERIVED( _4in1, semicom )
MDRV_GFXDECODE(snowbros)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( snowbro3, driver_data_t )
+static MACHINE_CONFIG_START( snowbro3, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000) /* 16mhz or 12mhz ? */
diff --git a/src/mame/drivers/solomon.c b/src/mame/drivers/solomon.c
index f72ce5d5a32..af9cb26eaeb 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_CONFIG_START( solomon, driver_data_t )
+static MACHINE_CONFIG_START( solomon, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4.0 MHz (?????) */
diff --git a/src/mame/drivers/sothello.c b/src/mame/drivers/sothello.c
index c70316d75ba..440d823ef67 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_CONFIG_START( sothello, driver_data_t )
+static MACHINE_CONFIG_START( sothello, driver_device )
/* basic machine hardware */
diff --git a/src/mame/drivers/spacefb.c b/src/mame/drivers/spacefb.c
index 6d1ac91a8dd..acb3b9ecf50 100644
--- a/src/mame/drivers/spacefb.c
+++ b/src/mame/drivers/spacefb.c
@@ -328,7 +328,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( spacefb, driver_data_t )
+static MACHINE_CONFIG_START( spacefb, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, SPACEFB_MAIN_CPU_CLOCK)
diff --git a/src/mame/drivers/spaceg.c b/src/mame/drivers/spaceg.c
index b09e9273740..eee64f72dbc 100644
--- a/src/mame/drivers/spaceg.c
+++ b/src/mame/drivers/spaceg.c
@@ -173,13 +173,11 @@ Notes:
*
*************************************/
-class spaceg_state : public driver_data_t
+class spaceg_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, spaceg_state(machine)); }
-
- spaceg_state(running_machine &machine)
- : driver_data_t(machine) { }
+ spaceg_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 * videoram;
UINT8 * unkram;
diff --git a/src/mame/drivers/spcforce.c b/src/mame/drivers/spcforce.c
index 8d441ae0bcb..e75c7d4ff96 100644
--- a/src/mame/drivers/spcforce.c
+++ b/src/mame/drivers/spcforce.c
@@ -242,7 +242,7 @@ static PALETTE_INIT( spcforce )
}
-static MACHINE_CONFIG_START( spcforce, driver_data_t )
+static MACHINE_CONFIG_START( spcforce, driver_device )
/* basic machine hardware */
/* FIXME: The 8085A had a max clock of 6MHz, internally divided by 2! */
diff --git a/src/mame/drivers/spdodgeb.c b/src/mame/drivers/spdodgeb.c
index 08193fc71dd..f6936f24c9a 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_CONFIG_START( spdodgeb, driver_data_t )
+static MACHINE_CONFIG_START( spdodgeb, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,12000000/6) /* 2MHz ? */
diff --git a/src/mame/drivers/speedatk.c b/src/mame/drivers/speedatk.c
index afa8c761df8..fd5c5d17b4a 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_CONFIG_START( speedatk, driver_data_t )
+static MACHINE_CONFIG_START( speedatk, driver_device )
MDRV_CPU_ADD("maincpu", Z80,MASTER_CLOCK/2) //divider is unknown
MDRV_CPU_PROGRAM_MAP(speedatk_mem)
MDRV_CPU_IO_MAP(speedatk_io)
diff --git a/src/mame/drivers/speedbal.c b/src/mame/drivers/speedbal.c
index 46c14fbeb07..4911393fbba 100644
--- a/src/mame/drivers/speedbal.c
+++ b/src/mame/drivers/speedbal.c
@@ -225,7 +225,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( speedbal, driver_data_t )
+static MACHINE_CONFIG_START( speedbal, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz ??? */
diff --git a/src/mame/drivers/speedspn.c b/src/mame/drivers/speedspn.c
index 62525dd6f6f..1f28fa713af 100644
--- a/src/mame/drivers/speedspn.c
+++ b/src/mame/drivers/speedspn.c
@@ -277,7 +277,7 @@ GFXDECODE_END
/*** MACHINE DRIVER **********************************************************/
-static MACHINE_CONFIG_START( speedspn, driver_data_t )
+static MACHINE_CONFIG_START( speedspn, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,6000000) /* 6 MHz */
diff --git a/src/mame/drivers/speglsht.c b/src/mame/drivers/speglsht.c
index 8b2da98bd98..818eb7f9250 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_CONFIG_START( speglsht, driver_data_t )
+static MACHINE_CONFIG_START( speglsht, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80, 8000000) /* 8 MHz ? */
MDRV_CPU_PROGRAM_MAP(st0016_mem)
diff --git a/src/mame/drivers/spiders.c b/src/mame/drivers/spiders.c
index 2aada552fea..5a6a4f95a02 100644
--- a/src/mame/drivers/spiders.c
+++ b/src/mame/drivers/spiders.c
@@ -705,7 +705,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( spiders, driver_data_t )
+static MACHINE_CONFIG_START( spiders, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2800000)
diff --git a/src/mame/drivers/splash.c b/src/mame/drivers/splash.c
index 2fd31bffd05..7c646d0fe5f 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_CONFIG_START( splash, driver_data_t )
+static MACHINE_CONFIG_START( splash, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz (24/2) */
@@ -444,7 +444,7 @@ static const ym2203_interface ym2203_config =
ym_irq
};
-static MACHINE_CONFIG_START( roldfrog, driver_data_t )
+static MACHINE_CONFIG_START( roldfrog, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz - verified */
@@ -484,7 +484,7 @@ static MACHINE_CONFIG_START( roldfrog, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( funystrp, driver_data_t )
+static MACHINE_CONFIG_START( funystrp, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz (24/2) */
diff --git a/src/mame/drivers/spoker.c b/src/mame/drivers/spoker.c
index 3783f0397eb..af4dc77fe2e 100644
--- a/src/mame/drivers/spoker.c
+++ b/src/mame/drivers/spoker.c
@@ -18,13 +18,11 @@ TODO:
Video Hardware
***************************************************************************/
-class spoker_state : public driver_data_t
+class spoker_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, spoker_state(machine)); }
-
- spoker_state(running_machine &machine)
- : driver_data_t(machine) { }
+ spoker_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *bg_tile_ram;
tilemap_t *bg_tilemap;
diff --git a/src/mame/drivers/spool99.c b/src/mame/drivers/spool99.c
index 4d25ab6b512..7c8ab5e9c4e 100644
--- a/src/mame/drivers/spool99.c
+++ b/src/mame/drivers/spool99.c
@@ -94,13 +94,11 @@ Note
#include "sound/okim6295.h"
#include "machine/eeprom.h"
-class spool99_state : public driver_data_t
+class spool99_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, spool99_state(machine)); }
-
- spool99_state(running_machine &machine)
- : driver_data_t(machine) { }
+ spool99_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *main;
tilemap_t *sc0_tilemap;
diff --git a/src/mame/drivers/sprcros2.c b/src/mame/drivers/sprcros2.c
index ee57489e47e..ee855119352 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_CONFIG_START( sprcros2, driver_data_t )
+static MACHINE_CONFIG_START( sprcros2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("master", Z80,10000000/2)
diff --git a/src/mame/drivers/sprint2.c b/src/mame/drivers/sprint2.c
index d85d1d3b508..680dbbb26cc 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_CONFIG_START( sprint2, driver_data_t )
+static MACHINE_CONFIG_START( sprint2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12096000 / 16)
diff --git a/src/mame/drivers/sprint4.c b/src/mame/drivers/sprint4.c
index 6076ce820c2..5cf12559399 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_CONFIG_START( sprint4, driver_data_t )
+static MACHINE_CONFIG_START( sprint4, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, PIXEL_CLOCK / 8)
diff --git a/src/mame/drivers/sprint8.c b/src/mame/drivers/sprint8.c
index fb8ec8dfa94..6bb71183f5c 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_CONFIG_START( sprint8, driver_data_t )
+static MACHINE_CONFIG_START( sprint8, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, 11055000 / 11) /* ? */
diff --git a/src/mame/drivers/srmp5.c b/src/mame/drivers/srmp5.c
index 78d910754f9..b74539f3f59 100644
--- a/src/mame/drivers/srmp5.c
+++ b/src/mame/drivers/srmp5.c
@@ -62,13 +62,11 @@ This is not a bug (real machine behaves the same).
#define SPRITE_DATA_GRANULARITY 0x80
-class srmp5_state : public driver_data_t
+class srmp5_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, srmp5_state(machine)); }
-
- srmp5_state(running_machine &machine)
- : driver_data_t(machine) { }
+ srmp5_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT32 databank;
UINT16 *tileram;
diff --git a/src/mame/drivers/srmp6.c b/src/mame/drivers/srmp6.c
index 0899a6ec594..0b915bd1492 100644
--- a/src/mame/drivers/srmp6.c
+++ b/src/mame/drivers/srmp6.c
@@ -71,13 +71,11 @@ Dumped 06/15/2000
#include "deprecat.h"
#include "sound/nile.h"
-class srmp6_state : public driver_data_t
+class srmp6_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, srmp6_state(machine)); }
-
- srmp6_state(running_machine &machine)
- : driver_data_t(machine) { }
+ srmp6_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16* tileram;
UINT16* dmaram;
diff --git a/src/mame/drivers/srumbler.c b/src/mame/drivers/srumbler.c
index 2bebe9ac4cc..c1d5f9ed071 100644
--- a/src/mame/drivers/srumbler.c
+++ b/src/mame/drivers/srumbler.c
@@ -242,7 +242,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( srumbler, driver_data_t )
+static MACHINE_CONFIG_START( srumbler, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 1500000) /* 1.5 MHz (?) */
diff --git a/src/mame/drivers/ssfindo.c b/src/mame/drivers/ssfindo.c
index f19a876a017..ec7f4c46e3c 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_CONFIG_START( ssfindo, driver_data_t )
+static MACHINE_CONFIG_START( ssfindo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM7, 54000000) // guess...
@@ -616,7 +616,7 @@ static MACHINE_CONFIG_START( ssfindo, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( ppcar, driver_data_t )
+static MACHINE_CONFIG_START( ppcar, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", ARM7, 54000000) // guess...
diff --git a/src/mame/drivers/sshangha.c b/src/mame/drivers/sshangha.c
index 3f58b99a5fa..09b98482b80 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_CONFIG_START( sshangha, driver_data_t )
+static MACHINE_CONFIG_START( sshangha, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 28000000/2)
diff --git a/src/mame/drivers/ssingles.c b/src/mame/drivers/ssingles.c
index 87bdf93d8a3..1ee28ca7bb1 100644
--- a/src/mame/drivers/ssingles.c
+++ b/src/mame/drivers/ssingles.c
@@ -150,13 +150,11 @@ Dumped by Chack'n
#define NUM_PENS (4*8)
#define VMEM_SIZE 0x100
-class ssingles_state : public driver_data_t
+class ssingles_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ssingles_state(machine)); }
-
- ssingles_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ssingles_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *videoram;
UINT8 *colorram;
diff --git a/src/mame/drivers/ssozumo.c b/src/mame/drivers/ssozumo.c
index 6880482e9f3..31dd2db23c5 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_CONFIG_START( ssozumo, driver_data_t )
+static MACHINE_CONFIG_START( ssozumo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1200000) /* 1.2 MHz ???? */
diff --git a/src/mame/drivers/sspeedr.c b/src/mame/drivers/sspeedr.c
index 35ef445889d..f9e06745311 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_CONFIG_START( sspeedr, driver_data_t )
+static MACHINE_CONFIG_START( sspeedr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_19_968MHz/8)
diff --git a/src/mame/drivers/ssrj.c b/src/mame/drivers/ssrj.c
index 776153b1d09..0f34aafd581 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_CONFIG_START( ssrj, driver_data_t )
+static MACHINE_CONFIG_START( ssrj, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000/2)
diff --git a/src/mame/drivers/sstrangr.c b/src/mame/drivers/sstrangr.c
index ebacfede4c5..20a71a8e7cc 100644
--- a/src/mame/drivers/sstrangr.c
+++ b/src/mame/drivers/sstrangr.c
@@ -14,13 +14,11 @@
#define NUM_PENS (8)
-class sstrangr_state : public driver_data_t
+class sstrangr_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, sstrangr_state(machine)); }
-
- sstrangr_state(running_machine &machine)
- : driver_data_t(machine) { }
+ sstrangr_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *ram;
UINT8 flip_screen;
diff --git a/src/mame/drivers/st0016.c b/src/mame/drivers/st0016.c
index e0262dbc592..7212278759a 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_CONFIG_START( st0016, driver_data_t )
+static MACHINE_CONFIG_START( st0016, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,8000000) /* 8 MHz ? */
MDRV_CPU_PROGRAM_MAP(st0016_mem)
diff --git a/src/mame/drivers/stadhero.c b/src/mame/drivers/stadhero.c
index e6ede991948..2c0807e1d6a 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_CONFIG_START( stadhero, driver_data_t )
+static MACHINE_CONFIG_START( stadhero, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
diff --git a/src/mame/drivers/starcrus.c b/src/mame/drivers/starcrus.c
index 7578e5609fe..79c4314b28d 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_CONFIG_START( starcrus, driver_data_t )
+static MACHINE_CONFIG_START( starcrus, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080,9750000/9) /* 8224 chip is a divide by 9 */
diff --git a/src/mame/drivers/starfire.c b/src/mame/drivers/starfire.c
index f8c30cd76c5..c7cb934fefe 100644
--- a/src/mame/drivers/starfire.c
+++ b/src/mame/drivers/starfire.c
@@ -261,7 +261,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( starfire, driver_data_t )
+static MACHINE_CONFIG_START( starfire, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, STARFIRE_CPU_CLOCK)
diff --git a/src/mame/drivers/starshp1.c b/src/mame/drivers/starshp1.c
index 39f34889b6b..b769b67058d 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_CONFIG_START( starshp1, driver_data_t )
+static MACHINE_CONFIG_START( starshp1, driver_device )
/* basic machine hardware */
diff --git a/src/mame/drivers/starwars.c b/src/mame/drivers/starwars.c
index eaa4f7f1b7a..6632347a67c 100644
--- a/src/mame/drivers/starwars.c
+++ b/src/mame/drivers/starwars.c
@@ -324,7 +324,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( starwars, driver_data_t )
+static MACHINE_CONFIG_START( starwars, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK / 8)
diff --git a/src/mame/drivers/statriv2.c b/src/mame/drivers/statriv2.c
index b6e09532541..7d3cf632b07 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_CONFIG_START( statriv2, driver_data_t )
+static MACHINE_CONFIG_START( statriv2, driver_device )
/* basic machine hardware */
/* FIXME: The 8085A had a max clock of 6MHz, internally divided by 2! */
MDRV_CPU_ADD("maincpu", I8085A, MASTER_CLOCK)
diff --git a/src/mame/drivers/stepstag.c b/src/mame/drivers/stepstag.c
index 0551c3172fa..ce4bb192aa4 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_CONFIG_START( stepstag, driver_data_t )
+static MACHINE_CONFIG_START( stepstag, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000 ) //??
MDRV_CPU_PROGRAM_MAP(stepstag_map)
diff --git a/src/mame/drivers/stfight.c b/src/mame/drivers/stfight.c
index 30fc3d3e287..e7eb19c26f3 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_CONFIG_START( stfight, driver_data_t )
+static MACHINE_CONFIG_START( stfight, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3000000) /* 3 MHz */
diff --git a/src/mame/drivers/strnskil.c b/src/mame/drivers/strnskil.c
index e86a19c0136..d99965c1ac6 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_CONFIG_START( strnskil, driver_data_t )
+static MACHINE_CONFIG_START( strnskil, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000/2) /* 4.000MHz */
diff --git a/src/mame/drivers/stv.c b/src/mame/drivers/stv.c
index 9de247c3492..37b113c30a9 100644
--- a/src/mame/drivers/stv.c
+++ b/src/mame/drivers/stv.c
@@ -2852,7 +2852,7 @@ static MACHINE_RESET( stv )
}
-static MACHINE_CONFIG_START( stv, driver_data_t )
+static MACHINE_CONFIG_START( stv, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", SH2, MASTER_CLOCK_352/2) // 28.6364 MHz
diff --git a/src/mame/drivers/sub.c b/src/mame/drivers/sub.c
index 5938f08b273..35ffb66e1a8 100644
--- a/src/mame/drivers/sub.c
+++ b/src/mame/drivers/sub.c
@@ -112,13 +112,11 @@ PCB2 (Top board, CPU board)
#define MASTER_CLOCK XTAL_18_432MHz
-class sub_state : public driver_data_t
+class sub_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, sub_state(machine)); }
-
- sub_state(running_machine &machine)
- : driver_data_t(machine) { }
+ sub_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8* vid;
UINT8* attr;
diff --git a/src/mame/drivers/subs.c b/src/mame/drivers/subs.c
index 97918b43a83..33530dbd634 100644
--- a/src/mame/drivers/subs.c
+++ b/src/mame/drivers/subs.c
@@ -175,7 +175,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_CONFIG_START( subs, driver_data_t )
+static MACHINE_CONFIG_START( subs, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502,12096000/16) /* clock input is the "4H" signal */
diff --git a/src/mame/drivers/subsino.c b/src/mame/drivers/subsino.c
index 86d536eca88..76712c56d4b 100644
--- a/src/mame/drivers/subsino.c
+++ b/src/mame/drivers/subsino.c
@@ -2217,7 +2217,7 @@ GFXDECODE_END
* Machine Drivers *
***************************************************************************/
-static MACHINE_CONFIG_START( victor21, driver_data_t )
+static MACHINE_CONFIG_START( victor21, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 8) /* Unknown clock */
MDRV_CPU_PROGRAM_MAP(victor21_map)
@@ -2258,7 +2258,7 @@ static MACHINE_CONFIG_DERIVED( victor5, victor21 )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( crsbingo, driver_data_t )
+static MACHINE_CONFIG_START( crsbingo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 8) /* Unknown CPU and clock */
MDRV_CPU_PROGRAM_MAP(crsbingo_map)
@@ -2288,7 +2288,7 @@ static MACHINE_CONFIG_START( crsbingo, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( srider, driver_data_t )
+static MACHINE_CONFIG_START( srider, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 8) /* Unknown clock */
MDRV_CPU_PROGRAM_MAP(srider_map)
@@ -2328,7 +2328,7 @@ static MACHINE_CONFIG_DERIVED( sharkpy, srider )
MDRV_CPU_PROGRAM_MAP(sharkpy_map)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( tisub, driver_data_t )
+static MACHINE_CONFIG_START( tisub, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 8) /* Unknown CPU and clock */
MDRV_CPU_PROGRAM_MAP(tisub_map)
@@ -2357,7 +2357,7 @@ static MACHINE_CONFIG_START( tisub, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( stisub, driver_data_t )
+static MACHINE_CONFIG_START( stisub, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z180, XTAL_12MHz / 8) /* Unknown clock */
MDRV_CPU_PROGRAM_MAP(stisub_map)
diff --git a/src/mame/drivers/suna16.c b/src/mame/drivers/suna16.c
index 47be84b31e2..7ab22fba4bc 100644
--- a/src/mame/drivers/suna16.c
+++ b/src/mame/drivers/suna16.c
@@ -759,7 +759,7 @@ static INTERRUPT_GEN( bssoccer_interrupt )
}
}
-static MACHINE_CONFIG_START( bssoccer, driver_data_t )
+static MACHINE_CONFIG_START( bssoccer, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* ? */
@@ -819,7 +819,7 @@ MACHINE_CONFIG_END
Ultra Balloon
***************************************************************************/
-static MACHINE_CONFIG_START( uballoon, driver_data_t )
+static MACHINE_CONFIG_START( uballoon, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
@@ -871,7 +871,7 @@ MACHINE_CONFIG_END
Suna Quiz 6000 Academy
***************************************************************************/
-static MACHINE_CONFIG_START( sunaq, driver_data_t )
+static MACHINE_CONFIG_START( sunaq, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 24000000/4)
MDRV_CPU_PROGRAM_MAP(sunaq_map)
@@ -943,7 +943,7 @@ static const ay8910_interface bestbest_ay8910_interface =
DEVCB_HANDLER(bestbest_ay8910_port_a_w), DEVCB_NULL
};
-static MACHINE_CONFIG_START( bestbest, driver_data_t )
+static MACHINE_CONFIG_START( bestbest, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 24000000/4)
MDRV_CPU_PROGRAM_MAP(bestbest_map)
diff --git a/src/mame/drivers/suna8.c b/src/mame/drivers/suna8.c
index 767c7350d74..629d37db6d4 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_CONFIG_START( hardhead, driver_data_t )
+static MACHINE_CONFIG_START( hardhead, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* verified on pcb */
@@ -1531,7 +1531,7 @@ static const ym2203_interface rranger_ym2203_interface =
};
/* 2203 + 8910 */
-static MACHINE_CONFIG_START( rranger, driver_data_t )
+static MACHINE_CONFIG_START( rranger, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* ? */
@@ -1593,7 +1593,7 @@ static INTERRUPT_GEN( brickzn_interrupt )
else cpu_set_input_line(device, 0, HOLD_LINE);
}
-static MACHINE_CONFIG_START( brickzn, driver_data_t )
+static MACHINE_CONFIG_START( brickzn, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* SUNA PROTECTION BLOCK */
@@ -1693,7 +1693,7 @@ static const ay8910_interface starfigh_ay8910_interface =
DEVCB_DEVICE_HANDLER("samples", suna8_samples_number_w)
};
-static MACHINE_CONFIG_START( starfigh, driver_data_t )
+static MACHINE_CONFIG_START( starfigh, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* ? */
@@ -1752,7 +1752,7 @@ static INTERRUPT_GEN( sparkman_interrupt )
else cpu_set_input_line(device, 0, HOLD_LINE);
}
-static MACHINE_CONFIG_START( sparkman, driver_data_t )
+static MACHINE_CONFIG_START( sparkman, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* ? */
diff --git a/src/mame/drivers/supdrapo.c b/src/mame/drivers/supdrapo.c
index 2f6170c89ff..ec1a744a7fe 100644
--- a/src/mame/drivers/supdrapo.c
+++ b/src/mame/drivers/supdrapo.c
@@ -64,13 +64,11 @@
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
-class supdrapo_state : public driver_data_t
+class supdrapo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, supdrapo_state(machine)); }
-
- supdrapo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ supdrapo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *char_bank;
UINT8 *col_line;
diff --git a/src/mame/drivers/superchs.c b/src/mame/drivers/superchs.c
index 20d375bbdcc..1590a6cf971 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_CONFIG_START( superchs, driver_data_t )
+static MACHINE_CONFIG_START( superchs, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz */
diff --git a/src/mame/drivers/superdq.c b/src/mame/drivers/superdq.c
index e9aa77be2d9..b29311c19e8 100644
--- a/src/mame/drivers/superdq.c
+++ b/src/mame/drivers/superdq.c
@@ -27,13 +27,11 @@
#include "machine/laserdsc.h"
#include "video/resnet.h"
-class superdq_state : public driver_data_t
+class superdq_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, superdq_state(machine)); }
-
- superdq_state(running_machine &machine)
- : driver_data_t(machine) { }
+ superdq_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
running_device *laserdisc;
UINT8 ld_in_latch;
diff --git a/src/mame/drivers/superqix.c b/src/mame/drivers/superqix.c
index 393ac5f77c5..24e063dd9b5 100644
--- a/src/mame/drivers/superqix.c
+++ b/src/mame/drivers/superqix.c
@@ -1028,7 +1028,7 @@ static INTERRUPT_GEN( bootleg_interrupt )
-static MACHINE_CONFIG_START( pbillian, driver_data_t )
+static MACHINE_CONFIG_START( pbillian, driver_device )
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6 MHz */
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_IO_MAP(pbillian_port_map)
@@ -1061,7 +1061,7 @@ static MACHINE_CONFIG_START( pbillian, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( hotsmash, driver_data_t )
+static MACHINE_CONFIG_START( hotsmash, driver_device )
MDRV_CPU_ADD("maincpu", Z80,12000000/2) /* 6 MHz */
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_IO_MAP(hotsmash_port_map)
@@ -1097,7 +1097,7 @@ static MACHINE_CONFIG_START( hotsmash, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( sqix, driver_data_t )
+static MACHINE_CONFIG_START( sqix, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 12000000/2) /* 6 MHz */
@@ -1146,7 +1146,7 @@ static MACHINE_CONFIG_DERIVED( sqixu, sqix )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( sqixbl, driver_data_t )
+static MACHINE_CONFIG_START( sqixbl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 12000000/2) /* 6 MHz */
diff --git a/src/mame/drivers/supertnk.c b/src/mame/drivers/supertnk.c
index 69eaa000760..51960149606 100644
--- a/src/mame/drivers/supertnk.c
+++ b/src/mame/drivers/supertnk.c
@@ -105,13 +105,11 @@ CRU lines:
every 8 bytes */
#define NUM_PENS (8)
-class supertnk_state : public driver_data_t
+class supertnk_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, supertnk_state(machine)); }
-
- supertnk_state(running_machine &machine)
- : driver_data_t(machine) { }
+ supertnk_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *videoram[3];
UINT8 rom_bank;
diff --git a/src/mame/drivers/suprgolf.c b/src/mame/drivers/suprgolf.c
index c9b63658ed2..b5e563f1bd9 100644
--- a/src/mame/drivers/suprgolf.c
+++ b/src/mame/drivers/suprgolf.c
@@ -24,13 +24,11 @@
#include "sound/2203intf.h"
#include "sound/msm5205.h"
-class suprgolf_state : public driver_data_t
+class suprgolf_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, suprgolf_state(machine)); }
-
- suprgolf_state(running_machine &machine)
- : driver_data_t(machine) { }
+ suprgolf_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
tilemap_t *tilemap;
UINT8 *videoram;
diff --git a/src/mame/drivers/suprloco.c b/src/mame/drivers/suprloco.c
index ba091a3734c..cef0621c774 100644
--- a/src/mame/drivers/suprloco.c
+++ b/src/mame/drivers/suprloco.c
@@ -164,7 +164,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( suprloco, driver_data_t )
+static MACHINE_CONFIG_START( suprloco, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz (?) */
diff --git a/src/mame/drivers/suprnova.c b/src/mame/drivers/suprnova.c
index 282949141fe..c0c165a7986 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_CONFIG_START( skns, driver_data_t )
+static MACHINE_CONFIG_START( skns, driver_device )
MDRV_CPU_ADD("maincpu", SH2,28638000)
MDRV_CPU_PROGRAM_MAP(skns_map)
MDRV_CPU_VBLANK_INT_HACK(skns_interrupt,2)
diff --git a/src/mame/drivers/suprridr.c b/src/mame/drivers/suprridr.c
index b2cd3f6dcd3..6dcc25c365f 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_CONFIG_START( suprridr, driver_data_t )
+static MACHINE_CONFIG_START( suprridr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_49_152MHz/16) /* 3 MHz */
diff --git a/src/mame/drivers/system1.c b/src/mame/drivers/system1.c
index 56e59318ba4..c424e656b9a 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_CONFIG_START( sys1ppi, driver_data_t )
+static MACHINE_CONFIG_START( sys1ppi, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK) /* not really, see notes above */
diff --git a/src/mame/drivers/tagteam.c b/src/mame/drivers/tagteam.c
index 48f39ac416e..894371c7199 100644
--- a/src/mame/drivers/tagteam.c
+++ b/src/mame/drivers/tagteam.c
@@ -226,7 +226,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( tagteam, driver_data_t )
+static MACHINE_CONFIG_START( tagteam, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1500000) /* 1.5 MHz ?? */
diff --git a/src/mame/drivers/taito_f3.c b/src/mame/drivers/taito_f3.c
index 71a639abbcd..bcdf6242a72 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_CONFIG_START( f3, driver_data_t )
+static MACHINE_CONFIG_START( f3, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, XTAL_16MHz)
@@ -485,7 +485,7 @@ static GFXDECODE_START( bubsympb )
GFXDECODE_ENTRY( NULL, 0x000000, pivotlayout, 0, 64 ) /* Dynamically modified */
GFXDECODE_END
-static MACHINE_CONFIG_START( bubsympb, driver_data_t )
+static MACHINE_CONFIG_START( bubsympb, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, XTAL_16MHz)
MDRV_CPU_PROGRAM_MAP(f3_map)
diff --git a/src/mame/drivers/taitogn.c b/src/mame/drivers/taitogn.c
index 5d7c3140956..1a920c36f25 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_CONFIG_START( coh3002t, driver_data_t )
+static MACHINE_CONFIG_START( coh3002t, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD( "maincpu", PSXCPU, XTAL_100MHz )
MDRV_CPU_PROGRAM_MAP( zn_map)
diff --git a/src/mame/drivers/taitopjc.c b/src/mame/drivers/taitopjc.c
index b4997df1a68..3b09245de2c 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_CONFIG_START( taitopjc, driver_data_t )
+static MACHINE_CONFIG_START( taitopjc, driver_device )
MDRV_CPU_ADD("maincpu", PPC603E, 100000000)
MDRV_CPU_CONFIG(ppc603e_config)
MDRV_CPU_PROGRAM_MAP(ppc603e_mem)
diff --git a/src/mame/drivers/taitosj.c b/src/mame/drivers/taitosj.c
index a1ffa2fce41..69b5773330c 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_CONFIG_START( nomcu, driver_data_t )
+static MACHINE_CONFIG_START( nomcu, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,8000000/2) /* 4 MHz */
diff --git a/src/mame/drivers/taitotz.c b/src/mame/drivers/taitotz.c
index 1b770f11609..719ecba937f 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_CONFIG_START( taitotz, driver_data_t )
+static MACHINE_CONFIG_START( taitotz, driver_device )
MDRV_CPU_ADD("maincpu", PPC603E, 100000000)
MDRV_CPU_CONFIG(ppc603e_config)
MDRV_CPU_PROGRAM_MAP(ppc603e_mem)
diff --git a/src/mame/drivers/taitowlf.c b/src/mame/drivers/taitowlf.c
index 9b43e741e62..8806ce88691 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_CONFIG_START( taitowlf, driver_data_t )
+static MACHINE_CONFIG_START( taitowlf, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PENTIUM, 200000000)
diff --git a/src/mame/drivers/tank8.c b/src/mame/drivers/tank8.c
index 7714be84ccd..65d1848a598 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_CONFIG_START( tank8, driver_data_t )
+static MACHINE_CONFIG_START( tank8, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, 11055000 / 10) /* ? */
diff --git a/src/mame/drivers/tankbatt.c b/src/mame/drivers/tankbatt.c
index 1d863539c00..77488f998b1 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_CONFIG_START( tankbatt, driver_data_t )
+static MACHINE_CONFIG_START( tankbatt, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 1000000) /* 1 MHz ???? */
diff --git a/src/mame/drivers/tankbust.c b/src/mame/drivers/tankbust.c
index a099bae11a8..d7c9a02ddb3 100644
--- a/src/mame/drivers/tankbust.c
+++ b/src/mame/drivers/tankbust.c
@@ -339,7 +339,7 @@ static MACHINE_RESET( tankbust )
}
-static MACHINE_CONFIG_START( tankbust, driver_data_t )
+static MACHINE_CONFIG_START( tankbust, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz ? */
diff --git a/src/mame/drivers/taotaido.c b/src/mame/drivers/taotaido.c
index c0b9863fa18..1d59aeac781 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_CONFIG_START( taotaido, driver_data_t )
+static MACHINE_CONFIG_START( taotaido, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 32000000/2)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
diff --git a/src/mame/drivers/targeth.c b/src/mame/drivers/targeth.c
index ae96772093d..1b8111ffc93 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_CONFIG_START( targeth, driver_data_t )
+static MACHINE_CONFIG_START( targeth, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz */
diff --git a/src/mame/drivers/tatsumi.c b/src/mame/drivers/tatsumi.c
index ac968576681..7cd06f525cf 100644
--- a/src/mame/drivers/tatsumi.c
+++ b/src/mame/drivers/tatsumi.c
@@ -855,7 +855,7 @@ static MACHINE_RESET( apache3 )
}
-static MACHINE_CONFIG_START( apache3, driver_data_t )
+static MACHINE_CONFIG_START( apache3, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, CLOCK_1 / 2)
@@ -901,7 +901,7 @@ static MACHINE_CONFIG_START( apache3, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.75)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( roundup5, driver_data_t )
+static MACHINE_CONFIG_START( roundup5, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, CLOCK_1 / 2)
@@ -943,7 +943,7 @@ static MACHINE_CONFIG_START( roundup5, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.75)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( cyclwarr, driver_data_t )
+static MACHINE_CONFIG_START( cyclwarr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CLOCK_2 / 4)
@@ -986,7 +986,7 @@ static MACHINE_CONFIG_START( cyclwarr, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.75)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( bigfight, driver_data_t )
+static MACHINE_CONFIG_START( bigfight, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CLOCK_2 / 4)
diff --git a/src/mame/drivers/tattack.c b/src/mame/drivers/tattack.c
index 129ca86bb7c..e6e96aec1bd 100644
--- a/src/mame/drivers/tattack.c
+++ b/src/mame/drivers/tattack.c
@@ -180,7 +180,7 @@ static PALETTE_INIT( tattack )
}
-static MACHINE_CONFIG_START( tattack, driver_data_t )
+static MACHINE_CONFIG_START( tattack, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 8000000 / 2) /* 4 MHz ? */
diff --git a/src/mame/drivers/taxidrvr.c b/src/mame/drivers/taxidrvr.c
index 6a526b3b034..91d59ab167f 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_CONFIG_START( taxidrvr, driver_data_t )
+static MACHINE_CONFIG_START( taxidrvr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,4000000) /* 4 MHz ??? */
diff --git a/src/mame/drivers/tbowl.c b/src/mame/drivers/tbowl.c
index 2d7c6a60785..26d2444cdf9 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_CONFIG_START( tbowl, driver_data_t )
+static MACHINE_CONFIG_START( tbowl, driver_device )
/* CPU on Board '6206B' */
MDRV_CPU_ADD("maincpu", Z80, 8000000) /* NEC D70008AC-8 (Z80 Clone) */
diff --git a/src/mame/drivers/tceptor.c b/src/mame/drivers/tceptor.c
index 83c509fd33e..db02e05b41b 100644
--- a/src/mame/drivers/tceptor.c
+++ b/src/mame/drivers/tceptor.c
@@ -377,7 +377,7 @@ static MACHINE_RESET( tceptor )
/*******************************************************************/
-static MACHINE_CONFIG_START( tceptor, driver_data_t )
+static MACHINE_CONFIG_START( tceptor, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 49152000/32)
diff --git a/src/mame/drivers/tcl.c b/src/mame/drivers/tcl.c
index 08d33da3256..328872aaaa0 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_CONFIG_START( tcl, driver_data_t )
+static MACHINE_CONFIG_START( tcl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/4)
diff --git a/src/mame/drivers/tecmo.c b/src/mame/drivers/tecmo.c
index a29bd1be196..2b48ea5cced 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_CONFIG_START( rygar, driver_data_t )
+static MACHINE_CONFIG_START( rygar, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_24MHz/4) /* verified on pcb */
@@ -735,7 +735,7 @@ static MACHINE_CONFIG_DERIVED( silkworm, gemini )
MACHINE_CONFIG_END
#ifdef UNUSED_CODE
-static MACHINE_CONFIG_START( backfirt, driver_data_t )
+static MACHINE_CONFIG_START( backfirt, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_24MHz/4)
diff --git a/src/mame/drivers/tecmo16.c b/src/mame/drivers/tecmo16.c
index bbd56b2234b..85951d372b0 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_CONFIG_START( fstarfrc, driver_data_t )
+static MACHINE_CONFIG_START( fstarfrc, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12MHz */
diff --git a/src/mame/drivers/tecmosys.c b/src/mame/drivers/tecmosys.c
index 09d1e0f46ae..005380d2f95 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_CONFIG_START( deroon, driver_data_t )
+static MACHINE_CONFIG_START( deroon, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 16000000)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
diff --git a/src/mame/drivers/tehkanwc.c b/src/mame/drivers/tehkanwc.c
index 7381660006b..12fe33f4d3d 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_CONFIG_START( tehkanwc, driver_data_t )
+static MACHINE_CONFIG_START( tehkanwc, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/4) /* 18.432000 / 4 */
diff --git a/src/mame/drivers/tempest.c b/src/mame/drivers/tempest.c
index 14aa62e66e3..e825aefbbf4 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_CONFIG_START( tempest, driver_data_t )
+static MACHINE_CONFIG_START( tempest, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK / 8)
diff --git a/src/mame/drivers/terracre.c b/src/mame/drivers/terracre.c
index 667a67241df..c6760777750 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_CONFIG_START( amazon, driver_data_t )
+static MACHINE_CONFIG_START( amazon, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 8000000 )
MDRV_CPU_PROGRAM_MAP(amazon_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -578,7 +578,7 @@ static MACHINE_CONFIG_START( amazon, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( ym3526, driver_data_t )
+static MACHINE_CONFIG_START( ym3526, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 8000000 )
MDRV_CPU_PROGRAM_MAP(terracre_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -615,7 +615,7 @@ static MACHINE_CONFIG_START( ym3526, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( ym2203, driver_data_t )
+static MACHINE_CONFIG_START( ym2203, driver_device )
MDRV_CPU_ADD("maincpu", M68000, 8000000) /* 8 MHz?? */
MDRV_CPU_PROGRAM_MAP(terracre_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
diff --git a/src/mame/drivers/tetrisp2.c b/src/mame/drivers/tetrisp2.c
index 7a33011d0f1..1218db716ec 100644
--- a/src/mame/drivers/tetrisp2.c
+++ b/src/mame/drivers/tetrisp2.c
@@ -1106,7 +1106,7 @@ static DRIVER_INIT( rockn3 )
}
-static MACHINE_CONFIG_START( tetrisp2, driver_data_t )
+static MACHINE_CONFIG_START( tetrisp2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -1139,7 +1139,7 @@ static MACHINE_CONFIG_START( tetrisp2, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( nndmseal, driver_data_t )
+static MACHINE_CONFIG_START( nndmseal, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz)
@@ -1170,7 +1170,7 @@ static MACHINE_CONFIG_START( nndmseal, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( rockn, driver_data_t )
+static MACHINE_CONFIG_START( rockn, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -1202,7 +1202,7 @@ static MACHINE_CONFIG_START( rockn, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( rockn2, driver_data_t )
+static MACHINE_CONFIG_START( rockn2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
@@ -1234,7 +1234,7 @@ static MACHINE_CONFIG_START( rockn2, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( rocknms, driver_data_t )
+static MACHINE_CONFIG_START( rocknms, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000)
diff --git a/src/mame/drivers/tgtpanic.c b/src/mame/drivers/tgtpanic.c
index 0fa963654af..446dac39ccd 100644
--- a/src/mame/drivers/tgtpanic.c
+++ b/src/mame/drivers/tgtpanic.c
@@ -117,7 +117,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( tgtpanic, driver_data_t )
+static MACHINE_CONFIG_START( tgtpanic, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_4MHz)
diff --git a/src/mame/drivers/thayers.c b/src/mame/drivers/thayers.c
index de277235d81..a9b5b6c6170 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_CONFIG_START( thayers, driver_data_t )
+static MACHINE_CONFIG_START( thayers, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_4MHz)
MDRV_CPU_PROGRAM_MAP(thayers_map)
diff --git a/src/mame/drivers/thedeep.c b/src/mame/drivers/thedeep.c
index 6140b59c846..9fe47868537 100644
--- a/src/mame/drivers/thedeep.c
+++ b/src/mame/drivers/thedeep.c
@@ -349,7 +349,7 @@ static INTERRUPT_GEN( thedeep_interrupt )
}
}
-static MACHINE_CONFIG_START( thedeep, driver_data_t )
+static MACHINE_CONFIG_START( thedeep, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_12MHz/2) /* verified on pcb */
diff --git a/src/mame/drivers/thepit.c b/src/mame/drivers/thepit.c
index e70478529b0..8e8bf994e71 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_CONFIG_START( thepit, driver_data_t )
+static MACHINE_CONFIG_START( thepit, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, PIXEL_CLOCK/2) /* 3.072 MHz */
diff --git a/src/mame/drivers/thief.c b/src/mame/drivers/thief.c
index 6520152a1bb..5eac44348a3 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_CONFIG_START( sharkatt, driver_data_t )
+static MACHINE_CONFIG_START( sharkatt, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz? */
@@ -486,7 +486,7 @@ static MACHINE_CONFIG_START( sharkatt, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( thief, driver_data_t )
+static MACHINE_CONFIG_START( thief, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz? */
@@ -524,7 +524,7 @@ static MACHINE_CONFIG_START( thief, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( natodef, driver_data_t )
+static MACHINE_CONFIG_START( natodef, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz? */
diff --git a/src/mame/drivers/thoop2.c b/src/mame/drivers/thoop2.c
index d44c1dafd69..c73d11e8832 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_CONFIG_START( thoop2, driver_data_t )
+static MACHINE_CONFIG_START( thoop2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,24000000/2) /* 12 MHz */
diff --git a/src/mame/drivers/tiamc1.c b/src/mame/drivers/tiamc1.c
index 91b866e58b7..b7f77773eb0 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_CONFIG_START( tiamc1, driver_data_t )
+static MACHINE_CONFIG_START( tiamc1, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080,16000000/9) /* 16 MHz */
MDRV_CPU_PROGRAM_MAP(tiamc1_map)
diff --git a/src/mame/drivers/tickee.c b/src/mame/drivers/tickee.c
index 6cb63b26a2b..1fb5643a946 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_CONFIG_START( tickee, driver_data_t )
+static MACHINE_CONFIG_START( tickee, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, XTAL_40MHz)
@@ -768,7 +768,7 @@ static MACHINE_CONFIG_DERIVED( ghoshunt, tickee )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( rapidfir, driver_data_t )
+static MACHINE_CONFIG_START( rapidfir, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, XTAL_50MHz)
@@ -796,7 +796,7 @@ static MACHINE_CONFIG_START( rapidfir, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( mouseatk, driver_data_t )
+static MACHINE_CONFIG_START( mouseatk, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", TMS34010, XTAL_40MHz)
diff --git a/src/mame/drivers/tigeroad.c b/src/mame/drivers/tigeroad.c
index 19923e37119..e405c4caf47 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_CONFIG_START( tigeroad, driver_data_t )
+static MACHINE_CONFIG_START( tigeroad, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_10MHz) /* verified on pcb */
diff --git a/src/mame/drivers/timelimt.c b/src/mame/drivers/timelimt.c
index 39a0bb9af4d..27572e1a297 100644
--- a/src/mame/drivers/timelimt.c
+++ b/src/mame/drivers/timelimt.c
@@ -241,7 +241,7 @@ static INTERRUPT_GEN( timelimt_irq ) {
/***************************************************************************/
-static MACHINE_CONFIG_START( timelimt, driver_data_t )
+static MACHINE_CONFIG_START( timelimt, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5000000) /* 5.000 MHz */
diff --git a/src/mame/drivers/timetrv.c b/src/mame/drivers/timetrv.c
index 4b6f089062e..6d6a514c1a0 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_CONFIG_START( timetrv, driver_data_t )
+static MACHINE_CONFIG_START( timetrv, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",I80188,20000000) //???
diff --git a/src/mame/drivers/tmaster.c b/src/mame/drivers/tmaster.c
index a265307783a..d278961c8ad 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_CONFIG_START( tm3k, driver_data_t )
+static MACHINE_CONFIG_START( tm3k, driver_device )
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz / 2) /* 12MHz */
MDRV_CPU_PROGRAM_MAP(tmaster_map)
MDRV_CPU_VBLANK_INT_HACK(tm3k_interrupt,2+20) // ??
@@ -936,7 +936,7 @@ static MACHINE_RESET( galgames )
machine->device("maincpu")->reset();
}
-static MACHINE_CONFIG_START( galgames, driver_data_t )
+static MACHINE_CONFIG_START( galgames, driver_device )
MDRV_CPU_ADD("maincpu", M68000, XTAL_24MHz / 2)
MDRV_CPU_PROGRAM_MAP(galgames_map)
MDRV_CPU_VBLANK_INT_HACK(galgames_interrupt, 1+20) // ??
diff --git a/src/mame/drivers/tmmjprd.c b/src/mame/drivers/tmmjprd.c
index 70e2be1c050..a1eb526550c 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_CONFIG_START( tmmjprd, driver_data_t )
+static MACHINE_CONFIG_START( tmmjprd, driver_device )
MDRV_CPU_ADD("maincpu",M68EC020,24000000) /* 24 MHz */
MDRV_CPU_PROGRAM_MAP(tmmjprd_map)
MDRV_CPU_VBLANK_INT_HACK(tmmjprd_interrupt,2)
diff --git a/src/mame/drivers/toki.c b/src/mame/drivers/toki.c
index 657a6008e97..228ffa34837 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_CONFIG_START( toki, driver_data_t ) /* KOYO 20.000MHz near the cpu */
+static MACHINE_CONFIG_START( toki, driver_device ) /* KOYO 20.000MHz near the cpu */
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,XTAL_20MHz /2) /* verified on pcb */
@@ -459,7 +459,7 @@ static MACHINE_CONFIG_START( toki, driver_data_t ) /* KOYO 20.000MHz near the cp
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( tokib, driver_data_t )
+static MACHINE_CONFIG_START( tokib, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 12000000) /* 10MHz causes bad slowdowns with monkey machine rd1 */
diff --git a/src/mame/drivers/tokyocop.c b/src/mame/drivers/tokyocop.c
index cd4d8de53e6..0573a355adb 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_CONFIG_START( tokyocop, driver_data_t )
+static MACHINE_CONFIG_START( tokyocop, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PENTIUM, 2000000000) /* Pentium4? */
MDRV_CPU_PROGRAM_MAP(tokyocop_map)
diff --git a/src/mame/drivers/tomcat.c b/src/mame/drivers/tomcat.c
index 2bc1968061c..99cc9c9ba90 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_CONFIG_START( tomcat, driver_data_t )
+static MACHINE_CONFIG_START( tomcat, driver_device )
MDRV_CPU_ADD("maincpu", M68010, XTAL_12MHz / 2)
MDRV_CPU_PROGRAM_MAP(tomcat_map)
MDRV_CPU_VBLANK_INT_HACK(irq1_line_assert, 5)
diff --git a/src/mame/drivers/toratora.c b/src/mame/drivers/toratora.c
index 6a3361f1a5b..635a2795307 100644
--- a/src/mame/drivers/toratora.c
+++ b/src/mame/drivers/toratora.c
@@ -23,13 +23,11 @@ TODO:
#include "sound/sn76477.h"
-class toratora_state : public driver_data_t
+class toratora_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, toratora_state(machine)); }
-
- toratora_state(running_machine &machine)
- : driver_data_t(machine) { }
+ toratora_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/drivers/tourtabl.c b/src/mame/drivers/tourtabl.c
index 58aee67a6af..4fd89695308 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_CONFIG_START( tourtabl, driver_data_t )
+static MACHINE_CONFIG_START( tourtabl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, MASTER_CLOCK / 3) /* actually M6507 */
MDRV_CPU_PROGRAM_MAP(main_map)
diff --git a/src/mame/drivers/tp84.c b/src/mame/drivers/tp84.c
index 3bc27ae6443..09c8c79978b 100644
--- a/src/mame/drivers/tp84.c
+++ b/src/mame/drivers/tp84.c
@@ -291,7 +291,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( tp84, driver_data_t )
+static MACHINE_CONFIG_START( tp84, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("cpu1",M6809, XTAL_18_432MHz/12) /* verified on pcb */
diff --git a/src/mame/drivers/triforce.c b/src/mame/drivers/triforce.c
index 371487d7b91..0dfcbc68ca5 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_CONFIG_START( triforce_base, driver_data_t )
+static MACHINE_CONFIG_START( triforce_base, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000) /* Wrong! */
diff --git a/src/mame/drivers/triplhnt.c b/src/mame/drivers/triplhnt.c
index 3ee66d25285..1612d384557 100644
--- a/src/mame/drivers/triplhnt.c
+++ b/src/mame/drivers/triplhnt.c
@@ -309,7 +309,7 @@ static PALETTE_INIT( triplhnt )
}
-static MACHINE_CONFIG_START( triplhnt, driver_data_t )
+static MACHINE_CONFIG_START( triplhnt, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6800, 800000)
diff --git a/src/mame/drivers/truco.c b/src/mame/drivers/truco.c
index f7c0647e827..be3317d25a3 100644
--- a/src/mame/drivers/truco.c
+++ b/src/mame/drivers/truco.c
@@ -135,7 +135,7 @@ static INTERRUPT_GEN( truco_interrupt )
}
-static MACHINE_CONFIG_START( truco, driver_data_t )
+static MACHINE_CONFIG_START( truco, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 750000) /* ?? guess */
diff --git a/src/mame/drivers/trucocl.c b/src/mame/drivers/trucocl.c
index a00079df2e5..829304a1a86 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_CONFIG_START( trucocl, driver_data_t )
+static MACHINE_CONFIG_START( trucocl, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6)
MDRV_CPU_PROGRAM_MAP(main_map)
diff --git a/src/mame/drivers/trvmadns.c b/src/mame/drivers/trvmadns.c
index b06c6ecf132..12fea56e836 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_CONFIG_START( trvmadns, driver_data_t )
+static MACHINE_CONFIG_START( trvmadns, driver_device )
MDRV_CPU_ADD("maincpu", Z80,10000000/2) // ?
MDRV_CPU_PROGRAM_MAP(cpu_map)
MDRV_CPU_IO_MAP(io_map)
diff --git a/src/mame/drivers/tryout.c b/src/mame/drivers/tryout.c
index 15431efe336..2a2e3f53949 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_CONFIG_START( tryout, driver_data_t )
+static MACHINE_CONFIG_START( tryout, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 2000000) /* ? */
MDRV_CPU_PROGRAM_MAP(main_cpu)
diff --git a/src/mame/drivers/tsamurai.c b/src/mame/drivers/tsamurai.c
index 8831087b848..cd975667de9 100644
--- a/src/mame/drivers/tsamurai.c
+++ b/src/mame/drivers/tsamurai.c
@@ -661,7 +661,7 @@ GFXDECODE_END
/*******************************************************************************/
-static MACHINE_CONFIG_START( tsamurai, driver_data_t )
+static MACHINE_CONFIG_START( tsamurai, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000)
@@ -704,7 +704,7 @@ static MACHINE_CONFIG_START( tsamurai, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( m660, driver_data_t )
+static MACHINE_CONFIG_START( m660, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000)
@@ -752,7 +752,7 @@ static MACHINE_CONFIG_START( m660, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( vsgongf, driver_data_t )
+static MACHINE_CONFIG_START( vsgongf, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000)
diff --git a/src/mame/drivers/ttchamp.c b/src/mame/drivers/ttchamp.c
index 907cf224036..f5178a00921 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_CONFIG_START( ttchamp, driver_data_t )
+static MACHINE_CONFIG_START( ttchamp, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, 8000000)
MDRV_CPU_PROGRAM_MAP(ttchamp_map)
diff --git a/src/mame/drivers/tubep.c b/src/mame/drivers/tubep.c
index 775a23c7782..0af8aee2eed 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_CONFIG_START( tubep, driver_data_t )
+static MACHINE_CONFIG_START( tubep, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,16000000 / 4) /* 4 MHz */
@@ -954,7 +954,7 @@ static MACHINE_CONFIG_DERIVED( tubepb, tubep )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( rjammer, driver_data_t )
+static MACHINE_CONFIG_START( rjammer, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",Z80,16000000 / 4) /* 4 MHz */
diff --git a/src/mame/drivers/tugboat.c b/src/mame/drivers/tugboat.c
index 61834094545..8ade9910948 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_CONFIG_START( tugboat, driver_data_t )
+static MACHINE_CONFIG_START( tugboat, driver_device )
MDRV_CPU_ADD("maincpu", M6502, 2000000) /* 2 MHz ???? */
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", nmi_line_pulse)
diff --git a/src/mame/drivers/turrett.c b/src/mame/drivers/turrett.c
index 435d6d3de62..d40f2ece918 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_CONFIG_START( turrett, driver_data_t )
+static MACHINE_CONFIG_START( turrett, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R3041BE, R3041_CLOCK)
MDRV_CPU_PROGRAM_MAP(cpu_map)
diff --git a/src/mame/drivers/twin16.c b/src/mame/drivers/twin16.c
index 2ecd6ac1a4e..7e193e40308 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_CONFIG_START( twin16, driver_data_t )
+static MACHINE_CONFIG_START( twin16, driver_device )
// basic machine hardware
MDRV_CPU_ADD("maincpu", M68000, XTAL_18_432MHz/2)
MDRV_CPU_PROGRAM_MAP(main_map)
@@ -772,7 +772,7 @@ static MACHINE_CONFIG_DERIVED( devilw, twin16 )
MDRV_QUANTUM_TIME(HZ(60000)) // watchdog reset otherwise
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( fround, driver_data_t )
+static MACHINE_CONFIG_START( fround, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000)
MDRV_CPU_PROGRAM_MAP(fround_map)
diff --git a/src/mame/drivers/twincobr.c b/src/mame/drivers/twincobr.c
index bc1c534d2f2..b3b371d8707 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_CONFIG_START( twincobr, driver_data_t )
+static MACHINE_CONFIG_START( twincobr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, XTAL_28MHz/4) /* 7MHz - Main board Crystal is 28MHz */
diff --git a/src/mame/drivers/twinkle.c b/src/mame/drivers/twinkle.c
index 16fea0c3df0..4e0c5d877eb 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_CONFIG_START( twinkle, driver_data_t )
+static MACHINE_CONFIG_START( twinkle, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PSXCPU, XTAL_67_7376MHz )
MDRV_CPU_PROGRAM_MAP( main_map )
diff --git a/src/mame/drivers/twins.c b/src/mame/drivers/twins.c
index 6ca5bef0875..a2c1d2f7ec6 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_CONFIG_START( twins, driver_data_t )
+static MACHINE_CONFIG_START( twins, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, 8000000)
MDRV_CPU_PROGRAM_MAP(twins_map)
@@ -254,7 +254,7 @@ static ADDRESS_MAP_START( twinsa_io, ADDRESS_SPACE_IO, 16 )
ADDRESS_MAP_END
-static MACHINE_CONFIG_START( twinsa, driver_data_t )
+static MACHINE_CONFIG_START( twinsa, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", V30, XTAL_16MHz/2) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(twins_map)
diff --git a/src/mame/drivers/tx1.c b/src/mame/drivers/tx1.c
index 3e78393e545..7a9f777bc32 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_CONFIG_START( tx1, driver_data_t )
+static MACHINE_CONFIG_START( tx1, driver_device )
MDRV_CPU_ADD("main_cpu", I8086, CPU_MASTER_CLOCK / 3)
MDRV_CPU_PROGRAM_MAP(tx1_main)
// MDRV_WATCHDOG_TIME_INIT(5)
@@ -753,7 +753,7 @@ static MACHINE_CONFIG_START( tx1, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( buggyboy, driver_data_t )
+static MACHINE_CONFIG_START( buggyboy, driver_device )
MDRV_CPU_ADD("main_cpu", I8086, CPU_MASTER_CLOCK / 3)
MDRV_CPU_PROGRAM_MAP(buggyboy_main)
// MDRV_WATCHDOG_TIME_INIT(5)
@@ -808,7 +808,7 @@ static MACHINE_CONFIG_START( buggyboy, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( buggybjr, driver_data_t )
+static MACHINE_CONFIG_START( buggybjr, driver_device )
MDRV_CPU_ADD("main_cpu", I8086, CPU_MASTER_CLOCK / 3)
MDRV_CPU_PROGRAM_MAP(buggybjr_main)
// MDRV_WATCHDOG_TIME_INIT(5)
diff --git a/src/mame/drivers/uapce.c b/src/mame/drivers/uapce.c
index 4a78f764eed..9fa8c9e6851 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_CONFIG_START( uapce, driver_data_t )
+static MACHINE_CONFIG_START( uapce, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", H6280, PCE_MAIN_CLOCK/3)
MDRV_CPU_PROGRAM_MAP(pce_mem)
diff --git a/src/mame/drivers/ultratnk.c b/src/mame/drivers/ultratnk.c
index d2c7261c367..515d49512a6 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_CONFIG_START( ultratnk, driver_data_t )
+static MACHINE_CONFIG_START( ultratnk, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, PIXEL_CLOCK / 8)
diff --git a/src/mame/drivers/ultrsprt.c b/src/mame/drivers/ultrsprt.c
index bec4fd46f3d..d36f0a325e4 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_CONFIG_START( ultrsprt, driver_data_t )
+static MACHINE_CONFIG_START( ultrsprt, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 25000000) /* PowerPC 403GA 25MHz */
MDRV_CPU_PROGRAM_MAP(ultrsprt_map)
diff --git a/src/mame/drivers/undrfire.c b/src/mame/drivers/undrfire.c
index 46282c9869e..38ad7616352 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_CONFIG_START( undrfire, driver_data_t )
+static MACHINE_CONFIG_START( undrfire, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz */
@@ -749,7 +749,7 @@ static MACHINE_CONFIG_START( undrfire, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( cbombers, driver_data_t )
+static MACHINE_CONFIG_START( cbombers, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000) /* 16 MHz */
diff --git a/src/mame/drivers/unico.c b/src/mame/drivers/unico.c
index f110c90ce4e..ed97a2e7636 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_CONFIG_START( burglarx, driver_data_t )
+static MACHINE_CONFIG_START( burglarx, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -647,7 +647,7 @@ static MACHINE_RESET( zeropt )
MACHINE_RESET_CALL(unico);
}
-static MACHINE_CONFIG_START( zeropnt, driver_data_t )
+static MACHINE_CONFIG_START( zeropnt, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 16000000)
@@ -688,7 +688,7 @@ MACHINE_CONFIG_END
Zero Point 2
***************************************************************************/
-static MACHINE_CONFIG_START( zeropnt2, driver_data_t )
+static MACHINE_CONFIG_START( zeropnt2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68EC020, 16000000)
diff --git a/src/mame/drivers/upscope.c b/src/mame/drivers/upscope.c
index 29cd194cc4c..315c716ef2a 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_CONFIG_START( upscope, driver_data_t )
+static MACHINE_CONFIG_START( upscope, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, AMIGA_68000_NTSC_CLOCK)
diff --git a/src/mame/drivers/usgames.c b/src/mame/drivers/usgames.c
index ce4756730bb..070f24f8a0c 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_CONFIG_START( usg32, driver_data_t )
+static MACHINE_CONFIG_START( usg32, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, 2000000) /* ?? */
diff --git a/src/mame/drivers/vamphalf.c b/src/mame/drivers/vamphalf.c
index 895c863844a..bd0de827634 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_CONFIG_START( common, driver_data_t )
+static MACHINE_CONFIG_START( common, driver_device )
MDRV_CPU_ADD("maincpu", E116T, 50000000) /* 50 MHz */
MDRV_CPU_PROGRAM_MAP(common_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
@@ -803,7 +803,7 @@ static MACHINE_CONFIG_DERIVED( mrkicker, common )
MDRV_FRAGMENT_ADD(sound_ym_oki)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( aoh, driver_data_t )
+static MACHINE_CONFIG_START( aoh, driver_device )
MDRV_CPU_ADD("maincpu", E132XN, 20000000*4) /* 4x internal multiplier */
MDRV_CPU_PROGRAM_MAP(aoh_map)
MDRV_CPU_IO_MAP(aoh_io)
diff --git a/src/mame/drivers/vball.c b/src/mame/drivers/vball.c
index 42866241b80..1a04bc4852a 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_CONFIG_START( vball, driver_data_t )
+static MACHINE_CONFIG_START( vball, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, CPU_CLOCK) /* 2 MHz - measured by guru but it makes the game far far too slow ?! */
diff --git a/src/mame/drivers/vcombat.c b/src/mame/drivers/vcombat.c
index c370ebdb877..008f01163dd 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_CONFIG_START( vcombat, driver_data_t )
+static MACHINE_CONFIG_START( vcombat, driver_device )
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_assert)
@@ -596,7 +596,7 @@ static MACHINE_CONFIG_START( vcombat, driver_data_t )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( shadfgtr, driver_data_t )
+static MACHINE_CONFIG_START( shadfgtr, driver_device )
MDRV_CPU_ADD("maincpu", M68000, XTAL_12MHz)
MDRV_CPU_PROGRAM_MAP(main_map)
MDRV_CPU_VBLANK_INT("screen", irq1_line_assert)
diff --git a/src/mame/drivers/vega.c b/src/mame/drivers/vega.c
index 88c03a3ee39..06b6e8bcf3b 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_CONFIG_START( vega, driver_data_t )
+static MACHINE_CONFIG_START( vega, driver_device )
MDRV_CPU_ADD("maincpu", I8035, 6000000) // what CPU? what speed?
MDRV_CPU_PROGRAM_MAP(vega_map)
diff --git a/src/mame/drivers/vegaeo.c b/src/mame/drivers/vegaeo.c
index f115efd6a39..dafa816e97e 100644
--- a/src/mame/drivers/vegaeo.c
+++ b/src/mame/drivers/vegaeo.c
@@ -162,7 +162,7 @@ static VIDEO_UPDATE( vega )
}
-static MACHINE_CONFIG_START( vega, driver_data_t )
+static MACHINE_CONFIG_START( vega, driver_device )
MDRV_CPU_ADD("maincpu", GMS30C2132, 55000000) /* 55 MHz */
MDRV_CPU_PROGRAM_MAP(vega_map)
MDRV_CPU_VBLANK_INT_HACK(eolith_speedup,262)
diff --git a/src/mame/drivers/vegas.c b/src/mame/drivers/vegas.c
index 2c8a610cebb..1ad3da265b9 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_CONFIG_START( vegascore, driver_data_t )
+static MACHINE_CONFIG_START( vegascore, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", R5000LE, SYSTEM_CLOCK*2)
diff --git a/src/mame/drivers/vertigo.c b/src/mame/drivers/vertigo.c
index 4a39e81541e..25093c45e13 100644
--- a/src/mame/drivers/vertigo.c
+++ b/src/mame/drivers/vertigo.c
@@ -104,7 +104,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( vertigo, driver_data_t )
+static MACHINE_CONFIG_START( vertigo, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 8000000)
diff --git a/src/mame/drivers/vicdual.c b/src/mame/drivers/vicdual.c
index e5a55b37628..30e86567558 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_CONFIG_START( vicdual_root, driver_data_t )
+static MACHINE_CONFIG_START( vicdual_root, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, VICDUAL_MAIN_CPU_CLOCK)
diff --git a/src/mame/drivers/victory.c b/src/mame/drivers/victory.c
index 48b5dda2d16..95b96f20737 100644
--- a/src/mame/drivers/victory.c
+++ b/src/mame/drivers/victory.c
@@ -207,7 +207,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( victory, driver_data_t )
+static MACHINE_CONFIG_START( victory, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, VICTORY_MAIN_CPU_CLOCK)
diff --git a/src/mame/drivers/videopin.c b/src/mame/drivers/videopin.c
index 0affa758020..41da39062dc 100644
--- a/src/mame/drivers/videopin.c
+++ b/src/mame/drivers/videopin.c
@@ -321,7 +321,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_CONFIG_START( videopin, driver_data_t )
+static MACHINE_CONFIG_START( videopin, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6502, 12096000 / 16)
diff --git a/src/mame/drivers/videopkr.c b/src/mame/drivers/videopkr.c
index db7f6eeb77b..a30eb37b81c 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_CONFIG_START( videopkr, driver_data_t )
+static MACHINE_CONFIG_START( videopkr, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8039, CPU_CLOCK)
diff --git a/src/mame/drivers/vigilant.c b/src/mame/drivers/vigilant.c
index c0bfeec5ce4..bf7c4b7d243 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_CONFIG_START( vigilant, driver_data_t )
+static MACHINE_CONFIG_START( vigilant, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3579645) /* 3.579645 MHz */
@@ -567,7 +567,7 @@ static MACHINE_CONFIG_START( vigilant, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( buccanrs, driver_data_t )
+static MACHINE_CONFIG_START( buccanrs, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 5688800) /* 5.688800 MHz */
@@ -627,7 +627,7 @@ static MACHINE_CONFIG_START( buccanrs, driver_data_t )
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.35)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( kikcubic, driver_data_t )
+static MACHINE_CONFIG_START( kikcubic, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 3579645) /* 3.579645 MHz */
diff --git a/src/mame/drivers/viper.c b/src/mame/drivers/viper.c
index d1459cd1272..57b2dc19f2b 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_CONFIG_START( viper, driver_data_t )
+static MACHINE_CONFIG_START( viper, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", MPC8240, 200000000)
diff --git a/src/mame/drivers/vp101.c b/src/mame/drivers/vp101.c
index 5eb587f00c3..3d4e41b7a0d 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_CONFIG_START( vp101, driver_data_t )
+static MACHINE_CONFIG_START( vp101, driver_device )
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)
diff --git a/src/mame/drivers/vpoker.c b/src/mame/drivers/vpoker.c
index 23b1ce79de5..e67c4523abe 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_CONFIG_START( vpoker, driver_data_t )
+static MACHINE_CONFIG_START( vpoker, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu",M6809,XTAL_4MHz)
diff --git a/src/mame/drivers/vroulet.c b/src/mame/drivers/vroulet.c
index de51085a5d0..481832e5728 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_CONFIG_START( vroulet, driver_data_t )
+static MACHINE_CONFIG_START( vroulet, driver_device )
// basic machine hardware
MDRV_CPU_ADD("maincpu", Z80, 4000000) //???
MDRV_CPU_PROGRAM_MAP(vroulet_map)
diff --git a/src/mame/drivers/vsnes.c b/src/mame/drivers/vsnes.c
index e5072291768..f43938d313f 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_CONFIG_START( vsnes, driver_data_t )
+static MACHINE_CONFIG_START( vsnes, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", N2A03,N2A03_DEFAULTCLOCK)
@@ -1704,7 +1704,7 @@ static MACHINE_CONFIG_DERIVED( topgun, vsnes )
MDRV_PPU2C05_04_ADD("ppu1", vsnes_ppu_interface_1)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( vsdual, driver_data_t )
+static MACHINE_CONFIG_START( vsdual, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", N2A03,N2A03_DEFAULTCLOCK)
diff --git a/src/mame/drivers/vulgus.c b/src/mame/drivers/vulgus.c
index 76972f9b0bf..58c894f6817 100644
--- a/src/mame/drivers/vulgus.c
+++ b/src/mame/drivers/vulgus.c
@@ -230,7 +230,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( vulgus, driver_data_t )
+static MACHINE_CONFIG_START( vulgus, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz (?) */
diff --git a/src/mame/drivers/wallc.c b/src/mame/drivers/wallc.c
index de3cafd3200..a43c19568d0 100644
--- a/src/mame/drivers/wallc.c
+++ b/src/mame/drivers/wallc.c
@@ -275,7 +275,7 @@ static DRIVER_INIT( wallca )
-static MACHINE_CONFIG_START( wallc, driver_data_t )
+static MACHINE_CONFIG_START( wallc, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 12288000 / 4) /* 3.072 MHz ? */
MDRV_CPU_PROGRAM_MAP(wallc_map)
diff --git a/src/mame/drivers/wardner.c b/src/mame/drivers/wardner.c
index 8febb9aa22b..4028f6da910 100644
--- a/src/mame/drivers/wardner.c
+++ b/src/mame/drivers/wardner.c
@@ -392,7 +392,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( wardner, driver_data_t )
+static MACHINE_CONFIG_START( wardner, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_24MHz/4) /* 6MHz */
diff --git a/src/mame/drivers/warpwarp.c b/src/mame/drivers/warpwarp.c
index 0ea8972c104..88f17fb5cab 100644
--- a/src/mame/drivers/warpwarp.c
+++ b/src/mame/drivers/warpwarp.c
@@ -722,7 +722,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( geebee, driver_data_t )
+static MACHINE_CONFIG_START( geebee, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, MASTER_CLOCK/9) /* verified on pcb */
@@ -761,7 +761,7 @@ static MACHINE_CONFIG_DERIVED( navarone, geebee )
MDRV_VIDEO_UPDATE(navarone)
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( bombbee, driver_data_t )
+static MACHINE_CONFIG_START( bombbee, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, MASTER_CLOCK/9) /* 18.432 MHz / 9 */
diff --git a/src/mame/drivers/wc90.c b/src/mame/drivers/wc90.c
index aeefdcee853..bcb9b61df38 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_CONFIG_START( wc90, driver_data_t )
+static MACHINE_CONFIG_START( wc90, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, XTAL_8MHz) /* verified on pcb */
diff --git a/src/mame/drivers/wc90b.c b/src/mame/drivers/wc90b.c
index d8df08dd55b..5fe0b9f14d5 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_CONFIG_START( wc90b, driver_data_t )
+static MACHINE_CONFIG_START( wc90b, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, MASTER_CLOCK)
diff --git a/src/mame/drivers/wecleman.c b/src/mame/drivers/wecleman.c
index c26dd2eda5f..17f45695807 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_CONFIG_START( wecleman, driver_data_t )
+static MACHINE_CONFIG_START( wecleman, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* Schems show 10MHz */
@@ -1123,7 +1123,7 @@ static const k051316_interface hotchase_k051316_intf_1 =
hotchase_zoom_callback_1
};
-static MACHINE_CONFIG_START( hotchase, driver_data_t )
+static MACHINE_CONFIG_START( hotchase, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 10000000) /* 10 MHz - PCB is drawn in one set's readme */
diff --git a/src/mame/drivers/wheelfir.c b/src/mame/drivers/wheelfir.c
index 8aa82200a0a..63b55b11891 100644
--- a/src/mame/drivers/wheelfir.c
+++ b/src/mame/drivers/wheelfir.c
@@ -225,16 +225,11 @@ struct scroll_info
};
-class wheelfir_state : public driver_data_t
+class wheelfir_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine)
- {
- return auto_alloc_clear(&machine, wheelfir_state(machine));
- }
-
- wheelfir_state(running_machine &machine)
- : driver_data_t(machine) { }
+ wheelfir_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
running_device *maincpu;
running_device *subcpu;
diff --git a/src/mame/drivers/williams.c b/src/mame/drivers/williams.c
index 38bba18a142..8dd4e57635c 100644
--- a/src/mame/drivers/williams.c
+++ b/src/mame/drivers/williams.c
@@ -1426,7 +1426,7 @@ GFXDECODE_END
*
*************************************/
-static MACHINE_CONFIG_START( defender, driver_data_t )
+static MACHINE_CONFIG_START( defender, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/3/4)
@@ -1603,7 +1603,7 @@ static MACHINE_CONFIG_DERIVED( blastkit, blaster )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( williams2, driver_data_t )
+static MACHINE_CONFIG_START( williams2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, MASTER_CLOCK/3/4)
diff --git a/src/mame/drivers/wink.c b/src/mame/drivers/wink.c
index 739f53afed6..84bee6d6535 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_CONFIG_START( wink, driver_data_t )
+static MACHINE_CONFIG_START( wink, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 12000000 / 4)
MDRV_CPU_PROGRAM_MAP(wink_map)
diff --git a/src/mame/drivers/wiping.c b/src/mame/drivers/wiping.c
index 5f8946fb702..2b5f3275afe 100644
--- a/src/mame/drivers/wiping.c
+++ b/src/mame/drivers/wiping.c
@@ -278,7 +278,7 @@ GFXDECODE_END
-static MACHINE_CONFIG_START( wiping, driver_data_t )
+static MACHINE_CONFIG_START( wiping, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,18432000/6) /* 3.072 MHz */
diff --git a/src/mame/drivers/witch.c b/src/mame/drivers/witch.c
index 22c3829215e..a685552fefb 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_CONFIG_START( witch, driver_data_t )
+static MACHINE_CONFIG_START( witch, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,8000000) /* ? MHz */
MDRV_CPU_PROGRAM_MAP(map_main)
diff --git a/src/mame/drivers/wiz.c b/src/mame/drivers/wiz.c
index eca9dc5eabd..9bc5f595077 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_CONFIG_START( wiz, driver_data_t )
+static MACHINE_CONFIG_START( wiz, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz ??? */
diff --git a/src/mame/drivers/wldarrow.c b/src/mame/drivers/wldarrow.c
index f541618c7ae..7f803270fa2 100644
--- a/src/mame/drivers/wldarrow.c
+++ b/src/mame/drivers/wldarrow.c
@@ -344,7 +344,7 @@ INPUT_PORTS_END
*
*************************************/
-static MACHINE_CONFIG_START( wldarrow, driver_data_t )
+static MACHINE_CONFIG_START( wldarrow, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", I8080, 2000000)
diff --git a/src/mame/drivers/wolfpack.c b/src/mame/drivers/wolfpack.c
index a637d3a8ae4..cdc25a8fd21 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_CONFIG_START( wolfpack, driver_data_t )
+static MACHINE_CONFIG_START( wolfpack, driver_device )
MDRV_SPEAKER_STANDARD_MONO("mono")
/* basic machine hardware */
diff --git a/src/mame/drivers/wrally.c b/src/mame/drivers/wrally.c
index 07d8892ea1a..57bedd047e5 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_CONFIG_START( wrally, driver_data_t )
+static MACHINE_CONFIG_START( wrally, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000,XTAL_24MHz/2) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(wrally_map)
diff --git a/src/mame/drivers/wwfwfest.c b/src/mame/drivers/wwfwfest.c
index 9ff25031b96..adf373afd16 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_CONFIG_START( wwfwfest, driver_data_t )
+static MACHINE_CONFIG_START( wwfwfest, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, CPU_CLOCK) /* 24 crystal, 12 rated chip */
diff --git a/src/mame/drivers/xain.c b/src/mame/drivers/xain.c
index 65361f86fa1..625ccf23d42 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_CONFIG_START( xsleena, driver_data_t )
+static MACHINE_CONFIG_START( xsleena, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M6809, CPU_CLOCK)
diff --git a/src/mame/drivers/xorworld.c b/src/mame/drivers/xorworld.c
index 553503a5e0f..0403586537c 100644
--- a/src/mame/drivers/xorworld.c
+++ b/src/mame/drivers/xorworld.c
@@ -179,7 +179,7 @@ static INTERRUPT_GEN( xorworld_interrupt )
}
-static MACHINE_CONFIG_START( xorworld, driver_data_t )
+static MACHINE_CONFIG_START( xorworld, driver_device )
// basic machine hardware
MDRV_CPU_ADD("maincpu", M68000, 10000000) // 10 MHz
MDRV_CPU_PROGRAM_MAP(xorworld_map)
diff --git a/src/mame/drivers/xtheball.c b/src/mame/drivers/xtheball.c
index 165575655a7..3d923521412 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_CONFIG_START( xtheball, driver_data_t )
+static MACHINE_CONFIG_START( xtheball, driver_device )
MDRV_CPU_ADD("maincpu", TMS34010, 40000000)
MDRV_CPU_CONFIG(tms_config)
diff --git a/src/mame/drivers/xxmissio.c b/src/mame/drivers/xxmissio.c
index ae03f8574b2..2f5e344c73b 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_CONFIG_START( xxmissio, driver_data_t )
+static MACHINE_CONFIG_START( xxmissio, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,12000000/4) /* 3.0MHz */
diff --git a/src/mame/drivers/zac2650.c b/src/mame/drivers/zac2650.c
index b1bdf2fec1a..6bce75bf2fb 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_CONFIG_START( tinvader, driver_data_t )
+static MACHINE_CONFIG_START( tinvader, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", S2650, 3800000/4)
diff --git a/src/mame/drivers/zaccaria.c b/src/mame/drivers/zaccaria.c
index 078f56dc466..1c86bf9b54e 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_CONFIG_START( zaccaria, driver_data_t )
+static MACHINE_CONFIG_START( zaccaria, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", Z80,XTAL_18_432MHz/6) /* verified on pcb */
diff --git a/src/mame/drivers/zn.c b/src/mame/drivers/zn.c
index f0ca5b9c440..0fb894344e4 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_CONFIG_START( zn1_1mb_vram, driver_data_t )
+static MACHINE_CONFIG_START( zn1_1mb_vram, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD( "maincpu", PSXCPU, XTAL_67_7376MHz )
MDRV_CPU_PROGRAM_MAP( zn_map)
@@ -503,7 +503,7 @@ static MACHINE_CONFIG_DERIVED( zn1_2mb_vram, zn1_1mb_vram )
MDRV_SCREEN_SIZE( 1024, 1024 )
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( zn2, driver_data_t )
+static MACHINE_CONFIG_START( zn2, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD( "maincpu", PSXCPU, XTAL_100MHz )
MDRV_CPU_PROGRAM_MAP( zn_map)
diff --git a/src/mame/drivers/zr107.c b/src/mame/drivers/zr107.c
index 4b457080015..001da971d57 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_CONFIG_START( zr107, driver_data_t )
+static MACHINE_CONFIG_START( zr107, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000/2) /* PowerPC 403GA 32MHz */
@@ -770,7 +770,7 @@ static const k001604_interface jetwave_k001604_intf =
0 /* slrasslt hack */
};
-static MACHINE_CONFIG_START( jetwave, driver_data_t )
+static MACHINE_CONFIG_START( jetwave, driver_device )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", PPC403GA, 64000000/2) /* PowerPC 403GA 32MHz */
diff --git a/src/mame/includes/1942.h b/src/mame/includes/1942.h
index ab53e2cb696..89718fe2d84 100644
--- a/src/mame/includes/1942.h
+++ b/src/mame/includes/1942.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class _1942_state : public driver_data_t
+class _1942_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, _1942_state(machine)); }
-
- _1942_state(running_machine &machine)
- : driver_data_t(machine) { }
+ _1942_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * fg_videoram;
diff --git a/src/mame/includes/1943.h b/src/mame/includes/1943.h
index 67b72ec130c..babed5918b5 100644
--- a/src/mame/includes/1943.h
+++ b/src/mame/includes/1943.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class _1943_state : public driver_data_t
+class _1943_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, _1943_state(machine)); }
-
- _1943_state(running_machine &machine)
- : driver_data_t(machine) { }
+ _1943_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/20pacgal.h b/src/mame/includes/20pacgal.h
index 81a0a625b59..101c91fe2f5 100644
--- a/src/mame/includes/20pacgal.h
+++ b/src/mame/includes/20pacgal.h
@@ -7,13 +7,11 @@
***************************************************************************/
-class _20pacgal_state : public driver_data_t
+class _20pacgal_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, _20pacgal_state(machine)); }
-
- _20pacgal_state(running_machine &machine)
- : driver_data_t(machine) { }
+ _20pacgal_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 *char_gfx_ram;
diff --git a/src/mame/includes/4enraya.h b/src/mame/includes/4enraya.h
index 3c38f97ee97..8298f063305 100644
--- a/src/mame/includes/4enraya.h
+++ b/src/mame/includes/4enraya.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class _4enraya_state : public driver_data_t
+class _4enraya_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, _4enraya_state(machine)); }
-
- _4enraya_state(running_machine &machine)
- : driver_data_t(machine) { }
+ _4enraya_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/88games.h b/src/mame/includes/88games.h
index cc3b5be8112..797a7194d78 100644
--- a/src/mame/includes/88games.h
+++ b/src/mame/includes/88games.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class _88games_state : public driver_data_t
+class _88games_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, _88games_state(machine)); }
-
- _88games_state(running_machine &machine)
- : driver_data_t(machine) { }
+ _88games_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram;
diff --git a/src/mame/includes/actfancr.h b/src/mame/includes/actfancr.h
index 25fa68997be..77edfc67877 100644
--- a/src/mame/includes/actfancr.h
+++ b/src/mame/includes/actfancr.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class actfancr_state : public driver_data_t
+class actfancr_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, actfancr_state(machine)); }
-
- actfancr_state(running_machine &machine)
- : driver_data_t(machine) { }
+ actfancr_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * pf1_data;
diff --git a/src/mame/includes/aeroboto.h b/src/mame/includes/aeroboto.h
index f10a04c2aa0..a9a02ebe522 100644
--- a/src/mame/includes/aeroboto.h
+++ b/src/mame/includes/aeroboto.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class aeroboto_state : public driver_data_t
+class aeroboto_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, aeroboto_state(machine)); }
-
- aeroboto_state(running_machine &machine)
- : driver_data_t(machine) { }
+ aeroboto_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * mainram;
diff --git a/src/mame/includes/aerofgt.h b/src/mame/includes/aerofgt.h
index 9d90c1af122..e3aacfcb812 100644
--- a/src/mame/includes/aerofgt.h
+++ b/src/mame/includes/aerofgt.h
@@ -1,11 +1,9 @@
-class aerofgt_state : public driver_data_t
+class aerofgt_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, aerofgt_state(machine)); }
-
- aerofgt_state(running_machine &machine)
- : driver_data_t(machine) { }
+ aerofgt_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bg1videoram;
diff --git a/src/mame/includes/airbustr.h b/src/mame/includes/airbustr.h
index d4b97108f4c..898eeaac754 100644
--- a/src/mame/includes/airbustr.h
+++ b/src/mame/includes/airbustr.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class airbustr_state : public driver_data_t
+class airbustr_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, airbustr_state(machine)); }
-
- airbustr_state(running_machine &machine)
- : driver_data_t(machine) { }
+ airbustr_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/ajax.h b/src/mame/includes/ajax.h
index 59f6d428983..a0e34c3d4c8 100644
--- a/src/mame/includes/ajax.h
+++ b/src/mame/includes/ajax.h
@@ -1,11 +1,9 @@
-class ajax_state : public driver_data_t
+class ajax_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ajax_state(machine)); }
-
- ajax_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ajax_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT8 * paletteram; // currently this uses generic palette handling
diff --git a/src/mame/includes/aliens.h b/src/mame/includes/aliens.h
index 1704ff019d4..4544abd3a27 100644
--- a/src/mame/includes/aliens.h
+++ b/src/mame/includes/aliens.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class aliens_state : public driver_data_t
+class aliens_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, aliens_state(machine)); }
-
- aliens_state(running_machine &machine)
- : driver_data_t(machine) { }
+ aliens_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram;
diff --git a/src/mame/includes/alpha68k.h b/src/mame/includes/alpha68k.h
index 2805d763bc8..38bd42bda97 100644
--- a/src/mame/includes/alpha68k.h
+++ b/src/mame/includes/alpha68k.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class alpha68k_state : public driver_data_t
+class alpha68k_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, alpha68k_state(machine)); }
-
- alpha68k_state(running_machine &machine)
- : driver_data_t(machine) { }
+ alpha68k_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/includes/ambush.h b/src/mame/includes/ambush.h
index a194760bb59..73d06abb092 100644
--- a/src/mame/includes/ambush.h
+++ b/src/mame/includes/ambush.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class ambush_state : public driver_data_t
+class ambush_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ambush_state(machine)); }
-
- ambush_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ambush_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/amspdwy.h b/src/mame/includes/amspdwy.h
index fe3f09d2a0e..f82bd3f0649 100644
--- a/src/mame/includes/amspdwy.h
+++ b/src/mame/includes/amspdwy.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class amspdwy_state : public driver_data_t
+class amspdwy_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, amspdwy_state(machine)); }
-
- amspdwy_state(running_machine &machine)
- : driver_data_t(machine) { }
+ amspdwy_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/angelkds.h b/src/mame/includes/angelkds.h
index 5a536462a58..c4ab2197f85 100644
--- a/src/mame/includes/angelkds.h
+++ b/src/mame/includes/angelkds.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class angelkds_state : public driver_data_t
+class angelkds_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, angelkds_state(machine)); }
-
- angelkds_state(running_machine &machine)
- : driver_data_t(machine) { }
+ angelkds_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * paletteram;
diff --git a/src/mame/includes/appoooh.h b/src/mame/includes/appoooh.h
index 6b80d3c37b4..697b1b612f6 100644
--- a/src/mame/includes/appoooh.h
+++ b/src/mame/includes/appoooh.h
@@ -1,12 +1,10 @@
-class appoooh_state : public driver_data_t
+class appoooh_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, appoooh_state(machine)); }
-
- appoooh_state(running_machine &machine)
- : driver_data_t(machine) { }
+ appoooh_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bg_videoram;
diff --git a/src/mame/includes/aquarium.h b/src/mame/includes/aquarium.h
index 1d6bbbd666d..3f494d882ff 100644
--- a/src/mame/includes/aquarium.h
+++ b/src/mame/includes/aquarium.h
@@ -1,13 +1,11 @@
-class aquarium_state : public driver_data_t
+class aquarium_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, aquarium_state(machine)); }
-
- aquarium_state(running_machine &machine)
- : driver_data_t(machine) { }
+ aquarium_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * scroll;
diff --git a/src/mame/includes/arabian.h b/src/mame/includes/arabian.h
index 2f220edd207..477d7aab5cf 100644
--- a/src/mame/includes/arabian.h
+++ b/src/mame/includes/arabian.h
@@ -6,13 +6,11 @@
***************************************************************************/
-class arabian_state : public driver_data_t
+class arabian_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, arabian_state(machine)); }
-
- arabian_state(running_machine &machine)
- : driver_data_t(machine) { }
+ arabian_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * blitter;
diff --git a/src/mame/includes/arkanoid.h b/src/mame/includes/arkanoid.h
index 4aac1f3819b..fff98988402 100644
--- a/src/mame/includes/arkanoid.h
+++ b/src/mame/includes/arkanoid.h
@@ -10,13 +10,11 @@ enum {
PADDLE2
};
-class arkanoid_state : public driver_data_t
+class arkanoid_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, arkanoid_state(machine)); }
-
- arkanoid_state(running_machine &machine)
- : driver_data_t(machine) { }
+ arkanoid_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/armedf.h b/src/mame/includes/armedf.h
index 6150d16c06a..945045814a2 100644
--- a/src/mame/includes/armedf.h
+++ b/src/mame/includes/armedf.h
@@ -2,13 +2,11 @@
-class armedf_state : public driver_data_t
+class armedf_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, armedf_state(machine)); }
-
- armedf_state(running_machine &machine)
- : driver_data_t(machine) { }
+ armedf_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * text_videoram;
diff --git a/src/mame/includes/ashnojoe.h b/src/mame/includes/ashnojoe.h
index ed729caac54..3c0bfc425e7 100644
--- a/src/mame/includes/ashnojoe.h
+++ b/src/mame/includes/ashnojoe.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class ashnojoe_state : public driver_data_t
+class ashnojoe_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ashnojoe_state(machine)); }
-
- ashnojoe_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ashnojoe_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * tileram;
diff --git a/src/mame/includes/asterix.h b/src/mame/includes/asterix.h
index 5cbf0fb707d..aac0da640f8 100644
--- a/src/mame/includes/asterix.h
+++ b/src/mame/includes/asterix.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class asterix_state : public driver_data_t
+class asterix_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, asterix_state(machine)); }
-
- asterix_state(running_machine &machine)
- : driver_data_t(machine) { }
+ asterix_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT16 * paletteram; // currently this uses generic palette handling
diff --git a/src/mame/includes/astrof.h b/src/mame/includes/astrof.h
index 8ea4232b741..83caa604a95 100644
--- a/src/mame/includes/astrof.h
+++ b/src/mame/includes/astrof.h
@@ -4,13 +4,11 @@
****************************************************************************/
-class astrof_state : public driver_data_t
+class astrof_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, astrof_state(machine)); }
-
- astrof_state(running_machine &machine)
- : driver_data_t(machine) { }
+ astrof_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
UINT8 * videoram;
diff --git a/src/mame/includes/asuka.h b/src/mame/includes/asuka.h
index 1dc6d0cbd7c..52cb3c8115b 100644
--- a/src/mame/includes/asuka.h
+++ b/src/mame/includes/asuka.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class asuka_state : public driver_data_t
+class asuka_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, asuka_state(machine)); }
-
- asuka_state(running_machine &machine)
- : driver_data_t(machine) { }
+ asuka_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT16 * paletteram; // this currently uses generic palette handlers
diff --git a/src/mame/includes/atarifb.h b/src/mame/includes/atarifb.h
index 9e37f0d6246..6634336e74b 100644
--- a/src/mame/includes/atarifb.h
+++ b/src/mame/includes/atarifb.h
@@ -15,13 +15,11 @@
#define ATARIFB_HIT_EN NODE_05
-class atarifb_state : public driver_data_t
+class atarifb_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, atarifb_state(machine)); }
-
- atarifb_state(running_machine &machine)
- : driver_data_t(machine) { }
+ atarifb_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
UINT8 * alphap1_videoram;
diff --git a/src/mame/includes/atarig1.h b/src/mame/includes/atarig1.h
index caf29315511..d5121c0d0e7 100644
--- a/src/mame/includes/atarig1.h
+++ b/src/mame/includes/atarig1.h
@@ -9,10 +9,8 @@
class atarig1_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, atarig1_state(machine)); }
-
- atarig1_state(running_machine &machine)
- : atarigen_state(machine) { }
+ atarig1_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT8 is_pitfight;
diff --git a/src/mame/includes/atarig42.h b/src/mame/includes/atarig42.h
index b26277c6a51..409dd1aa2da 100644
--- a/src/mame/includes/atarig42.h
+++ b/src/mame/includes/atarig42.h
@@ -9,10 +9,8 @@
class atarig42_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, atarig42_state(machine)); }
-
- atarig42_state(running_machine &machine)
- : atarigen_state(machine) { }
+ atarig42_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT16 playfield_base;
UINT16 motion_object_base;
diff --git a/src/mame/includes/atarigt.h b/src/mame/includes/atarigt.h
index a702ef83490..f8258cca90c 100644
--- a/src/mame/includes/atarigt.h
+++ b/src/mame/includes/atarigt.h
@@ -14,10 +14,8 @@
class atarigt_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, atarigt_state(machine)); }
-
- atarigt_state(running_machine &machine)
- : atarigen_state(machine) { }
+ atarigt_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT8 is_primrage;
UINT16 * colorram;
diff --git a/src/mame/includes/atarigx2.h b/src/mame/includes/atarigx2.h
index 325094c1e01..b796500f585 100644
--- a/src/mame/includes/atarigx2.h
+++ b/src/mame/includes/atarigx2.h
@@ -9,10 +9,8 @@
class atarigx2_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, atarigx2_state(machine)); }
-
- atarigx2_state(running_machine &machine)
- : atarigen_state(machine) { }
+ atarigx2_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT16 playfield_base;
UINT16 motion_object_base;
diff --git a/src/mame/includes/atarisy1.h b/src/mame/includes/atarisy1.h
index 9af5b52e8c9..c2933757df0 100644
--- a/src/mame/includes/atarisy1.h
+++ b/src/mame/includes/atarisy1.h
@@ -9,10 +9,8 @@
class atarisy1_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, atarisy1_state(machine)); }
-
- atarisy1_state(running_machine &machine)
- : atarigen_state(machine),
+ atarisy1_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config),
joystick_timer(machine.device<timer_device>("joystick_timer")),
yscroll_reset_timer(machine.device<timer_device>("yreset_timer")),
scanline_timer(machine.device<timer_device>("scan_timer")),
diff --git a/src/mame/includes/atarisy2.h b/src/mame/includes/atarisy2.h
index 34ed5d64568..02659298660 100644
--- a/src/mame/includes/atarisy2.h
+++ b/src/mame/includes/atarisy2.h
@@ -9,10 +9,8 @@
class atarisy2_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, atarisy2_state(machine)); }
-
- atarisy2_state(running_machine &machine)
- : atarigen_state(machine) { }
+ atarisy2_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT16 * slapstic_base;
diff --git a/src/mame/includes/avalnche.h b/src/mame/includes/avalnche.h
index 74453b5265a..b62ca72ef1e 100644
--- a/src/mame/includes/avalnche.h
+++ b/src/mame/includes/avalnche.h
@@ -7,13 +7,11 @@
#include "sound/discrete.h"
-class avalnche_state : public driver_data_t
+class avalnche_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, avalnche_state(machine)); }
-
- avalnche_state(running_machine &machine)
- : driver_data_t(machine) { }
+ avalnche_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
UINT8 * videoram;
diff --git a/src/mame/includes/badlands.h b/src/mame/includes/badlands.h
index 61cdff0be45..c311f70cc61 100644
--- a/src/mame/includes/badlands.h
+++ b/src/mame/includes/badlands.h
@@ -9,10 +9,8 @@
class badlands_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, badlands_state(machine)); }
-
- badlands_state(running_machine &machine)
- : atarigen_state(machine) { }
+ badlands_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT8 pedal_value[2];
diff --git a/src/mame/includes/balsente.h b/src/mame/includes/balsente.h
index 1e56b54769f..95ad446df2c 100644
--- a/src/mame/includes/balsente.h
+++ b/src/mame/includes/balsente.h
@@ -26,13 +26,11 @@
#define POLY17_ADD 0x18000
-class balsente_state : public driver_data_t
+class balsente_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, balsente_state(machine)); }
-
- balsente_state(running_machine &machine)
- : driver_data_t(machine),
+ balsente_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
scanline_timer(machine.device<timer_device>("scan_timer")),
counter_0_timer(machine.device<timer_device>("8253_0_timer"))
{
diff --git a/src/mame/includes/bankp.h b/src/mame/includes/bankp.h
index c1777b86599..0f948917d73 100644
--- a/src/mame/includes/bankp.h
+++ b/src/mame/includes/bankp.h
@@ -9,13 +9,11 @@
#define BANKP_CPU_CLOCK (BANKP_MASTER_CLOCK/6)
#define BANKP_SN76496_CLOCK (BANKP_MASTER_CLOCK/6)
-class bankp_state : public driver_data_t
+class bankp_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bankp_state(machine)); }
-
- bankp_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bankp_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/batman.h b/src/mame/includes/batman.h
index fb54170c1c7..8760463dba9 100644
--- a/src/mame/includes/batman.h
+++ b/src/mame/includes/batman.h
@@ -9,10 +9,8 @@
class batman_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, batman_state(machine)); }
-
- batman_state(running_machine &machine)
- : atarigen_state(machine) { }
+ batman_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT16 latch_data;
diff --git a/src/mame/includes/battlane.h b/src/mame/includes/battlane.h
index cce9989a2e1..d1541a58af3 100644
--- a/src/mame/includes/battlane.h
+++ b/src/mame/includes/battlane.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class battlane_state : public driver_data_t
+class battlane_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, battlane_state(machine)); }
-
- battlane_state(running_machine &machine)
- : driver_data_t(machine) { }
+ battlane_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * tileram;
diff --git a/src/mame/includes/battlex.h b/src/mame/includes/battlex.h
index 5fa99d823c3..1b8b8d4044a 100644
--- a/src/mame/includes/battlex.h
+++ b/src/mame/includes/battlex.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class battlex_state : public driver_data_t
+class battlex_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, battlex_state(machine)); }
-
- battlex_state(running_machine &machine)
- : driver_data_t(machine) { }
+ battlex_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/battlnts.h b/src/mame/includes/battlnts.h
index 91a8c10b043..2134056529f 100644
--- a/src/mame/includes/battlnts.h
+++ b/src/mame/includes/battlnts.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class battlnts_state : public driver_data_t
+class battlnts_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, battlnts_state(machine)); }
-
- battlnts_state(running_machine &machine)
- : driver_data_t(machine) { }
+ battlnts_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT8 * paletteram; // this currently uses generic palette handling
diff --git a/src/mame/includes/bbusters.h b/src/mame/includes/bbusters.h
index d629a8bc8b6..addc67ec350 100644
--- a/src/mame/includes/bbusters.h
+++ b/src/mame/includes/bbusters.h
@@ -1,10 +1,8 @@
-class bbusters_state : public driver_data_t
+class bbusters_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bbusters_state(machine)); }
-
- bbusters_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bbusters_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 *videoram;
UINT16 *ram;
diff --git a/src/mame/includes/beathead.h b/src/mame/includes/beathead.h
index bc2fb7add6e..140c8d6444f 100644
--- a/src/mame/includes/beathead.h
+++ b/src/mame/includes/beathead.h
@@ -11,11 +11,13 @@
class beathead_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, beathead_state(machine)); }
+ beathead_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
- beathead_state(running_machine &machine)
- : atarigen_state(machine),
- m_maincpu(*machine.device<asap_device>("maincpu")) { }
+ virtual void find_devices()
+ {
+ required_device(m_maincpu, "maincpu");
+ }
virtual void machine_start();
virtual void machine_reset();
@@ -23,7 +25,7 @@ public:
virtual void video_start();
virtual bool video_update(screen_device &screen, bitmap_t &bitmap, const rectangle &cliprect);
- asap_device & m_maincpu;
+ asap_device * m_maincpu;
UINT32 * m_videoram;
UINT32 * m_paletteram;
diff --git a/src/mame/includes/bigevglf.h b/src/mame/includes/bigevglf.h
index fa2fe19af46..1ac95496bc2 100644
--- a/src/mame/includes/bigevglf.h
+++ b/src/mame/includes/bigevglf.h
@@ -1,11 +1,9 @@
-class bigevglf_state : public driver_data_t
+class bigevglf_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bigevglf_state(machine)); }
-
- bigevglf_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bigevglf_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * paletteram;
diff --git a/src/mame/includes/bigstrkb.h b/src/mame/includes/bigstrkb.h
index 73cd4fdb74c..3a0fe14f328 100644
--- a/src/mame/includes/bigstrkb.h
+++ b/src/mame/includes/bigstrkb.h
@@ -1,10 +1,8 @@
-class bigstrkb_state : public driver_data_t
+class bigstrkb_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bigstrkb_state(machine)); }
-
- bigstrkb_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bigstrkb_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
tilemap_t *tilemap;
tilemap_t *tilemap2;
diff --git a/src/mame/includes/bionicc.h b/src/mame/includes/bionicc.h
index 05da00a2431..88ccb28fc36 100644
--- a/src/mame/includes/bionicc.h
+++ b/src/mame/includes/bionicc.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class bionicc_state : public driver_data_t
+class bionicc_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bionicc_state(machine)); }
-
- bionicc_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bionicc_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bgvideoram;
diff --git a/src/mame/includes/bishi.h b/src/mame/includes/bishi.h
index d1a9428a69b..af4ab0bfe9c 100644
--- a/src/mame/includes/bishi.h
+++ b/src/mame/includes/bishi.h
@@ -7,13 +7,11 @@
#define CPU_CLOCK (XTAL_24MHz / 2) /* 68000 clock */
#define SOUND_CLOCK XTAL_16_9344MHz /* YMZ280 clock */
-class bishi_state : public driver_data_t
+class bishi_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bishi_state(machine)); }
-
- bishi_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bishi_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram;
diff --git a/src/mame/includes/bladestl.h b/src/mame/includes/bladestl.h
index 9aece9b324a..353ba35e344 100644
--- a/src/mame/includes/bladestl.h
+++ b/src/mame/includes/bladestl.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class bladestl_state : public driver_data_t
+class bladestl_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bladestl_state(machine)); }
-
- bladestl_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bladestl_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * paletteram;
diff --git a/src/mame/includes/blktiger.h b/src/mame/includes/blktiger.h
index 46ad02036ec..3d2dc8c1a7a 100644
--- a/src/mame/includes/blktiger.h
+++ b/src/mame/includes/blktiger.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class blktiger_state : public driver_data_t
+class blktiger_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, blktiger_state(machine)); }
-
- blktiger_state(running_machine &machine)
- : driver_data_t(machine) { }
+ blktiger_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * txvideoram;
diff --git a/src/mame/includes/blmbycar.h b/src/mame/includes/blmbycar.h
index 2893bd26e4e..492c157a620 100644
--- a/src/mame/includes/blmbycar.h
+++ b/src/mame/includes/blmbycar.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class blmbycar_state : public driver_data_t
+class blmbycar_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, blmbycar_state(machine)); }
-
- blmbycar_state(running_machine &machine)
- : driver_data_t(machine) { }
+ blmbycar_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * vram_0;
diff --git a/src/mame/includes/blockade.h b/src/mame/includes/blockade.h
index 8301e8d98e2..fbfe05e7130 100644
--- a/src/mame/includes/blockade.h
+++ b/src/mame/includes/blockade.h
@@ -1,13 +1,11 @@
#include "sound/discrete.h"
#include "sound/samples.h"
-class blockade_state : public driver_data_t
+class blockade_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, blockade_state(machine)); }
-
- blockade_state(running_machine &machine)
- : driver_data_t(machine) { }
+ blockade_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 * videoram;
diff --git a/src/mame/includes/blockhl.h b/src/mame/includes/blockhl.h
index 7492a647e2e..5ba99dbd819 100644
--- a/src/mame/includes/blockhl.h
+++ b/src/mame/includes/blockhl.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class blockhl_state : public driver_data_t
+class blockhl_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, blockhl_state(machine)); }
-
- blockhl_state(running_machine &machine)
- : driver_data_t(machine) { }
+ blockhl_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram;
diff --git a/src/mame/includes/blockout.h b/src/mame/includes/blockout.h
index 01ff3bcf8c0..f2d6d168eb6 100644
--- a/src/mame/includes/blockout.h
+++ b/src/mame/includes/blockout.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class blockout_state : public driver_data_t
+class blockout_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, blockout_state(machine)); }
-
- blockout_state(running_machine &machine)
- : driver_data_t(machine) { }
+ blockout_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/includes/blstroid.h b/src/mame/includes/blstroid.h
index 1fe51a28810..4afce0645d4 100644
--- a/src/mame/includes/blstroid.h
+++ b/src/mame/includes/blstroid.h
@@ -9,10 +9,8 @@
class blstroid_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, blstroid_state(machine)); }
-
- blstroid_state(running_machine &machine)
- : atarigen_state(machine) { }
+ blstroid_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT16 * priorityram;
};
diff --git a/src/mame/includes/blueprnt.h b/src/mame/includes/blueprnt.h
index 9812303a2c5..4553d5d3189 100644
--- a/src/mame/includes/blueprnt.h
+++ b/src/mame/includes/blueprnt.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class blueprnt_state : public driver_data_t
+class blueprnt_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, blueprnt_state(machine)); }
-
- blueprnt_state(running_machine &machine)
- : driver_data_t(machine) { }
+ blueprnt_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/bogeyman.h b/src/mame/includes/bogeyman.h
index 66c566aed86..cfdb22a75d1 100644
--- a/src/mame/includes/bogeyman.h
+++ b/src/mame/includes/bogeyman.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class bogeyman_state : public driver_data_t
+class bogeyman_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bogeyman_state(machine)); }
-
- bogeyman_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bogeyman_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/bombjack.h b/src/mame/includes/bombjack.h
index ae586822ba7..1a30181daf1 100644
--- a/src/mame/includes/bombjack.h
+++ b/src/mame/includes/bombjack.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class bombjack_state : public driver_data_t
+class bombjack_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bombjack_state(machine)); }
-
- bombjack_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bombjack_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/boogwing.h b/src/mame/includes/boogwing.h
index cca520bbf86..d215dc39f5e 100644
--- a/src/mame/includes/boogwing.h
+++ b/src/mame/includes/boogwing.h
@@ -7,13 +7,11 @@
#include "sound/okim6295.h"
#include "video/deco16ic.h"
-class boogwing_state : public driver_data_t
+class boogwing_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, boogwing_state(machine)); }
-
- boogwing_state(running_machine &machine)
- : driver_data_t(machine),
+ boogwing_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
maincpu(machine.device<cpu_device>("maincpu")),
audiocpu(machine.device<cpu_device>("audiocpu")),
deco16ic(machine.device<deco16ic_device>("deco_custom")),
diff --git a/src/mame/includes/bottom9.h b/src/mame/includes/bottom9.h
index faa5d78f119..92b7d5d98c0 100644
--- a/src/mame/includes/bottom9.h
+++ b/src/mame/includes/bottom9.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class bottom9_state : public driver_data_t
+class bottom9_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bottom9_state(machine)); }
-
- bottom9_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bottom9_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT8 * paletteram; // currently this uses generic palette handling
diff --git a/src/mame/includes/brkthru.h b/src/mame/includes/brkthru.h
index e5080c1f13f..bb4d1d3680b 100644
--- a/src/mame/includes/brkthru.h
+++ b/src/mame/includes/brkthru.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class brkthru_state : public driver_data_t
+class brkthru_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, brkthru_state(machine)); }
-
- brkthru_state(running_machine &machine)
- : driver_data_t(machine) { }
+ brkthru_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/bsktball.h b/src/mame/includes/bsktball.h
index 4aaaa33bd81..a2646dba2ee 100644
--- a/src/mame/includes/bsktball.h
+++ b/src/mame/includes/bsktball.h
@@ -13,13 +13,11 @@
#define BSKTBALL_BOUNCE_EN NODE_04
-class bsktball_state : public driver_data_t
+class bsktball_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bsktball_state(machine)); }
-
- bsktball_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bsktball_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/btime.h b/src/mame/includes/btime.h
index d0bd901111a..2c8001726c7 100644
--- a/src/mame/includes/btime.h
+++ b/src/mame/includes/btime.h
@@ -1,11 +1,9 @@
-class btime_state : public driver_data_t
+class btime_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, btime_state(machine)); }
-
- btime_state(running_machine &machine)
- : driver_data_t(machine) { }
+ btime_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/bublbobl.h b/src/mame/includes/bublbobl.h
index f74e72bf6cc..87e3de11c1a 100644
--- a/src/mame/includes/bublbobl.h
+++ b/src/mame/includes/bublbobl.h
@@ -1,11 +1,9 @@
-class bublbobl_state : public driver_data_t
+class bublbobl_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bublbobl_state(machine)); }
-
- bublbobl_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bublbobl_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * mcu_sharedram;
diff --git a/src/mame/includes/buggychl.h b/src/mame/includes/buggychl.h
index 837a32aff95..9ef9f6b939a 100644
--- a/src/mame/includes/buggychl.h
+++ b/src/mame/includes/buggychl.h
@@ -3,13 +3,11 @@
40love.c, bking.c and msisaac.c
*/
-class buggychl_state : public driver_data_t
+class buggychl_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, buggychl_state(machine)); }
-
- buggychl_state(running_machine &machine)
- : driver_data_t(machine) { }
+ buggychl_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram; // buggychl, 40love, msisaac
diff --git a/src/mame/includes/bwing.h b/src/mame/includes/bwing.h
index d4b608823cd..1c36178c028 100644
--- a/src/mame/includes/bwing.h
+++ b/src/mame/includes/bwing.h
@@ -7,13 +7,11 @@
#define BW_DEBUG 0
#define MAX_SOUNDS 16
-class bwing_state : public driver_data_t
+class bwing_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, bwing_state(machine)); }
-
- bwing_state(running_machine &machine)
- : driver_data_t(machine) { }
+ bwing_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/cabal.h b/src/mame/includes/cabal.h
index 4d24fc72b94..59b43da5040 100644
--- a/src/mame/includes/cabal.h
+++ b/src/mame/includes/cabal.h
@@ -1,10 +1,8 @@
-class cabal_state : public driver_data_t
+class cabal_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cabal_state(machine)); }
-
- cabal_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cabal_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 *spriteram;
UINT16 *colorram;
diff --git a/src/mame/includes/canyon.h b/src/mame/includes/canyon.h
index 43863ee54b0..2b92e8ecef1 100644
--- a/src/mame/includes/canyon.h
+++ b/src/mame/includes/canyon.h
@@ -17,13 +17,11 @@
-class canyon_state : public driver_data_t
+class canyon_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, canyon_state(machine)); }
-
- canyon_state(running_machine &machine)
- : driver_data_t(machine) { }
+ canyon_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/capbowl.h b/src/mame/includes/capbowl.h
index d0ee902f447..669231429a0 100644
--- a/src/mame/includes/capbowl.h
+++ b/src/mame/includes/capbowl.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class capbowl_state : public driver_data_t
+class capbowl_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, capbowl_state(machine)); }
-
- capbowl_state(running_machine &machine)
- : driver_data_t(machine) { }
+ capbowl_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * rowaddress;
diff --git a/src/mame/includes/carjmbre.h b/src/mame/includes/carjmbre.h
index f199441e955..835ad0dba56 100644
--- a/src/mame/includes/carjmbre.h
+++ b/src/mame/includes/carjmbre.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class carjmbre_state : public driver_data_t
+class carjmbre_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, carjmbre_state(machine)); }
-
- carjmbre_state(running_machine &machine)
- : driver_data_t(machine) { }
+ carjmbre_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/cave.h b/src/mame/includes/cave.h
index db637731605..f0868f09aa5 100644
--- a/src/mame/includes/cave.h
+++ b/src/mame/includes/cave.h
@@ -21,13 +21,11 @@ struct sprite_cave
#define MAX_PRIORITY 4
#define MAX_SPRITE_NUM 0x400
-class cave_state : public driver_data_t
+class cave_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cave_state(machine)); }
-
- cave_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cave_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoregs;
diff --git a/src/mame/includes/cbasebal.h b/src/mame/includes/cbasebal.h
index 758cd09b418..3b4c430cb19 100644
--- a/src/mame/includes/cbasebal.h
+++ b/src/mame/includes/cbasebal.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class cbasebal_state : public driver_data_t
+class cbasebal_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cbasebal_state(machine)); }
-
- cbasebal_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cbasebal_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * spriteram;
diff --git a/src/mame/includes/cbuster.h b/src/mame/includes/cbuster.h
index 8cb7620f02e..79f42a9a624 100644
--- a/src/mame/includes/cbuster.h
+++ b/src/mame/includes/cbuster.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class cbuster_state : public driver_data_t
+class cbuster_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cbuster_state(machine)); }
-
- cbuster_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cbuster_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * pf1_rowscroll;
diff --git a/src/mame/includes/ccastles.h b/src/mame/includes/ccastles.h
index 320ee4cd42d..a012d2579a4 100644
--- a/src/mame/includes/ccastles.h
+++ b/src/mame/includes/ccastles.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class ccastles_state : public driver_data_t
+class ccastles_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ccastles_state(machine)); }
-
- ccastles_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ccastles_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/chaknpop.h b/src/mame/includes/chaknpop.h
index aeb80d26007..7167293d4ca 100644
--- a/src/mame/includes/chaknpop.h
+++ b/src/mame/includes/chaknpop.h
@@ -3,13 +3,11 @@
#define MCU_INITIAL_SEED 0x81
-class chaknpop_state : public driver_data_t
+class chaknpop_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, chaknpop_state(machine)); }
-
- chaknpop_state(running_machine &machine)
- : driver_data_t(machine) { }
+ chaknpop_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * mcu_ram;
diff --git a/src/mame/includes/champbas.h b/src/mame/includes/champbas.h
index 116d9327d2e..094c2481a03 100644
--- a/src/mame/includes/champbas.h
+++ b/src/mame/includes/champbas.h
@@ -8,13 +8,11 @@
#define CPUTAG_MCU "mcu"
-class champbas_state : public driver_data_t
+class champbas_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, champbas_state(machine)); }
-
- champbas_state(running_machine &machine)
- : driver_data_t(machine) { }
+ champbas_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bg_videoram;
diff --git a/src/mame/includes/changela.h b/src/mame/includes/changela.h
index 48f6c38faba..2ff3492d474 100644
--- a/src/mame/includes/changela.h
+++ b/src/mame/includes/changela.h
@@ -1,12 +1,10 @@
-class changela_state : public driver_data_t
+class changela_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, changela_state(machine)); }
-
- changela_state(running_machine &machine)
- : driver_data_t(machine) { }
+ changela_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/cheekyms.h b/src/mame/includes/cheekyms.h
index f6d5298af32..98e005fbbfa 100644
--- a/src/mame/includes/cheekyms.h
+++ b/src/mame/includes/cheekyms.h
@@ -5,13 +5,11 @@
*************************************************************************/
-class cheekyms_state : public driver_data_t
+class cheekyms_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cheekyms_state(machine)); }
-
- cheekyms_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cheekyms_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/chqflag.h b/src/mame/includes/chqflag.h
index 6cecce00998..37a06656492 100644
--- a/src/mame/includes/chqflag.h
+++ b/src/mame/includes/chqflag.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class chqflag_state : public driver_data_t
+class chqflag_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, chqflag_state(machine)); }
-
- chqflag_state(running_machine &machine)
- : driver_data_t(machine) { }
+ chqflag_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram;
diff --git a/src/mame/includes/cidelsa.h b/src/mame/includes/cidelsa.h
index 3b11c24e8ee..1d77186a51a 100644
--- a/src/mame/includes/cidelsa.h
+++ b/src/mame/includes/cidelsa.h
@@ -24,13 +24,11 @@
#define DRACO_PAGERAM_MASK 0x7ff
#define CIDELSA_CHARRAM_MASK 0x7ff
-class cidelsa_state : public driver_data_t
+class cidelsa_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cidelsa_state(machine)); }
-
- cidelsa_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cidelsa_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* cpu state */
cdp1802_control_mode cdp1802_mode;
diff --git a/src/mame/includes/circus.h b/src/mame/includes/circus.h
index 321e59b7d51..edb109a95f7 100644
--- a/src/mame/includes/circus.h
+++ b/src/mame/includes/circus.h
@@ -6,13 +6,11 @@
#define GAME_IS_RIPCORD (state->game_id == 4)
-class circus_state : public driver_data_t
+class circus_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, circus_state(machine)); }
-
- circus_state(running_machine &machine)
- : driver_data_t(machine) { }
+ circus_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/circusc.h b/src/mame/includes/circusc.h
index ab67707ac1a..755ba4f8273 100644
--- a/src/mame/includes/circusc.h
+++ b/src/mame/includes/circusc.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class circusc_state : public driver_data_t
+class circusc_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, circusc_state(machine)); }
-
- circusc_state(running_machine &machine)
- : driver_data_t(machine) { }
+ circusc_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/citycon.h b/src/mame/includes/citycon.h
index 78dcfb6886b..6384ae86494 100644
--- a/src/mame/includes/citycon.h
+++ b/src/mame/includes/citycon.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class citycon_state : public driver_data_t
+class citycon_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, citycon_state(machine)); }
-
- citycon_state(running_machine &machine)
- : driver_data_t(machine) { }
+ citycon_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/cloud9.h b/src/mame/includes/cloud9.h
index 19e69c88a52..652b83a903d 100644
--- a/src/mame/includes/cloud9.h
+++ b/src/mame/includes/cloud9.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class cloud9_state : public driver_data_t
+class cloud9_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cloud9_state(machine)); }
-
- cloud9_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cloud9_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/cninja.h b/src/mame/includes/cninja.h
index 40a98178284..44e90def272 100644
--- a/src/mame/includes/cninja.h
+++ b/src/mame/includes/cninja.h
@@ -7,13 +7,11 @@
#include "sound/okim6295.h"
#include "video/deco16ic.h"
-class cninja_state : public driver_data_t
+class cninja_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cninja_state(machine)); }
-
- cninja_state(running_machine &machine)
- : driver_data_t(machine),
+ cninja_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
maincpu(machine.device<cpu_device>("maincpu")),
audiocpu(machine.device<cpu_device>("audiocpu")),
deco16ic(machine.device<deco16ic_device>("deco_custom")),
diff --git a/src/mame/includes/combatsc.h b/src/mame/includes/combatsc.h
index eea07faf2d9..3be223ff678 100644
--- a/src/mame/includes/combatsc.h
+++ b/src/mame/includes/combatsc.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class combatsc_state : public driver_data_t
+class combatsc_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, combatsc_state(machine)); }
-
- combatsc_state(running_machine &machine)
- : driver_data_t(machine) { }
+ combatsc_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/commando.h b/src/mame/includes/commando.h
index 61b0de8b8ac..3ae0f1c2782 100644
--- a/src/mame/includes/commando.h
+++ b/src/mame/includes/commando.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class commando_state : public driver_data_t
+class commando_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, commando_state(machine)); }
-
- commando_state(running_machine &machine)
- : driver_data_t(machine) { }
+ commando_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/compgolf.h b/src/mame/includes/compgolf.h
index a18d751aace..8341b5e0d6f 100644
--- a/src/mame/includes/compgolf.h
+++ b/src/mame/includes/compgolf.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class compgolf_state : public driver_data_t
+class compgolf_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, compgolf_state(machine)); }
-
- compgolf_state(running_machine &machine)
- : driver_data_t(machine) { }
+ compgolf_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/contra.h b/src/mame/includes/contra.h
index 3ad74b20222..42a178a97fa 100644
--- a/src/mame/includes/contra.h
+++ b/src/mame/includes/contra.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class contra_state : public driver_data_t
+class contra_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, contra_state(machine)); }
-
- contra_state(running_machine &machine)
- : driver_data_t(machine) { }
+ contra_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * spriteram;
diff --git a/src/mame/includes/coolpool.h b/src/mame/includes/coolpool.h
index 7ab1d42b86a..4b082cdde19 100644
--- a/src/mame/includes/coolpool.h
+++ b/src/mame/includes/coolpool.h
@@ -1,10 +1,8 @@
-class coolpool_state : public driver_data_t
+class coolpool_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, coolpool_state(machine)); }
-
- coolpool_state(running_machine &machine)
- : driver_data_t(machine) { }
+ coolpool_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 *vram_base;
diff --git a/src/mame/includes/cop01.h b/src/mame/includes/cop01.h
index d08e4decdc7..489a088db00 100644
--- a/src/mame/includes/cop01.h
+++ b/src/mame/includes/cop01.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class cop01_state : public driver_data_t
+class cop01_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cop01_state(machine)); }
-
- cop01_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cop01_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bgvideoram;
diff --git a/src/mame/includes/copsnrob.h b/src/mame/includes/copsnrob.h
index ebd8c44b278..929027c9c0f 100644
--- a/src/mame/includes/copsnrob.h
+++ b/src/mame/includes/copsnrob.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class copsnrob_state : public driver_data_t
+class copsnrob_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, copsnrob_state(machine)); }
-
- copsnrob_state(running_machine &machine)
- : driver_data_t(machine) { }
+ copsnrob_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/cosmic.h b/src/mame/includes/cosmic.h
index 68f3040afb0..8a976d0f0a6 100644
--- a/src/mame/includes/cosmic.h
+++ b/src/mame/includes/cosmic.h
@@ -8,13 +8,11 @@
#define Z80_MASTER_CLOCK XTAL_10_816MHz
-class cosmic_state : public driver_data_t
+class cosmic_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cosmic_state(machine)); }
-
- cosmic_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cosmic_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/cps1.h b/src/mame/includes/cps1.h
index 8506c127193..f4f99ca5e3b 100644
--- a/src/mame/includes/cps1.h
+++ b/src/mame/includes/cps1.h
@@ -57,13 +57,11 @@ struct CPS1config
};
-class cps_state : public driver_data_t
+class cps_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cps_state(machine)); }
-
- cps_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cps_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// cps1
diff --git a/src/mame/includes/crgolf.h b/src/mame/includes/crgolf.h
index fa0281519d1..863b80eefe7 100644
--- a/src/mame/includes/crgolf.h
+++ b/src/mame/includes/crgolf.h
@@ -7,13 +7,11 @@
#define MASTER_CLOCK 18432000
-class crgolf_state : public driver_data_t
+class crgolf_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, crgolf_state(machine)); }
-
- crgolf_state(running_machine &machine)
- : driver_data_t(machine) { }
+ crgolf_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram_a;
diff --git a/src/mame/includes/crimfght.h b/src/mame/includes/crimfght.h
index e9103968f17..9b634fe88a1 100644
--- a/src/mame/includes/crimfght.h
+++ b/src/mame/includes/crimfght.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class crimfght_state : public driver_data_t
+class crimfght_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, crimfght_state(machine)); }
-
- crimfght_state(running_machine &machine)
- : driver_data_t(machine) { }
+ crimfght_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT8 * paletteram; // currently this uses generic palette handling
diff --git a/src/mame/includes/crospang.h b/src/mame/includes/crospang.h
index f3628e3f3e6..de5a6aff77a 100644
--- a/src/mame/includes/crospang.h
+++ b/src/mame/includes/crospang.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class crospang_state : public driver_data_t
+class crospang_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, crospang_state(machine)); }
-
- crospang_state(running_machine &machine)
- : driver_data_t(machine) { }
+ crospang_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bg_videoram;
diff --git a/src/mame/includes/crshrace.h b/src/mame/includes/crshrace.h
index a650cb5794f..14170f9eb04 100644
--- a/src/mame/includes/crshrace.h
+++ b/src/mame/includes/crshrace.h
@@ -1,11 +1,9 @@
-class crshrace_state : public driver_data_t
+class crshrace_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, crshrace_state(machine)); }
-
- crshrace_state(running_machine &machine)
- : driver_data_t(machine) { }
+ crshrace_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram1;
diff --git a/src/mame/includes/cvs.h b/src/mame/includes/cvs.h
index b104ab4cbc7..27114d522c3 100644
--- a/src/mame/includes/cvs.h
+++ b/src/mame/includes/cvs.h
@@ -16,13 +16,11 @@ struct cvs_star
int x, y, code;
};
-class cvs_state : public driver_data_t
+class cvs_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cvs_state(machine)); }
-
- cvs_state(running_machine &machine)
- : driver_data_t(machine) { }
+ cvs_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * video_ram;
diff --git a/src/mame/includes/cyberbal.h b/src/mame/includes/cyberbal.h
index 3ae74826f0f..696dfe997db 100644
--- a/src/mame/includes/cyberbal.h
+++ b/src/mame/includes/cyberbal.h
@@ -9,10 +9,8 @@
class cyberbal_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, cyberbal_state(machine)); }
-
- cyberbal_state(running_machine &machine)
- : atarigen_state(machine) { }
+ cyberbal_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT16 * paletteram_0;
UINT16 * paletteram_1;
diff --git a/src/mame/includes/darius.h b/src/mame/includes/darius.h
index 60ae8291406..662f708a6e0 100644
--- a/src/mame/includes/darius.h
+++ b/src/mame/includes/darius.h
@@ -7,13 +7,11 @@
#define DARIUS_VOL_MAX (3*2 + 2)
#define DARIUS_PAN_MAX (2 + 2 + 1) /* FM 2port + PSG 2port + DA 1port */
-class darius_state : public driver_data_t
+class darius_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, darius_state(machine)); }
-
- darius_state(running_machine &machine)
- : driver_data_t(machine) { }
+ darius_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * spriteram;
diff --git a/src/mame/includes/dassault.h b/src/mame/includes/dassault.h
index ed65aa53021..75935122e53 100644
--- a/src/mame/includes/dassault.h
+++ b/src/mame/includes/dassault.h
@@ -7,13 +7,11 @@
#include "sound/okim6295.h"
#include "video/deco16ic.h"
-class dassault_state : public driver_data_t
+class dassault_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dassault_state(machine)); }
-
- dassault_state(running_machine &machine)
- : driver_data_t(machine),
+ dassault_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
maincpu(machine.device<cpu_device>("maincpu")),
audiocpu(machine.device<cpu_device>("audiocpu")),
subcpu(machine.device<cpu_device>("sub")),
diff --git a/src/mame/includes/dbz.h b/src/mame/includes/dbz.h
index 88c96125cd3..31a78a7900f 100644
--- a/src/mame/includes/dbz.h
+++ b/src/mame/includes/dbz.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class dbz_state : public driver_data_t
+class dbz_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dbz_state(machine)); }
-
- dbz_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dbz_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bg1_videoram;
diff --git a/src/mame/includes/dcheese.h b/src/mame/includes/dcheese.h
index a3c302fa6d6..c22f4a9a342 100644
--- a/src/mame/includes/dcheese.h
+++ b/src/mame/includes/dcheese.h
@@ -5,13 +5,11 @@
**************************************************************************/
-class dcheese_state : public driver_data_t
+class dcheese_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dcheese_state(machine)); }
-
- dcheese_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dcheese_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
UINT16 blitter_color[2];
diff --git a/src/mame/includes/dday.h b/src/mame/includes/dday.h
index 8f47db1cbfa..cf4d652ebd6 100644
--- a/src/mame/includes/dday.h
+++ b/src/mame/includes/dday.h
@@ -5,13 +5,11 @@
*************************************************************************/
-class dday_state : public driver_data_t
+class dday_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dday_state(machine)); }
-
- dday_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dday_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bgvideoram;
diff --git a/src/mame/includes/ddragon.h b/src/mame/includes/ddragon.h
index 9786c02cf5e..0b44c719b05 100644
--- a/src/mame/includes/ddragon.h
+++ b/src/mame/includes/ddragon.h
@@ -5,13 +5,11 @@
*************************************************************************/
-class ddragon_state : public driver_data_t
+class ddragon_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ddragon_state(machine)); }
-
- ddragon_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ddragon_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * rambase;
diff --git a/src/mame/includes/ddragon3.h b/src/mame/includes/ddragon3.h
index 2c7f1458db5..4cd8cb30e6c 100644
--- a/src/mame/includes/ddragon3.h
+++ b/src/mame/includes/ddragon3.h
@@ -5,13 +5,11 @@
*************************************************************************/
-class ddragon3_state : public driver_data_t
+class ddragon3_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ddragon3_state(machine)); }
-
- ddragon3_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ddragon3_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bg_videoram;
diff --git a/src/mame/includes/ddribble.h b/src/mame/includes/ddribble.h
index 59508ecdbdd..456c1483c38 100644
--- a/src/mame/includes/ddribble.h
+++ b/src/mame/includes/ddribble.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class ddribble_state : public driver_data_t
+class ddribble_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ddribble_state(machine)); }
-
- ddribble_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ddribble_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * sharedram;
diff --git a/src/mame/includes/dec8.h b/src/mame/includes/dec8.h
index 777ecea112c..d857e2dd217 100644
--- a/src/mame/includes/dec8.h
+++ b/src/mame/includes/dec8.h
@@ -1,11 +1,9 @@
-class dec8_state : public driver_data_t
+class dec8_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dec8_state(machine)); }
-
- dec8_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dec8_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/deniam.h b/src/mame/includes/deniam.h
index ba60fd6e5f1..2c7a0e0afb4 100644
--- a/src/mame/includes/deniam.h
+++ b/src/mame/includes/deniam.h
@@ -5,13 +5,11 @@
*************************************************************************/
-class deniam_state : public driver_data_t
+class deniam_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, deniam_state(machine)); }
-
- deniam_state(running_machine &machine)
- : driver_data_t(machine) { }
+ deniam_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/includes/dietgo.h b/src/mame/includes/dietgo.h
index 621771204b9..9525b055ecc 100644
--- a/src/mame/includes/dietgo.h
+++ b/src/mame/includes/dietgo.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class dietgo_state : public driver_data_t
+class dietgo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dietgo_state(machine)); }
-
- dietgo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dietgo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * pf1_rowscroll;
diff --git a/src/mame/includes/djboy.h b/src/mame/includes/djboy.h
index 130923dca7c..7b2de4434c6 100644
--- a/src/mame/includes/djboy.h
+++ b/src/mame/includes/djboy.h
@@ -6,13 +6,11 @@
#define PROT_OUTPUT_BUFFER_SIZE 8
-class djboy_state : public driver_data_t
+class djboy_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, djboy_state(machine)); }
-
- djboy_state(running_machine &machine)
- : driver_data_t(machine) { }
+ djboy_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 *videoram;
diff --git a/src/mame/includes/dkong.h b/src/mame/includes/dkong.h
index 7015e25abbc..0eb8a611858 100644
--- a/src/mame/includes/dkong.h
+++ b/src/mame/includes/dkong.h
@@ -69,13 +69,11 @@ enum
#define DK3_PALETTE_LENGTH (256+256+8+1) /* (256) */
#define RS_PALETTE_LENGTH (256+256+8+1)
-class dkong_state : public driver_data_t
+class dkong_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dkong_state(machine)); }
-
- dkong_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dkong_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * video_ram;
diff --git a/src/mame/includes/docastle.h b/src/mame/includes/docastle.h
index 120e3875b93..2620aa5fe0a 100644
--- a/src/mame/includes/docastle.h
+++ b/src/mame/includes/docastle.h
@@ -1,12 +1,10 @@
-class docastle_state : public driver_data_t
+class docastle_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, docastle_state(machine)); }
-
- docastle_state(running_machine &machine)
- : driver_data_t(machine) { }
+ docastle_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/dogfgt.h b/src/mame/includes/dogfgt.h
index bd65fd06f05..63ae137507a 100644
--- a/src/mame/includes/dogfgt.h
+++ b/src/mame/includes/dogfgt.h
@@ -3,13 +3,11 @@
#define BITMAPRAM_SIZE 0x6000
-class dogfgt_state : public driver_data_t
+class dogfgt_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dogfgt_state(machine)); }
-
- dogfgt_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dogfgt_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bgvideoram;
diff --git a/src/mame/includes/dragrace.h b/src/mame/includes/dragrace.h
index 1275e6ba766..d1af6c4fdda 100644
--- a/src/mame/includes/dragrace.h
+++ b/src/mame/includes/dragrace.h
@@ -22,13 +22,11 @@
#define DRAGRACE_ATTRACT_EN NODE_09
-class dragrace_state : public driver_data_t
+class dragrace_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dragrace_state(machine)); }
-
- dragrace_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dragrace_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * playfield_ram;
diff --git a/src/mame/includes/drgnmst.h b/src/mame/includes/drgnmst.h
index c97d990945d..9b025ca5f33 100644
--- a/src/mame/includes/drgnmst.h
+++ b/src/mame/includes/drgnmst.h
@@ -1,13 +1,11 @@
#include "sound/okim6295.h"
-class drgnmst_state : public driver_data_t
+class drgnmst_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, drgnmst_state(machine)); }
-
- drgnmst_state(running_machine &machine)
- : driver_data_t(machine),
+ drgnmst_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
oki_1(machine.device<okim6295_device>("oki1")),
oki_2(machine.device<okim6295_device>("oki2")) { }
diff --git a/src/mame/includes/dribling.h b/src/mame/includes/dribling.h
index ae22370c0a2..530a52c5fad 100644
--- a/src/mame/includes/dribling.h
+++ b/src/mame/includes/dribling.h
@@ -6,13 +6,11 @@
-class dribling_state : public driver_data_t
+class dribling_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dribling_state(machine)); }
-
- dribling_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dribling_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/drmicro.h b/src/mame/includes/drmicro.h
index 050a357b58f..f87b8ec29fd 100644
--- a/src/mame/includes/drmicro.h
+++ b/src/mame/includes/drmicro.h
@@ -5,13 +5,11 @@
*************************************************************************/
-class drmicro_state : public driver_data_t
+class drmicro_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, drmicro_state(machine)); }
-
- drmicro_state(running_machine &machine)
- : driver_data_t(machine) { }
+ drmicro_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/dynax.h b/src/mame/includes/dynax.h
index fb748229cfa..a410097f877 100644
--- a/src/mame/includes/dynax.h
+++ b/src/mame/includes/dynax.h
@@ -6,13 +6,11 @@
#include "sound/okim6295.h"
-class dynax_state : public driver_data_t
+class dynax_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, dynax_state(machine)); }
-
- dynax_state(running_machine &machine)
- : driver_data_t(machine) { }
+ dynax_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
// up to 8 layers, 2 images per layer (interleaved on screen)
UINT8 * pixmap[8][2];
diff --git a/src/mame/includes/epos.h b/src/mame/includes/epos.h
index a81ae1329e5..466b5cb37ab 100644
--- a/src/mame/includes/epos.h
+++ b/src/mame/includes/epos.h
@@ -4,13 +4,11 @@
**************************************************************************/
-class epos_state : public driver_data_t
+class epos_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, epos_state(machine)); }
-
- epos_state(running_machine &machine)
- : driver_data_t(machine) { }
+ epos_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/eprom.h b/src/mame/includes/eprom.h
index ed5be51818e..000ddece639 100644
--- a/src/mame/includes/eprom.h
+++ b/src/mame/includes/eprom.h
@@ -9,10 +9,8 @@
class eprom_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, eprom_state(machine)); }
-
- eprom_state(running_machine &machine)
- : atarigen_state(machine) { }
+ eprom_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
int screen_intensity;
int video_disable;
diff --git a/src/mame/includes/equites.h b/src/mame/includes/equites.h
index db65afaa89d..d7d508bb32e 100644
--- a/src/mame/includes/equites.h
+++ b/src/mame/includes/equites.h
@@ -2,13 +2,11 @@
#define POPDRUMKIT 0
-class equites_state : public driver_data_t
+class equites_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, equites_state(machine)); }
-
- equites_state(running_machine &machine)
- : driver_data_t(machine) { }
+ equites_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bg_videoram;
diff --git a/src/mame/includes/esd16.h b/src/mame/includes/esd16.h
index 7f92b4e9079..4a147644939 100644
--- a/src/mame/includes/esd16.h
+++ b/src/mame/includes/esd16.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class esd16_state : public driver_data_t
+class esd16_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, esd16_state(machine)); }
-
- esd16_state(running_machine &machine)
- : driver_data_t(machine) { }
+ esd16_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * vram_0;
diff --git a/src/mame/includes/espial.h b/src/mame/includes/espial.h
index 70da71125d7..febc020c591 100644
--- a/src/mame/includes/espial.h
+++ b/src/mame/includes/espial.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class espial_state : public driver_data_t
+class espial_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, espial_state(machine)); }
-
- espial_state(running_machine &machine)
- : driver_data_t(machine) { }
+ espial_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 * videoram; // espial, zodiack, marineb
UINT8 * colorram; // espial, marineb
diff --git a/src/mame/includes/exedexes.h b/src/mame/includes/exedexes.h
index 7a5790af20a..d31d3e167d3 100644
--- a/src/mame/includes/exedexes.h
+++ b/src/mame/includes/exedexes.h
@@ -5,13 +5,11 @@
*************************************************************************/
-class exedexes_state : public driver_data_t
+class exedexes_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, exedexes_state(machine)); }
-
- exedexes_state(running_machine &machine)
- : driver_data_t(machine) { }
+ exedexes_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/exerion.h b/src/mame/includes/exerion.h
index 67e0655b8da..fb34df2454e 100644
--- a/src/mame/includes/exerion.h
+++ b/src/mame/includes/exerion.h
@@ -18,13 +18,11 @@
#define EXERION_VBSTART (240)
-class exerion_state : public driver_data_t
+class exerion_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, exerion_state(machine)); }
-
- exerion_state(running_machine &machine)
- : driver_data_t(machine) { }
+ exerion_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * main_ram;
diff --git a/src/mame/includes/exprraid.h b/src/mame/includes/exprraid.h
index 92e84e14d07..8bec3cedbeb 100644
--- a/src/mame/includes/exprraid.h
+++ b/src/mame/includes/exprraid.h
@@ -5,13 +5,11 @@
*************************************************************************/
-class exprraid_state : public driver_data_t
+class exprraid_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, exprraid_state(machine)); }
-
- exprraid_state(running_machine &machine)
- : driver_data_t(machine) { }
+ exprraid_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * main_ram;
diff --git a/src/mame/includes/f1gp.h b/src/mame/includes/f1gp.h
index f0498352327..c0b0dc42a8d 100644
--- a/src/mame/includes/f1gp.h
+++ b/src/mame/includes/f1gp.h
@@ -1,11 +1,9 @@
-class f1gp_state : public driver_data_t
+class f1gp_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, f1gp_state(machine)); }
-
- f1gp_state(running_machine &machine)
- : driver_data_t(machine) { }
+ f1gp_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * sharedram;
diff --git a/src/mame/includes/fantland.h b/src/mame/includes/fantland.h
index 382f11e0156..f567e287b8b 100644
--- a/src/mame/includes/fantland.h
+++ b/src/mame/includes/fantland.h
@@ -1,12 +1,10 @@
-class fantland_state : public driver_data_t
+class fantland_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, fantland_state(machine)); }
-
- fantland_state(running_machine &machine)
- : driver_data_t(machine) { }
+ fantland_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT8 * spriteram; // currently directly used in a 16bit map...
diff --git a/src/mame/includes/fastlane.h b/src/mame/includes/fastlane.h
index c45f2b62b12..7dac2687110 100644
--- a/src/mame/includes/fastlane.h
+++ b/src/mame/includes/fastlane.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class fastlane_state : public driver_data_t
+class fastlane_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, fastlane_state(machine)); }
-
- fastlane_state(running_machine &machine)
- : driver_data_t(machine) { }
+ fastlane_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram1;
diff --git a/src/mame/includes/fcombat.h b/src/mame/includes/fcombat.h
index 2afed014a00..88d5f66dc02 100644
--- a/src/mame/includes/fcombat.h
+++ b/src/mame/includes/fcombat.h
@@ -22,13 +22,11 @@
#define VISIBLE_Y_MAX (30*8)
-class fcombat_state : public driver_data_t
+class fcombat_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, fcombat_state(machine)); }
-
- fcombat_state(running_machine &machine)
- : driver_data_t(machine) { }
+ fcombat_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/fgoal.h b/src/mame/includes/fgoal.h
index e1b095e6244..bfc77fa1804 100644
--- a/src/mame/includes/fgoal.h
+++ b/src/mame/includes/fgoal.h
@@ -1,12 +1,10 @@
-class fgoal_state : public driver_data_t
+class fgoal_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, fgoal_state(machine)); }
-
- fgoal_state(running_machine &machine)
- : driver_data_t(machine) { }
+ fgoal_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * video_ram;
diff --git a/src/mame/includes/finalizr.h b/src/mame/includes/finalizr.h
index e75d7719032..59565a302de 100644
--- a/src/mame/includes/finalizr.h
+++ b/src/mame/includes/finalizr.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class finalizr_state : public driver_data_t
+class finalizr_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, finalizr_state(machine)); }
-
- finalizr_state(running_machine &machine)
- : driver_data_t(machine) { }
+ finalizr_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/firetrap.h b/src/mame/includes/firetrap.h
index 174133065ce..854e60b64b5 100644
--- a/src/mame/includes/firetrap.h
+++ b/src/mame/includes/firetrap.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class firetrap_state : public driver_data_t
+class firetrap_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, firetrap_state(machine)); }
-
- firetrap_state(running_machine &machine)
- : driver_data_t(machine) { }
+ firetrap_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bg1videoram;
diff --git a/src/mame/includes/fitfight.h b/src/mame/includes/fitfight.h
index a9062603823..a072cf627df 100644
--- a/src/mame/includes/fitfight.h
+++ b/src/mame/includes/fitfight.h
@@ -1,11 +1,9 @@
-class fitfight_state : public driver_data_t
+class fitfight_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, fitfight_state(machine)); }
-
- fitfight_state(running_machine &machine)
- : driver_data_t(machine) { }
+ fitfight_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * fof_100000;
diff --git a/src/mame/includes/flkatck.h b/src/mame/includes/flkatck.h
index f50914024cd..62709d89115 100644
--- a/src/mame/includes/flkatck.h
+++ b/src/mame/includes/flkatck.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class flkatck_state : public driver_data_t
+class flkatck_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, flkatck_state(machine)); }
-
- flkatck_state(running_machine &machine)
- : driver_data_t(machine) { }
+ flkatck_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * k007121_ram;
diff --git a/src/mame/includes/flstory.h b/src/mame/includes/flstory.h
index 6f528787b7d..39d6d150cf6 100644
--- a/src/mame/includes/flstory.h
+++ b/src/mame/includes/flstory.h
@@ -1,11 +1,9 @@
-class flstory_state : public driver_data_t
+class flstory_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, flstory_state(machine)); }
-
- flstory_state(running_machine &machine)
- : driver_data_t(machine) { }
+ flstory_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/foodf.h b/src/mame/includes/foodf.h
index 2e2db04abb7..cb9c95a5360 100644
--- a/src/mame/includes/foodf.h
+++ b/src/mame/includes/foodf.h
@@ -9,10 +9,8 @@
class foodf_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, foodf_state(machine)); }
-
- foodf_state(running_machine &machine)
- : atarigen_state(machine) { }
+ foodf_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
double rweights[3];
double gweights[3];
diff --git a/src/mame/includes/freekick.h b/src/mame/includes/freekick.h
index 49c0938e99d..114c7a065e3 100644
--- a/src/mame/includes/freekick.h
+++ b/src/mame/includes/freekick.h
@@ -1,12 +1,10 @@
-class freekick_state : public driver_data_t
+class freekick_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, freekick_state(machine)); }
-
- freekick_state(running_machine &machine)
- : driver_data_t(machine) { }
+ freekick_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/fromanc2.h b/src/mame/includes/fromanc2.h
index 8fe909193b0..5d6257b9fef 100644
--- a/src/mame/includes/fromanc2.h
+++ b/src/mame/includes/fromanc2.h
@@ -1,11 +1,9 @@
-class fromanc2_state : public driver_data_t
+class fromanc2_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, fromanc2_state(machine)); }
-
- fromanc2_state(running_machine &machine)
- : driver_data_t(machine) { }
+ fromanc2_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 *paletteram[2];
diff --git a/src/mame/includes/fromance.h b/src/mame/includes/fromance.h
index 81baf3c6ab9..ea8568ec5ab 100644
--- a/src/mame/includes/fromance.h
+++ b/src/mame/includes/fromance.h
@@ -7,13 +7,11 @@
***************************************************************************/
-class fromance_state : public driver_data_t
+class fromance_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, fromance_state(machine)); }
-
- fromance_state(running_machine &machine)
- : driver_data_t(machine) { }
+ fromance_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers (used by pipedrm) */
UINT8 * videoram;
diff --git a/src/mame/includes/funkybee.h b/src/mame/includes/funkybee.h
index 4e8521124bb..44eda8161c7 100644
--- a/src/mame/includes/funkybee.h
+++ b/src/mame/includes/funkybee.h
@@ -1,12 +1,10 @@
-class funkybee_state : public driver_data_t
+class funkybee_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, funkybee_state(machine)); }
-
- funkybee_state(running_machine &machine)
- : driver_data_t(machine) { }
+ funkybee_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/funkyjet.h b/src/mame/includes/funkyjet.h
index 8656aeda95c..59425373809 100644
--- a/src/mame/includes/funkyjet.h
+++ b/src/mame/includes/funkyjet.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class funkyjet_state : public driver_data_t
+class funkyjet_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, funkyjet_state(machine)); }
-
- funkyjet_state(running_machine &machine)
- : driver_data_t(machine) { }
+ funkyjet_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * pf1_rowscroll;
diff --git a/src/mame/includes/funybubl.h b/src/mame/includes/funybubl.h
index 6092409440d..4980c5a21ba 100644
--- a/src/mame/includes/funybubl.h
+++ b/src/mame/includes/funybubl.h
@@ -1,12 +1,10 @@
-class funybubl_state : public driver_data_t
+class funybubl_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, funybubl_state(machine)); }
-
- funybubl_state(running_machine &machine)
- : driver_data_t(machine) { }
+ funybubl_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * banked_vram;
diff --git a/src/mame/includes/fuukifg2.h b/src/mame/includes/fuukifg2.h
index 0e9a0feb554..a8eeac9b6f5 100644
--- a/src/mame/includes/fuukifg2.h
+++ b/src/mame/includes/fuukifg2.h
@@ -1,12 +1,10 @@
-class fuuki16_state : public driver_data_t
+class fuuki16_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, fuuki16_state(machine)); }
-
- fuuki16_state(running_machine &machine)
- : driver_data_t(machine) { }
+ fuuki16_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * vram_0;
diff --git a/src/mame/includes/fuukifg3.h b/src/mame/includes/fuukifg3.h
index 149edfff5f1..bfa66e55978 100644
--- a/src/mame/includes/fuukifg3.h
+++ b/src/mame/includes/fuukifg3.h
@@ -9,13 +9,11 @@
/* NOTE: YMF278B_STD_CLOCK is defined in /src/emu/sound/ymf278b.h */
-class fuuki32_state : public driver_data_t
+class fuuki32_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, fuuki32_state(machine)); }
-
- fuuki32_state(running_machine &machine)
- : driver_data_t(machine) { }
+ fuuki32_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT32 * vram_0;
diff --git a/src/mame/includes/gaelco.h b/src/mame/includes/gaelco.h
index 1908e2036dd..74c8f326e2d 100644
--- a/src/mame/includes/gaelco.h
+++ b/src/mame/includes/gaelco.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class gaelco_state : public driver_data_t
+class gaelco_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gaelco_state(machine)); }
-
- gaelco_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gaelco_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/includes/gaiden.h b/src/mame/includes/gaiden.h
index c92210f0b05..f811639fee7 100644
--- a/src/mame/includes/gaiden.h
+++ b/src/mame/includes/gaiden.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class gaiden_state : public driver_data_t
+class gaiden_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gaiden_state(machine)); }
-
- gaiden_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gaiden_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/includes/galaga.h b/src/mame/includes/galaga.h
index 35fb9748921..c0fdd8b0cc9 100644
--- a/src/mame/includes/galaga.h
+++ b/src/mame/includes/galaga.h
@@ -1,12 +1,10 @@
#include "sound/discrete.h"
-class _galaga_state : public driver_data_t
+class _galaga_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, _galaga_state(machine)); }
-
- _galaga_state(running_machine &machine)
- : driver_data_t(machine)
+ _galaga_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config)
{
xevious_bs[0] = 0;
xevious_bs[1] = 0;
diff --git a/src/mame/includes/galivan.h b/src/mame/includes/galivan.h
index cec46aafa41..7b6d503e40d 100644
--- a/src/mame/includes/galivan.h
+++ b/src/mame/includes/galivan.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class galivan_state : public driver_data_t
+class galivan_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, galivan_state(machine)); }
-
- galivan_state(running_machine &machine)
- : driver_data_t(machine) { }
+ galivan_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/galspnbl.h b/src/mame/includes/galspnbl.h
index 6af6fe96c43..b3d2cd73dad 100644
--- a/src/mame/includes/galspnbl.h
+++ b/src/mame/includes/galspnbl.h
@@ -5,13 +5,11 @@
*************************************************************************/
-class galspnbl_state : public driver_data_t
+class galspnbl_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, galspnbl_state(machine)); }
-
- galspnbl_state(running_machine &machine)
- : driver_data_t(machine) { }
+ galspnbl_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/includes/gameplan.h b/src/mame/includes/gameplan.h
index ab9c583c0fd..31b7ee22586 100644
--- a/src/mame/includes/gameplan.h
+++ b/src/mame/includes/gameplan.h
@@ -21,13 +21,11 @@ driver by Chris Moore
#define LEPRECHAUN_MAIN_CPU_CLOCK (LEPRECHAUN_MAIN_MASTER_CLOCK / 4)
-class gameplan_state : public driver_data_t
+class gameplan_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gameplan_state(machine)); }
-
- gameplan_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gameplan_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* machine state */
UINT8 current_port;
diff --git a/src/mame/includes/gauntlet.h b/src/mame/includes/gauntlet.h
index 8f28edec63c..96c01ebef9b 100644
--- a/src/mame/includes/gauntlet.h
+++ b/src/mame/includes/gauntlet.h
@@ -9,10 +9,8 @@
class gauntlet_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gauntlet_state(machine)); }
-
- gauntlet_state(running_machine &machine)
- : atarigen_state(machine) { }
+ gauntlet_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT16 sound_reset_val;
UINT8 vindctr2_screen_refresh;
diff --git a/src/mame/includes/gberet.h b/src/mame/includes/gberet.h
index ca96b7a1c6f..678cca7bb80 100644
--- a/src/mame/includes/gberet.h
+++ b/src/mame/includes/gberet.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class gberet_state : public driver_data_t
+class gberet_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gberet_state(machine)); }
-
- gberet_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gberet_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/gbusters.h b/src/mame/includes/gbusters.h
index eff5618b0e2..19c4d50ab6b 100644
--- a/src/mame/includes/gbusters.h
+++ b/src/mame/includes/gbusters.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class gbusters_state : public driver_data_t
+class gbusters_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gbusters_state(machine)); }
-
- gbusters_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gbusters_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram;
diff --git a/src/mame/includes/gcpinbal.h b/src/mame/includes/gcpinbal.h
index b4dbebc1782..d189eb76512 100644
--- a/src/mame/includes/gcpinbal.h
+++ b/src/mame/includes/gcpinbal.h
@@ -2,13 +2,11 @@
#include "sound/okim6295.h"
#include "sound/msm5205.h"
-class gcpinbal_state : public driver_data_t
+class gcpinbal_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gcpinbal_state(machine)); }
-
- gcpinbal_state(running_machine &machine)
- : driver_data_t(machine),
+ gcpinbal_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
maincpu(machine.device<cpu_device>("maincpu")),
oki(machine.device<okim6295_device>("oki")),
msm(machine.device<msm5205_sound_device>("msm")) { }
diff --git a/src/mame/includes/gijoe.h b/src/mame/includes/gijoe.h
index aa1302d3cb0..d366e8de12e 100644
--- a/src/mame/includes/gijoe.h
+++ b/src/mame/includes/gijoe.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class gijoe_state : public driver_data_t
+class gijoe_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gijoe_state(machine)); }
-
- gijoe_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gijoe_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * workram;
diff --git a/src/mame/includes/ginganin.h b/src/mame/includes/ginganin.h
index b1b5e49bbca..95a349f3e9a 100644
--- a/src/mame/includes/ginganin.h
+++ b/src/mame/includes/ginganin.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class ginganin_state : public driver_data_t
+class ginganin_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ginganin_state(machine)); }
-
- ginganin_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ginganin_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * fgram;
diff --git a/src/mame/includes/glass.h b/src/mame/includes/glass.h
index 7735d86803c..c6a18b7a830 100644
--- a/src/mame/includes/glass.h
+++ b/src/mame/includes/glass.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class glass_state : public driver_data_t
+class glass_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, glass_state(machine)); }
-
- glass_state(running_machine &machine)
- : driver_data_t(machine) { }
+ glass_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/includes/gng.h b/src/mame/includes/gng.h
index b180948d09f..beba55ac16f 100644
--- a/src/mame/includes/gng.h
+++ b/src/mame/includes/gng.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class gng_state : public driver_data_t
+class gng_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gng_state(machine)); }
-
- gng_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gng_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bgvideoram;
diff --git a/src/mame/includes/goal92.h b/src/mame/includes/goal92.h
index cf7fbc60733..12c96f89854 100644
--- a/src/mame/includes/goal92.h
+++ b/src/mame/includes/goal92.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class goal92_state : public driver_data_t
+class goal92_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, goal92_state(machine)); }
-
- goal92_state(running_machine &machine)
- : driver_data_t(machine) { }
+ goal92_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bg_data;
diff --git a/src/mame/includes/goindol.h b/src/mame/includes/goindol.h
index dcc86fa7b64..95e20f971a5 100644
--- a/src/mame/includes/goindol.h
+++ b/src/mame/includes/goindol.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class goindol_state : public driver_data_t
+class goindol_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, goindol_state(machine)); }
-
- goindol_state(running_machine &machine)
- : driver_data_t(machine) { }
+ goindol_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bg_videoram;
diff --git a/src/mame/includes/goldstar.h b/src/mame/includes/goldstar.h
index 571169a7c36..537f4911fc7 100644
--- a/src/mame/includes/goldstar.h
+++ b/src/mame/includes/goldstar.h
@@ -1,10 +1,8 @@
-class goldstar_state : public driver_data_t
+class goldstar_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, goldstar_state(machine)); }
-
- goldstar_state(running_machine &machine)
- : driver_data_t(machine) { }
+ goldstar_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
int dataoffset;
diff --git a/src/mame/includes/gotcha.h b/src/mame/includes/gotcha.h
index bd2fa1c4569..7647620a45f 100644
--- a/src/mame/includes/gotcha.h
+++ b/src/mame/includes/gotcha.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class gotcha_state : public driver_data_t
+class gotcha_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gotcha_state(machine)); }
-
- gotcha_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gotcha_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * fgvideoram;
diff --git a/src/mame/includes/gotya.h b/src/mame/includes/gotya.h
index 61dd5e716f5..c57b1d63671 100644
--- a/src/mame/includes/gotya.h
+++ b/src/mame/includes/gotya.h
@@ -1,11 +1,9 @@
-class gotya_state : public driver_data_t
+class gotya_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gotya_state(machine)); }
-
- gotya_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gotya_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/gradius3.h b/src/mame/includes/gradius3.h
index d4bc0f40225..3584b40b55c 100644
--- a/src/mame/includes/gradius3.h
+++ b/src/mame/includes/gradius3.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class gradius3_state : public driver_data_t
+class gradius3_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gradius3_state(machine)); }
-
- gradius3_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gradius3_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * gfxram;
diff --git a/src/mame/includes/grchamp.h b/src/mame/includes/grchamp.h
index b85b9e7ff7f..efa7e33a9a1 100644
--- a/src/mame/includes/grchamp.h
+++ b/src/mame/includes/grchamp.h
@@ -6,13 +6,11 @@
#include "sound/discrete.h"
-class grchamp_state : public driver_data_t
+class grchamp_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, grchamp_state(machine)); }
-
- grchamp_state(running_machine &machine)
- : driver_data_t(machine) { }
+ grchamp_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 cpu0_out[16];
UINT8 cpu1_out[16];
diff --git a/src/mame/includes/gumbo.h b/src/mame/includes/gumbo.h
index 8e4d35d80d6..4485f30d677 100644
--- a/src/mame/includes/gumbo.h
+++ b/src/mame/includes/gumbo.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class gumbo_state : public driver_data_t
+class gumbo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gumbo_state(machine)); }
-
- gumbo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gumbo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bg_videoram;
diff --git a/src/mame/includes/gundealr.h b/src/mame/includes/gundealr.h
index 79a8208fe83..ced67f57318 100644
--- a/src/mame/includes/gundealr.h
+++ b/src/mame/includes/gundealr.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class gundealr_state : public driver_data_t
+class gundealr_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gundealr_state(machine)); }
-
- gundealr_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gundealr_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bg_videoram;
diff --git a/src/mame/includes/gunsmoke.h b/src/mame/includes/gunsmoke.h
index c55fe56626b..3c04345ce62 100644
--- a/src/mame/includes/gunsmoke.h
+++ b/src/mame/includes/gunsmoke.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class gunsmoke_state : public driver_data_t
+class gunsmoke_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gunsmoke_state(machine)); }
-
- gunsmoke_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gunsmoke_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/gyruss.h b/src/mame/includes/gyruss.h
index 899d46286af..4ef31ffe5ef 100644
--- a/src/mame/includes/gyruss.h
+++ b/src/mame/includes/gyruss.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class gyruss_state : public driver_data_t
+class gyruss_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, gyruss_state(machine)); }
-
- gyruss_state(running_machine &machine)
- : driver_data_t(machine) { }
+ gyruss_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/hanaawas.h b/src/mame/includes/hanaawas.h
index a963d936c25..46ad143c811 100644
--- a/src/mame/includes/hanaawas.h
+++ b/src/mame/includes/hanaawas.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class hanaawas_state : public driver_data_t
+class hanaawas_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, hanaawas_state(machine)); }
-
- hanaawas_state(running_machine &machine)
- : driver_data_t(machine) { }
+ hanaawas_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/harddriv.h b/src/mame/includes/harddriv.h
index 12e5287d311..89dcb7419f2 100644
--- a/src/mame/includes/harddriv.h
+++ b/src/mame/includes/harddriv.h
@@ -10,22 +10,23 @@
class harddriv_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, harddriv_state(machine)); }
-
- harddriv_state(running_machine &machine)
- : atarigen_state(machine),
- maincpu(machine.device<cpu_device>("maincpu")),
- gsp(machine.device<cpu_device>("gsp")),
- msp(machine.device<cpu_device>("msp")),
- adsp(machine.device<cpu_device>("adsp")),
- soundcpu(machine.device<cpu_device>("soundcpu")),
- sounddsp(machine.device<cpu_device>("sounddsp")),
- jsacpu(machine.device<cpu_device>("jsa")),
- dsp32(machine.device<cpu_device>("dsp32")),
- duart_timer(machine.device<timer_device>("duart_timer")) { }
+ harddriv_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
+
+ virtual void find_devices()
+ {
+ required_device(maincpu, "maincpu");
+ required_device(gsp, "gsp");
+ optional_device(msp, "msp");
+ required_device(adsp, "adsp");
+ optional_device(soundcpu, "soundcpu");
+ optional_device(sounddsp, "sounddsp");
+ optional_device(jsacpu, "jsacpu");
+ optional_device(dsp32, "dsp32");
+ }
cpu_device * maincpu;
- cpu_device * gsp;
+ tms34010_device * gsp;
cpu_device * msp;
cpu_device * adsp;
cpu_device * soundcpu;
diff --git a/src/mame/includes/hcastle.h b/src/mame/includes/hcastle.h
index e3627604281..d02684d3f23 100644
--- a/src/mame/includes/hcastle.h
+++ b/src/mame/includes/hcastle.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class hcastle_state : public driver_data_t
+class hcastle_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, hcastle_state(machine)); }
-
- hcastle_state(running_machine &machine)
- : driver_data_t(machine) { }
+ hcastle_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * pf1_videoram;
diff --git a/src/mame/includes/higemaru.h b/src/mame/includes/higemaru.h
index da14ecf21fb..a42bf0967f8 100644
--- a/src/mame/includes/higemaru.h
+++ b/src/mame/includes/higemaru.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class higemaru_state : public driver_data_t
+class higemaru_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, higemaru_state(machine)); }
-
- higemaru_state(running_machine &machine)
- : driver_data_t(machine) { }
+ higemaru_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/himesiki.h b/src/mame/includes/himesiki.h
index 041ec92ee4e..adeab173b10 100644
--- a/src/mame/includes/himesiki.h
+++ b/src/mame/includes/himesiki.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class himesiki_state : public driver_data_t
+class himesiki_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, himesiki_state(machine)); }
-
- himesiki_state(running_machine &machine)
- : driver_data_t(machine) { }
+ himesiki_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bg_ram;
diff --git a/src/mame/includes/hitme.h b/src/mame/includes/hitme.h
index 246c750a2da..e99a8af527a 100644
--- a/src/mame/includes/hitme.h
+++ b/src/mame/includes/hitme.h
@@ -12,13 +12,11 @@
#define HITME_ENABLE_VAL NODE_03
#define HITME_OUT1 NODE_04
-class hitme_state : public driver_data_t
+class hitme_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, hitme_state(machine)); }
-
- hitme_state(running_machine &machine)
- : driver_data_t(machine) { }
+ hitme_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/hnayayoi.h b/src/mame/includes/hnayayoi.h
index 05625807cd1..2acf760e080 100644
--- a/src/mame/includes/hnayayoi.h
+++ b/src/mame/includes/hnayayoi.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class hnayayoi_state : public driver_data_t
+class hnayayoi_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, hnayayoi_state(machine)); }
-
- hnayayoi_state(running_machine &machine)
- : driver_data_t(machine) { }
+ hnayayoi_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
UINT8 *pixmap[8];
diff --git a/src/mame/includes/hng64.h b/src/mame/includes/hng64.h
index 797a2ff7aa1..b6bc4f7b80d 100644
--- a/src/mame/includes/hng64.h
+++ b/src/mame/includes/hng64.h
@@ -3,13 +3,11 @@
#define RACING_MCU 3
#define SAMSHO_MCU 4
-class hng64_state : public driver_data_t
+class hng64_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, hng64_state(machine)); }
-
- hng64_state(running_machine &machine)
- : driver_data_t(machine) { }
+ hng64_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
int mcu_type;
UINT32 *mainram;
diff --git a/src/mame/includes/holeland.h b/src/mame/includes/holeland.h
index c9ef13bc6bb..34d6918ed29 100644
--- a/src/mame/includes/holeland.h
+++ b/src/mame/includes/holeland.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class holeland_state : public driver_data_t
+class holeland_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, holeland_state(machine)); }
-
- holeland_state(running_machine &machine)
- : driver_data_t(machine) { }
+ holeland_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/homedata.h b/src/mame/includes/homedata.h
index 7e9ae520f92..2164b571e0d 100644
--- a/src/mame/includes/homedata.h
+++ b/src/mame/includes/homedata.h
@@ -1,11 +1,9 @@
-class homedata_state : public driver_data_t
+class homedata_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, homedata_state(machine)); }
-
- homedata_state(running_machine &machine)
- : driver_data_t(machine) { }
+ homedata_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * vreg;
diff --git a/src/mame/includes/homerun.h b/src/mame/includes/homerun.h
index 854783378ef..ffde5470946 100644
--- a/src/mame/includes/homerun.h
+++ b/src/mame/includes/homerun.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class homerun_state : public driver_data_t
+class homerun_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, homerun_state(machine)); }
-
- homerun_state(running_machine &machine)
- : driver_data_t(machine) { }
+ homerun_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/hyprduel.h b/src/mame/includes/hyprduel.h
index 6e378008e73..ccf22ca828d 100644
--- a/src/mame/includes/hyprduel.h
+++ b/src/mame/includes/hyprduel.h
@@ -2,13 +2,11 @@
#define FIRST_VISIBLE_LINE 0
#define LAST_VISIBLE_LINE 223
-class hyprduel_state : public driver_data_t
+class hyprduel_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, hyprduel_state(machine)); }
-
- hyprduel_state(running_machine &machine)
- : driver_data_t(machine) { }
+ hyprduel_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoregs;
diff --git a/src/mame/includes/ikki.h b/src/mame/includes/ikki.h
index b1bdbbee545..94c2638d875 100644
--- a/src/mame/includes/ikki.h
+++ b/src/mame/includes/ikki.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class ikki_state : public driver_data_t
+class ikki_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ikki_state(machine)); }
-
- ikki_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ikki_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/inufuku.h b/src/mame/includes/inufuku.h
index ecd6d3622dd..ef2ffd706da 100644
--- a/src/mame/includes/inufuku.h
+++ b/src/mame/includes/inufuku.h
@@ -1,11 +1,9 @@
-class inufuku_state : public driver_data_t
+class inufuku_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, inufuku_state(machine)); }
-
- inufuku_state(running_machine &machine)
- : driver_data_t(machine) { }
+ inufuku_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bg_videoram;
diff --git a/src/mame/includes/iremz80.h b/src/mame/includes/iremz80.h
index 68763a04e8a..57226a76f4c 100644
--- a/src/mame/includes/iremz80.h
+++ b/src/mame/includes/iremz80.h
@@ -6,13 +6,11 @@
/* These share sound hardware (in audio/irem.h) and hence driver data */
-class irem_z80_state : public driver_data_t
+class irem_z80_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, irem_z80_state(machine)); }
-
- irem_z80_state(running_machine &machine)
- : driver_data_t(machine) { }
+ irem_z80_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram; // m52, m57, m58
diff --git a/src/mame/includes/ironhors.h b/src/mame/includes/ironhors.h
index 70267860a56..f2299ad1fb8 100644
--- a/src/mame/includes/ironhors.h
+++ b/src/mame/includes/ironhors.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class ironhors_state : public driver_data_t
+class ironhors_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ironhors_state(machine)); }
-
- ironhors_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ironhors_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/jack.h b/src/mame/includes/jack.h
index ec4597b92a4..ff93f9cf1e2 100644
--- a/src/mame/includes/jack.h
+++ b/src/mame/includes/jack.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class jack_state : public driver_data_t
+class jack_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, jack_state(machine)); }
-
- jack_state(running_machine &machine)
- : driver_data_t(machine) { }
+ jack_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/jackal.h b/src/mame/includes/jackal.h
index 64e550391b9..7d3525f0160 100644
--- a/src/mame/includes/jackal.h
+++ b/src/mame/includes/jackal.h
@@ -4,13 +4,11 @@
-class jackal_state : public driver_data_t
+class jackal_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, jackal_state(machine)); }
-
- jackal_state(running_machine &machine)
- : driver_data_t(machine) { }
+ jackal_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoctrl;
diff --git a/src/mame/includes/jailbrek.h b/src/mame/includes/jailbrek.h
index c3a59458b0c..94f2ec38435 100644
--- a/src/mame/includes/jailbrek.h
+++ b/src/mame/includes/jailbrek.h
@@ -7,13 +7,11 @@
#define MASTER_CLOCK XTAL_18_432MHz
#define VOICE_CLOCK XTAL_3_579545MHz
-class jailbrek_state : public driver_data_t
+class jailbrek_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, jailbrek_state(machine)); }
-
- jailbrek_state(running_machine &machine)
- : driver_data_t(machine) { }
+ jailbrek_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/jedi.h b/src/mame/includes/jedi.h
index 4e132c4f6ac..60f0545538d 100644
--- a/src/mame/includes/jedi.h
+++ b/src/mame/includes/jedi.h
@@ -14,13 +14,11 @@
#define JEDI_TMS5220_CLOCK (JEDI_AUDIO_CPU_OSC / 2 / 9) /* div by 9 is via a binary counter that counts from 7 to 16 */
-class jedi_state : public driver_data_t
+class jedi_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, jedi_state(machine)); }
-
- jedi_state(running_machine &machine)
- : driver_data_t(machine) { }
+ jedi_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* machine state */
UINT8 a2d_select;
diff --git a/src/mame/includes/kangaroo.h b/src/mame/includes/kangaroo.h
index 414745ded71..f387ee32950 100644
--- a/src/mame/includes/kangaroo.h
+++ b/src/mame/includes/kangaroo.h
@@ -6,13 +6,11 @@
***************************************************************************/
-class kangaroo_state : public driver_data_t
+class kangaroo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, kangaroo_state(machine)); }
-
- kangaroo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ kangaroo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * video_control;
diff --git a/src/mame/includes/karnov.h b/src/mame/includes/karnov.h
index 82bf251b8fa..c6af763e074 100644
--- a/src/mame/includes/karnov.h
+++ b/src/mame/includes/karnov.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class karnov_state : public driver_data_t
+class karnov_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, karnov_state(machine)); }
-
- karnov_state(running_machine &machine)
- : driver_data_t(machine) { }
+ karnov_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/includes/kchamp.h b/src/mame/includes/kchamp.h
index 2fd82b4527f..42f1dc06c33 100644
--- a/src/mame/includes/kchamp.h
+++ b/src/mame/includes/kchamp.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class kchamp_state : public driver_data_t
+class kchamp_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, kchamp_state(machine)); }
-
- kchamp_state(running_machine &machine)
- : driver_data_t(machine) { }
+ kchamp_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/kickgoal.h b/src/mame/includes/kickgoal.h
index 5facf518b2c..365b3d6a01a 100644
--- a/src/mame/includes/kickgoal.h
+++ b/src/mame/includes/kickgoal.h
@@ -7,13 +7,11 @@
#include "sound/okim6295.h"
#include "machine/eeprom.h"
-class kickgoal_state : public driver_data_t
+class kickgoal_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, kickgoal_state(machine)); }
-
- kickgoal_state(running_machine &machine)
- : driver_data_t(machine),
+ kickgoal_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
adpcm(machine.device<okim6295_device>("oki")),
eeprom(machine.device<eeprom_device>("eeprom")) { }
diff --git a/src/mame/includes/kingobox.h b/src/mame/includes/kingobox.h
index c0e55e722a4..196e283c0b7 100644
--- a/src/mame/includes/kingobox.h
+++ b/src/mame/includes/kingobox.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class kingofb_state : public driver_data_t
+class kingofb_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, kingofb_state(machine)); }
-
- kingofb_state(running_machine &machine)
- : driver_data_t(machine) { }
+ kingofb_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/klax.h b/src/mame/includes/klax.h
index 44c8d8058ba..2715bc9e493 100644
--- a/src/mame/includes/klax.h
+++ b/src/mame/includes/klax.h
@@ -9,10 +9,8 @@
class klax_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, klax_state(machine)); }
-
- klax_state(running_machine &machine)
- : atarigen_state(machine) { }
+ klax_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
};
diff --git a/src/mame/includes/kncljoe.h b/src/mame/includes/kncljoe.h
index dcffafc7fab..a4bb00e7e87 100644
--- a/src/mame/includes/kncljoe.h
+++ b/src/mame/includes/kncljoe.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class kncljoe_state : public driver_data_t
+class kncljoe_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, kncljoe_state(machine)); }
-
- kncljoe_state(running_machine &machine)
- : driver_data_t(machine) { }
+ kncljoe_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/kopunch.h b/src/mame/includes/kopunch.h
index 4713f641489..ed8d33f2ac7 100644
--- a/src/mame/includes/kopunch.h
+++ b/src/mame/includes/kopunch.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class kopunch_state : public driver_data_t
+class kopunch_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, kopunch_state(machine)); }
-
- kopunch_state(running_machine &machine)
- : driver_data_t(machine) { }
+ kopunch_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/ksayakyu.h b/src/mame/includes/ksayakyu.h
index 2583793cbe4..041cdfcea97 100644
--- a/src/mame/includes/ksayakyu.h
+++ b/src/mame/includes/ksayakyu.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class ksayakyu_state : public driver_data_t
+class ksayakyu_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ksayakyu_state(machine)); }
-
- ksayakyu_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ksayakyu_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/kyugo.h b/src/mame/includes/kyugo.h
index 9208e906260..07acb4e746d 100644
--- a/src/mame/includes/kyugo.h
+++ b/src/mame/includes/kyugo.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class kyugo_state : public driver_data_t
+class kyugo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, kyugo_state(machine)); }
-
- kyugo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ kyugo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * fgvideoram;
diff --git a/src/mame/includes/labyrunr.h b/src/mame/includes/labyrunr.h
index b5001d52c7c..ed157f81678 100644
--- a/src/mame/includes/labyrunr.h
+++ b/src/mame/includes/labyrunr.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class labyrunr_state : public driver_data_t
+class labyrunr_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, labyrunr_state(machine)); }
-
- labyrunr_state(running_machine &machine)
- : driver_data_t(machine) { }
+ labyrunr_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram1;
diff --git a/src/mame/includes/ladybug.h b/src/mame/includes/ladybug.h
index 95bf9f50275..11914e557c1 100644
--- a/src/mame/includes/ladybug.h
+++ b/src/mame/includes/ladybug.h
@@ -6,13 +6,11 @@
*************************************************************************/
-class ladybug_state : public driver_data_t
+class ladybug_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ladybug_state(machine)); }
-
- ladybug_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ladybug_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/ladyfrog.h b/src/mame/includes/ladyfrog.h
index 8938ab304f1..2035164d234 100644
--- a/src/mame/includes/ladyfrog.h
+++ b/src/mame/includes/ladyfrog.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class ladyfrog_state : public driver_data_t
+class ladyfrog_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ladyfrog_state(machine)); }
-
- ladyfrog_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ladyfrog_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/laserbat.h b/src/mame/includes/laserbat.h
index 594256f3a39..4e9e667297a 100644
--- a/src/mame/includes/laserbat.h
+++ b/src/mame/includes/laserbat.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class laserbat_state : public driver_data_t
+class laserbat_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, laserbat_state(machine)); }
-
- laserbat_state(running_machine &machine)
- : driver_data_t(machine) { }
+ laserbat_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
tilemap_t *bg_tilemap;
diff --git a/src/mame/includes/lasso.h b/src/mame/includes/lasso.h
index bd293265a6c..1a85ec8d2d6 100644
--- a/src/mame/includes/lasso.h
+++ b/src/mame/includes/lasso.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class lasso_state : public driver_data_t
+class lasso_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, lasso_state(machine)); }
-
- lasso_state(running_machine &machine)
- : driver_data_t(machine) { }
+ lasso_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/lastduel.h b/src/mame/includes/lastduel.h
index 28066029cda..a094c55aa99 100644
--- a/src/mame/includes/lastduel.h
+++ b/src/mame/includes/lastduel.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class lastduel_state : public driver_data_t
+class lastduel_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, lastduel_state(machine)); }
-
- lastduel_state(running_machine &machine)
- : driver_data_t(machine) { }
+ lastduel_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * vram;
diff --git a/src/mame/includes/lazercmd.h b/src/mame/includes/lazercmd.h
index 5066a2ed403..1003314d13c 100644
--- a/src/mame/includes/lazercmd.h
+++ b/src/mame/includes/lazercmd.h
@@ -17,13 +17,11 @@
#define MARKER_HORZ_ADJ -1
#define MARKER_VERT_ADJ -10
-class lazercmd_state : public driver_data_t
+class lazercmd_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, lazercmd_state(machine)); }
-
- lazercmd_state(running_machine &machine)
- : driver_data_t(machine) { }
+ lazercmd_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/lemmings.h b/src/mame/includes/lemmings.h
index a8fd32b17e5..db6f5e8c4ab 100644
--- a/src/mame/includes/lemmings.h
+++ b/src/mame/includes/lemmings.h
@@ -1,11 +1,9 @@
-class lemmings_state : public driver_data_t
+class lemmings_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, lemmings_state(machine)); }
-
- lemmings_state(running_machine &machine)
- : driver_data_t(machine) { }
+ lemmings_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * pixel_0_data;
diff --git a/src/mame/includes/lethal.h b/src/mame/includes/lethal.h
index 377e26db726..888a9bb9527 100644
--- a/src/mame/includes/lethal.h
+++ b/src/mame/includes/lethal.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class lethal_state : public driver_data_t
+class lethal_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, lethal_state(machine)); }
-
- lethal_state(running_machine &machine)
- : driver_data_t(machine) { }
+ lethal_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT8 * paletteram; // currently this uses generic palette handling
diff --git a/src/mame/includes/liberate.h b/src/mame/includes/liberate.h
index d304eb16dc6..837fb076e75 100644
--- a/src/mame/includes/liberate.h
+++ b/src/mame/includes/liberate.h
@@ -1,10 +1,8 @@
-class liberate_state : public driver_data_t
+class liberate_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, liberate_state(machine)); }
-
- liberate_state(running_machine &machine)
- : driver_data_t(machine) { }
+ liberate_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *videoram;
UINT8 *colorram;
diff --git a/src/mame/includes/lkage.h b/src/mame/includes/lkage.h
index dd041c05870..a2e0618771d 100644
--- a/src/mame/includes/lkage.h
+++ b/src/mame/includes/lkage.h
@@ -1,11 +1,9 @@
-class lkage_state : public driver_data_t
+class lkage_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, lkage_state(machine)); }
-
- lkage_state(running_machine &machine)
- : driver_data_t(machine) { }
+ lkage_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 * scroll;
UINT8 * vreg;
diff --git a/src/mame/includes/lockon.h b/src/mame/includes/lockon.h
index b1d2f6202ca..31622ae197f 100644
--- a/src/mame/includes/lockon.h
+++ b/src/mame/includes/lockon.h
@@ -15,13 +15,11 @@
#define VTOTAL 280
-class lockon_state : public driver_data_t
+class lockon_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, lockon_state(machine)); }
-
- lockon_state(running_machine &machine)
- : driver_data_t(machine) { }
+ lockon_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 *char_ram;
diff --git a/src/mame/includes/lsasquad.h b/src/mame/includes/lsasquad.h
index e29402555c4..d78282b2701 100644
--- a/src/mame/includes/lsasquad.h
+++ b/src/mame/includes/lsasquad.h
@@ -1,11 +1,9 @@
-class lsasquad_state : public driver_data_t
+class lsasquad_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, lsasquad_state(machine)); }
-
- lsasquad_state(running_machine &machine)
- : driver_data_t(machine) { }
+ lsasquad_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * scrollram;
diff --git a/src/mame/includes/lwings.h b/src/mame/includes/lwings.h
index ad5fc78c6a0..b6970085b1d 100644
--- a/src/mame/includes/lwings.h
+++ b/src/mame/includes/lwings.h
@@ -1,11 +1,9 @@
-class lwings_state : public driver_data_t
+class lwings_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, lwings_state(machine)); }
-
- lwings_state(running_machine &machine)
- : driver_data_t(machine) { }
+ lwings_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * fgvideoram;
diff --git a/src/mame/includes/m10.h b/src/mame/includes/m10.h
index 14617f2d711..c0fd5d9521f 100644
--- a/src/mame/includes/m10.h
+++ b/src/mame/includes/m10.h
@@ -27,13 +27,11 @@
#define IREMM15_VBSTART (240)
#define IREMM15_VBEND (16)
-class m10_state : public driver_data_t
+class m10_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, m10_state(machine)); }
-
- m10_state(running_machine &machine)
- : driver_data_t(machine) { }
+ m10_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * chargen;
diff --git a/src/mame/includes/macrossp.h b/src/mame/includes/macrossp.h
index 781368e5e34..0f5a611d2ed 100644
--- a/src/mame/includes/macrossp.h
+++ b/src/mame/includes/macrossp.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class macrossp_state : public driver_data_t
+class macrossp_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, macrossp_state(machine)); }
-
- macrossp_state(running_machine &machine)
- : driver_data_t(machine) { }
+ macrossp_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT32 * mainram;
diff --git a/src/mame/includes/madmotor.h b/src/mame/includes/madmotor.h
index 6de2224e06e..6135e5f7a5b 100644
--- a/src/mame/includes/madmotor.h
+++ b/src/mame/includes/madmotor.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class madmotor_state : public driver_data_t
+class madmotor_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, madmotor_state(machine)); }
-
- madmotor_state(running_machine &machine)
- : driver_data_t(machine) { }
+ madmotor_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * pf1_rowscroll;
diff --git a/src/mame/includes/mainevt.h b/src/mame/includes/mainevt.h
index 6bd56e93713..8137c12ff55 100644
--- a/src/mame/includes/mainevt.h
+++ b/src/mame/includes/mainevt.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class mainevt_state : public driver_data_t
+class mainevt_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mainevt_state(machine)); }
-
- mainevt_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mainevt_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT8 * paletteram; // currently this uses generic palette handling
diff --git a/src/mame/includes/mainsnk.h b/src/mame/includes/mainsnk.h
index 9f6870429c3..a0447f674e8 100644
--- a/src/mame/includes/mainsnk.h
+++ b/src/mame/includes/mainsnk.h
@@ -1,10 +1,8 @@
-class mainsnk_state : public driver_data_t
+class mainsnk_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mainsnk_state(machine)); }
-
- mainsnk_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mainsnk_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
tilemap_t *tx_tilemap;
tilemap_t *bg_tilemap;
diff --git a/src/mame/includes/malzak.h b/src/mame/includes/malzak.h
index 062ff374471..6684a279dda 100644
--- a/src/mame/includes/malzak.h
+++ b/src/mame/includes/malzak.h
@@ -5,13 +5,11 @@
*************************************************************************/
-class malzak_state : public driver_data_t
+class malzak_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, malzak_state(machine)); }
-
- malzak_state(running_machine &machine)
- : driver_data_t(machine) { }
+ malzak_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* misc */
// int playfield_x[256];
diff --git a/src/mame/includes/mappy.h b/src/mame/includes/mappy.h
index 91dbafa772c..451649219f6 100644
--- a/src/mame/includes/mappy.h
+++ b/src/mame/includes/mappy.h
@@ -1,10 +1,8 @@
-class mappy_state : public driver_data_t
+class mappy_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mappy_state(machine)); }
-
- mappy_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mappy_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *videoram;
UINT8 *spriteram;
diff --git a/src/mame/includes/mario.h b/src/mame/includes/mario.h
index d8a630dc6d3..ca5371c5417 100644
--- a/src/mame/includes/mario.h
+++ b/src/mame/includes/mario.h
@@ -30,13 +30,11 @@
#define MARIO_PALETTE_LENGTH (256)
-class mario_state : public driver_data_t
+class mario_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mario_state(machine)); }
-
- mario_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mario_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
diff --git a/src/mame/includes/markham.h b/src/mame/includes/markham.h
index dee28a14e91..3537b253f5b 100644
--- a/src/mame/includes/markham.h
+++ b/src/mame/includes/markham.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class markham_state : public driver_data_t
+class markham_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, markham_state(machine)); }
-
- markham_state(running_machine &machine)
- : driver_data_t(machine) { }
+ markham_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/matmania.h b/src/mame/includes/matmania.h
index 5705c531532..6a8f0aa31fa 100644
--- a/src/mame/includes/matmania.h
+++ b/src/mame/includes/matmania.h
@@ -1,11 +1,9 @@
-class matmania_state : public driver_data_t
+class matmania_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, matmania_state(machine)); }
-
- matmania_state(running_machine &machine)
- : driver_data_t(machine) { }
+ matmania_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/mcatadv.h b/src/mame/includes/mcatadv.h
index 795e191befc..05e6c3b492b 100644
--- a/src/mame/includes/mcatadv.h
+++ b/src/mame/includes/mcatadv.h
@@ -1,11 +1,9 @@
-class mcatadv_state : public driver_data_t
+class mcatadv_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mcatadv_state(machine)); }
-
- mcatadv_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mcatadv_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram1;
diff --git a/src/mame/includes/megazone.h b/src/mame/includes/megazone.h
index 86195d1edcb..03a912aebea 100644
--- a/src/mame/includes/megazone.h
+++ b/src/mame/includes/megazone.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class megazone_state : public driver_data_t
+class megazone_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, megazone_state(machine)); }
-
- megazone_state(running_machine &machine)
- : driver_data_t(machine) { }
+ megazone_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * scrollx;
diff --git a/src/mame/includes/mermaid.h b/src/mame/includes/mermaid.h
index 81622ff3aa1..f1ac64b0bfb 100644
--- a/src/mame/includes/mermaid.h
+++ b/src/mame/includes/mermaid.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class mermaid_state : public driver_data_t
+class mermaid_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mermaid_state(machine)); }
-
- mermaid_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mermaid_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/metalmx.h b/src/mame/includes/metalmx.h
index 89ae88ac393..dfc4959304c 100644
--- a/src/mame/includes/metalmx.h
+++ b/src/mame/includes/metalmx.h
@@ -1,10 +1,8 @@
-class metalmx_state : public driver_data_t
+class metalmx_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, metalmx_state(machine)); }
-
- metalmx_state(running_machine &machine)
- : driver_data_t(machine) { }
+ metalmx_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
running_device *maincpu;
running_device *gsp;
diff --git a/src/mame/includes/metlclsh.h b/src/mame/includes/metlclsh.h
index 9319856dc5b..e09e6a94647 100644
--- a/src/mame/includes/metlclsh.h
+++ b/src/mame/includes/metlclsh.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class metlclsh_state : public driver_data_t
+class metlclsh_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, metlclsh_state(machine)); }
-
- metlclsh_state(running_machine &machine)
- : driver_data_t(machine) { }
+ metlclsh_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bgram;
diff --git a/src/mame/includes/metro.h b/src/mame/includes/metro.h
index ec323273d8a..059a208ef72 100644
--- a/src/mame/includes/metro.h
+++ b/src/mame/includes/metro.h
@@ -8,13 +8,11 @@
#include "sound/2151intf.h"
#include "video/konicdev.h"
-class metro_state : public driver_data_t
+class metro_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, metro_state(machine)); }
-
- metro_state(running_machine &machine)
- : driver_data_t(machine),
+ metro_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
maincpu(machine.device<cpu_device>("maincpu")),
audiocpu(machine.device<cpu_device>("audiocpu")),
oki(machine.device<okim6295_device>("oki")),
diff --git a/src/mame/includes/mexico86.h b/src/mame/includes/mexico86.h
index 075d716a368..de6248790d2 100644
--- a/src/mame/includes/mexico86.h
+++ b/src/mame/includes/mexico86.h
@@ -1,11 +1,9 @@
-class mexico86_state : public driver_data_t
+class mexico86_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mexico86_state(machine)); }
-
- mexico86_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mexico86_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * protection_ram;
diff --git a/src/mame/includes/micro3d.h b/src/mame/includes/micro3d.h
index 9e9cb784bf7..c7bb76eb743 100644
--- a/src/mame/includes/micro3d.h
+++ b/src/mame/includes/micro3d.h
@@ -12,13 +12,11 @@
#define VGB_MONITOR_DISPLAY 0
#define DRMATH_MONITOR_DISPLAY 0
-class micro3d_state : public driver_data_t
+class micro3d_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, micro3d_state(machine)); }
-
- micro3d_state(running_machine &machine)
- : driver_data_t(machine) { }
+ micro3d_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
struct
{
diff --git a/src/mame/includes/mikie.h b/src/mame/includes/mikie.h
index ca0f2aec945..6d99fae93e4 100644
--- a/src/mame/includes/mikie.h
+++ b/src/mame/includes/mikie.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class mikie_state : public driver_data_t
+class mikie_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mikie_state(machine)); }
-
- mikie_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mikie_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/mitchell.h b/src/mame/includes/mitchell.h
index 901ac16c1c3..3128e6d0980 100644
--- a/src/mame/includes/mitchell.h
+++ b/src/mame/includes/mitchell.h
@@ -6,13 +6,11 @@
#include "sound/okim6295.h"
-class mitchell_state : public driver_data_t
+class mitchell_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mitchell_state(machine)); }
-
- mitchell_state(running_machine &machine)
- : driver_data_t(machine),
+ mitchell_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
audiocpu(machine.device<cpu_device>("audiocpu")),
oki(machine.device<okim6295_device>("oki")) { }
diff --git a/src/mame/includes/mjkjidai.h b/src/mame/includes/mjkjidai.h
index 0c58b6b6e61..b7ecd22cf31 100644
--- a/src/mame/includes/mjkjidai.h
+++ b/src/mame/includes/mjkjidai.h
@@ -1,10 +1,8 @@
-class mjkjidai_state : public driver_data_t
+class mjkjidai_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mjkjidai_state(machine)); }
-
- mjkjidai_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mjkjidai_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *videoram;
UINT8 *spriteram1;
diff --git a/src/mame/includes/momoko.h b/src/mame/includes/momoko.h
index 12500434f48..fcbeefa9d78 100644
--- a/src/mame/includes/momoko.h
+++ b/src/mame/includes/momoko.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class momoko_state : public driver_data_t
+class momoko_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, momoko_state(machine)); }
-
- momoko_state(running_machine &machine)
- : driver_data_t(machine) { }
+ momoko_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bg_scrollx;
diff --git a/src/mame/includes/moo.h b/src/mame/includes/moo.h
index fd7272ce628..f30791f7520 100644
--- a/src/mame/includes/moo.h
+++ b/src/mame/includes/moo.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class moo_state : public driver_data_t
+class moo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, moo_state(machine)); }
-
- moo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ moo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * workram;
diff --git a/src/mame/includes/mosaic.h b/src/mame/includes/mosaic.h
index 852f280a6ce..4fccd4ccc6d 100644
--- a/src/mame/includes/mosaic.h
+++ b/src/mame/includes/mosaic.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class mosaic_state : public driver_data_t
+class mosaic_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mosaic_state(machine)); }
-
- mosaic_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mosaic_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * fgvideoram;
diff --git a/src/mame/includes/mouser.h b/src/mame/includes/mouser.h
index b9d6f3dfe7a..6b41f29519e 100644
--- a/src/mame/includes/mouser.h
+++ b/src/mame/includes/mouser.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class mouser_state : public driver_data_t
+class mouser_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mouser_state(machine)); }
-
- mouser_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mouser_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/mrdo.h b/src/mame/includes/mrdo.h
index d3e766d371e..c91faee8216 100644
--- a/src/mame/includes/mrdo.h
+++ b/src/mame/includes/mrdo.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class mrdo_state : public driver_data_t
+class mrdo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mrdo_state(machine)); }
-
- mrdo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mrdo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bgvideoram;
diff --git a/src/mame/includes/mrflea.h b/src/mame/includes/mrflea.h
index 9f69702c8f1..d6b6e0ca0b6 100644
--- a/src/mame/includes/mrflea.h
+++ b/src/mame/includes/mrflea.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class mrflea_state : public driver_data_t
+class mrflea_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mrflea_state(machine)); }
-
- mrflea_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mrflea_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/mrjong.h b/src/mame/includes/mrjong.h
index 3a95b4b7d90..0a8f1940454 100644
--- a/src/mame/includes/mrjong.h
+++ b/src/mame/includes/mrjong.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class mrjong_state : public driver_data_t
+class mrjong_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mrjong_state(machine)); }
-
- mrjong_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mrjong_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/mugsmash.h b/src/mame/includes/mugsmash.h
index b0bf97cbf69..2b6a1c017f1 100644
--- a/src/mame/includes/mugsmash.h
+++ b/src/mame/includes/mugsmash.h
@@ -1,11 +1,9 @@
-class mugsmash_state : public driver_data_t
+class mugsmash_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mugsmash_state(machine)); }
-
- mugsmash_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mugsmash_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 *videoram1;
UINT16 *videoram2;
diff --git a/src/mame/includes/munchmo.h b/src/mame/includes/munchmo.h
index 5b5500928ce..5c23ee576a1 100644
--- a/src/mame/includes/munchmo.h
+++ b/src/mame/includes/munchmo.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class munchmo_state : public driver_data_t
+class munchmo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, munchmo_state(machine)); }
-
- munchmo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ munchmo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * vreg;
diff --git a/src/mame/includes/mw8080bw.h b/src/mame/includes/mw8080bw.h
index de8179e0ba8..75e55032a9c 100644
--- a/src/mame/includes/mw8080bw.h
+++ b/src/mame/includes/mw8080bw.h
@@ -30,13 +30,11 @@
#define MW8080BW_HPIXCOUNT (MW8080BW_HBSTART + 4)
-class mw8080bw_state : public driver_data_t
+class mw8080bw_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mw8080bw_state(machine)); }
-
- mw8080bw_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mw8080bw_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * main_ram;
diff --git a/src/mame/includes/mystston.h b/src/mame/includes/mystston.h
index 24eb316aa94..037fec5dd13 100644
--- a/src/mame/includes/mystston.h
+++ b/src/mame/includes/mystston.h
@@ -10,13 +10,11 @@
#define MYSTSTON_MASTER_CLOCK (XTAL_12MHz)
-class mystston_state : public driver_data_t
+class mystston_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, mystston_state(machine)); }
-
- mystston_state(running_machine &machine)
- : driver_data_t(machine) { }
+ mystston_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* machine state */
UINT8 *ay8910_data;
diff --git a/src/mame/includes/n64.h b/src/mame/includes/n64.h
index ce888f33b7c..baf381fd2e7 100644
--- a/src/mame/includes/n64.h
+++ b/src/mame/includes/n64.h
@@ -6,13 +6,11 @@
/*----------- driver state -----------*/
-class _n64_state : public driver_data_t
+class _n64_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, _n64_state(machine)); }
-
- _n64_state(running_machine &machine)
- : driver_data_t(machine) { }
+ _n64_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* video-related */
N64::RDP::Processor m_rdp;
diff --git a/src/mame/includes/n8080.h b/src/mame/includes/n8080.h
index 8a9eaff9773..81f44365023 100644
--- a/src/mame/includes/n8080.h
+++ b/src/mame/includes/n8080.h
@@ -1,11 +1,9 @@
-class n8080_state : public driver_data_t
+class n8080_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, n8080_state(machine)); }
-
- n8080_state(running_machine &machine)
- : driver_data_t(machine) { }
+ n8080_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/nemesis.h b/src/mame/includes/nemesis.h
index 3f3cda4d6d3..841c69825af 100644
--- a/src/mame/includes/nemesis.h
+++ b/src/mame/includes/nemesis.h
@@ -1,10 +1,8 @@
-class nemesis_state : public driver_data_t
+class nemesis_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, nemesis_state(machine)); }
-
- nemesis_state(running_machine &machine)
- : driver_data_t(machine) { }
+ nemesis_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram1;
diff --git a/src/mame/includes/neogeo.h b/src/mame/includes/neogeo.h
index e14ca4481eb..ec60355b1a4 100644
--- a/src/mame/includes/neogeo.h
+++ b/src/mame/includes/neogeo.h
@@ -28,13 +28,11 @@
-class neogeo_state : public driver_data_t
+class neogeo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, neogeo_state(machine)); }
-
- neogeo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ neogeo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT8 *memcard_data; // this currently uses generic handlers
diff --git a/src/mame/includes/news.h b/src/mame/includes/news.h
index 9455efaa976..ec6913fba60 100644
--- a/src/mame/includes/news.h
+++ b/src/mame/includes/news.h
@@ -1,11 +1,9 @@
-class news_state : public driver_data_t
+class news_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, news_state(machine)); }
-
- news_state(running_machine &machine)
- : driver_data_t(machine) { }
+ news_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * bgram;
diff --git a/src/mame/includes/ninjaw.h b/src/mame/includes/ninjaw.h
index 08cb055e4ed..ce071dc06e2 100644
--- a/src/mame/includes/ninjaw.h
+++ b/src/mame/includes/ninjaw.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class ninjaw_state : public driver_data_t
+class ninjaw_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ninjaw_state(machine)); }
-
- ninjaw_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ninjaw_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * spriteram;
diff --git a/src/mame/includes/nitedrvr.h b/src/mame/includes/nitedrvr.h
index fe685f9c2f9..04e7a92fd93 100644
--- a/src/mame/includes/nitedrvr.h
+++ b/src/mame/includes/nitedrvr.h
@@ -15,13 +15,11 @@
#define NITEDRVR_ATTRACT_EN NODE_06
-class nitedrvr_state : public driver_data_t
+class nitedrvr_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, nitedrvr_state(machine)); }
-
- nitedrvr_state(running_machine &machine)
- : driver_data_t(machine) { }
+ nitedrvr_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * hvc;
diff --git a/src/mame/includes/nycaptor.h b/src/mame/includes/nycaptor.h
index 94f0602109e..c1c4f23cf3f 100644
--- a/src/mame/includes/nycaptor.h
+++ b/src/mame/includes/nycaptor.h
@@ -1,11 +1,9 @@
-class nycaptor_state : public driver_data_t
+class nycaptor_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, nycaptor_state(machine)); }
-
- nycaptor_state(running_machine &machine)
- : driver_data_t(machine) { }
+ nycaptor_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * sharedram;
diff --git a/src/mame/includes/offtwall.h b/src/mame/includes/offtwall.h
index 3ce0b560d53..0b71bd72bb6 100644
--- a/src/mame/includes/offtwall.h
+++ b/src/mame/includes/offtwall.h
@@ -9,10 +9,8 @@
class offtwall_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, offtwall_state(machine)); }
-
- offtwall_state(running_machine &machine)
- : atarigen_state(machine) { }
+ offtwall_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT16 *bankswitch_base;
UINT16 *bankrom_base;
diff --git a/src/mame/includes/ohmygod.h b/src/mame/includes/ohmygod.h
index edde2a7e840..e61418e3dcd 100644
--- a/src/mame/includes/ohmygod.h
+++ b/src/mame/includes/ohmygod.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class ohmygod_state : public driver_data_t
+class ohmygod_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ohmygod_state(machine)); }
-
- ohmygod_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ohmygod_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
diff --git a/src/mame/includes/ojankohs.h b/src/mame/includes/ojankohs.h
index 9716c5a1573..170d6d9e98f 100644
--- a/src/mame/includes/ojankohs.h
+++ b/src/mame/includes/ojankohs.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class ojankohs_state : public driver_data_t
+class ojankohs_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ojankohs_state(machine)); }
-
- ojankohs_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ojankohs_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/oneshot.h b/src/mame/includes/oneshot.h
index 66193596582..0aa47670316 100644
--- a/src/mame/includes/oneshot.h
+++ b/src/mame/includes/oneshot.h
@@ -1,11 +1,9 @@
-class oneshot_state : public driver_data_t
+class oneshot_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, oneshot_state(machine)); }
-
- oneshot_state(running_machine &machine)
- : driver_data_t(machine) { }
+ oneshot_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * sprites;
diff --git a/src/mame/includes/opwolf.h b/src/mame/includes/opwolf.h
index 3d26cd69183..e48c608b507 100644
--- a/src/mame/includes/opwolf.h
+++ b/src/mame/includes/opwolf.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class opwolf_state : public driver_data_t
+class opwolf_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, opwolf_state(machine)); }
-
- opwolf_state(running_machine &machine)
- : driver_data_t(machine) { }
+ opwolf_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * cchip_ram;
diff --git a/src/mame/includes/orbit.h b/src/mame/includes/orbit.h
index c17cdef72bb..1e4a10dc8db 100644
--- a/src/mame/includes/orbit.h
+++ b/src/mame/includes/orbit.h
@@ -15,13 +15,11 @@
#define ORBIT_WARNING_EN NODE_06
#define ORBIT_NOISE_EN NODE_07
-class orbit_state : public driver_data_t
+class orbit_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, orbit_state(machine)); }
-
- orbit_state(running_machine &machine)
- : driver_data_t(machine) { }
+ orbit_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * playfield_ram;
diff --git a/src/mame/includes/othldrby.h b/src/mame/includes/othldrby.h
index d9a40d2d935..51954ec1bb8 100644
--- a/src/mame/includes/othldrby.h
+++ b/src/mame/includes/othldrby.h
@@ -6,13 +6,11 @@
#define OTHLDRBY_VREG_SIZE 18
-class othldrby_state : public driver_data_t
+class othldrby_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, othldrby_state(machine)); }
-
- othldrby_state(running_machine &machine)
- : driver_data_t(machine) { }
+ othldrby_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * vram;
diff --git a/src/mame/includes/othunder.h b/src/mame/includes/othunder.h
index 4110583705c..1a77acd3d9c 100644
--- a/src/mame/includes/othunder.h
+++ b/src/mame/includes/othunder.h
@@ -15,13 +15,11 @@ struct othunder_tempsprite
};
-class othunder_state : public driver_data_t
+class othunder_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, othunder_state(machine)); }
-
- othunder_state(running_machine &machine)
- : driver_data_t(machine) { }
+ othunder_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * spriteram;
diff --git a/src/mame/includes/overdriv.h b/src/mame/includes/overdriv.h
index a388879b659..21912cd14fd 100644
--- a/src/mame/includes/overdriv.h
+++ b/src/mame/includes/overdriv.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class overdriv_state : public driver_data_t
+class overdriv_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, overdriv_state(machine)); }
-
- overdriv_state(running_machine &machine)
- : driver_data_t(machine) { }
+ overdriv_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT16 * paletteram; // currently this uses generic palette handling
diff --git a/src/mame/includes/pandoras.h b/src/mame/includes/pandoras.h
index a894566621f..513874d8660 100644
--- a/src/mame/includes/pandoras.h
+++ b/src/mame/includes/pandoras.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class pandoras_state : public driver_data_t
+class pandoras_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, pandoras_state(machine)); }
-
- pandoras_state(running_machine &machine)
- : driver_data_t(machine) { }
+ pandoras_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/paradise.h b/src/mame/includes/paradise.h
index 85f47f40ff6..c9bc56375ed 100644
--- a/src/mame/includes/paradise.h
+++ b/src/mame/includes/paradise.h
@@ -1,11 +1,9 @@
-class paradise_state : public driver_data_t
+class paradise_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, paradise_state(machine)); }
-
- paradise_state(running_machine &machine)
- : driver_data_t(machine) { }
+ paradise_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * vram_0;
diff --git a/src/mame/includes/parodius.h b/src/mame/includes/parodius.h
index 71c071db915..90fc298fa77 100644
--- a/src/mame/includes/parodius.h
+++ b/src/mame/includes/parodius.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class parodius_state : public driver_data_t
+class parodius_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, parodius_state(machine)); }
-
- parodius_state(running_machine &machine)
- : driver_data_t(machine) { }
+ parodius_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram;
diff --git a/src/mame/includes/pass.h b/src/mame/includes/pass.h
index fd5ca1882dd..e6e7f72c523 100644
--- a/src/mame/includes/pass.h
+++ b/src/mame/includes/pass.h
@@ -1,10 +1,8 @@
-class pass_state : public driver_data_t
+class pass_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, pass_state(machine)); }
-
- pass_state(running_machine &machine)
- : driver_data_t(machine) { }
+ pass_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
tilemap_t *bg_tilemap;
tilemap_t *fg_tilemap;
diff --git a/src/mame/includes/pbaction.h b/src/mame/includes/pbaction.h
index f0ad59a8b9a..da0736b141f 100644
--- a/src/mame/includes/pbaction.h
+++ b/src/mame/includes/pbaction.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class pbaction_state : public driver_data_t
+class pbaction_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, pbaction_state(machine)); }
-
- pbaction_state(running_machine &machine)
- : driver_data_t(machine) { }
+ pbaction_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/pgm.h b/src/mame/includes/pgm.h
index 77d6a4b903e..fd3502405f9 100644
--- a/src/mame/includes/pgm.h
+++ b/src/mame/includes/pgm.h
@@ -1,11 +1,9 @@
-class pgm_state : public driver_data_t
+class pgm_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, pgm_state(machine)); }
-
- pgm_state(running_machine &machine)
- : driver_data_t(machine) { }
+ pgm_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT16 * mainram; // currently this is also used by nvram handler
diff --git a/src/mame/includes/pktgaldx.h b/src/mame/includes/pktgaldx.h
index 310ef3fce20..5f9c5a98be4 100644
--- a/src/mame/includes/pktgaldx.h
+++ b/src/mame/includes/pktgaldx.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class pktgaldx_state : public driver_data_t
+class pktgaldx_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, pktgaldx_state(machine)); }
-
- pktgaldx_state(running_machine &machine)
- : driver_data_t(machine) { }
+ pktgaldx_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * pf1_rowscroll;
diff --git a/src/mame/includes/playmark.h b/src/mame/includes/playmark.h
index 0b9696c8d04..eda55e4393f 100644
--- a/src/mame/includes/playmark.h
+++ b/src/mame/includes/playmark.h
@@ -1,11 +1,9 @@
-class playmark_state : public driver_data_t
+class playmark_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, playmark_state(machine)); }
-
- playmark_state(running_machine &machine)
- : driver_data_t(machine) { }
+ playmark_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bgvideoram;
diff --git a/src/mame/includes/plygonet.h b/src/mame/includes/plygonet.h
index 1463093f7ad..e32321ae09f 100644
--- a/src/mame/includes/plygonet.h
+++ b/src/mame/includes/plygonet.h
@@ -1,10 +1,8 @@
-class polygonet_state : public driver_data_t
+class polygonet_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, polygonet_state(machine)); }
-
- polygonet_state(running_machine &machine)
- : driver_data_t(machine) { }
+ polygonet_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* 68k-side shared ram */
UINT32* shared_ram;
diff --git a/src/mame/includes/popper.h b/src/mame/includes/popper.h
index 964b8a22a1c..03493e3fec1 100644
--- a/src/mame/includes/popper.h
+++ b/src/mame/includes/popper.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class popper_state : public driver_data_t
+class popper_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, popper_state(machine)); }
-
- popper_state(running_machine &machine)
- : driver_data_t(machine) { }
+ popper_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/prehisle.h b/src/mame/includes/prehisle.h
index 352a650883b..c1db8a2aac2 100644
--- a/src/mame/includes/prehisle.h
+++ b/src/mame/includes/prehisle.h
@@ -1,10 +1,8 @@
-class prehisle_state : public driver_data_t
+class prehisle_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, prehisle_state(machine)); }
-
- prehisle_state(running_machine &machine)
- : driver_data_t(machine) { }
+ prehisle_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 *spriteram;
diff --git a/src/mame/includes/psikyo.h b/src/mame/includes/psikyo.h
index 409cb5e5100..b486e6c5d30 100644
--- a/src/mame/includes/psikyo.h
+++ b/src/mame/includes/psikyo.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class psikyo_state : public driver_data_t
+class psikyo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, psikyo_state(machine)); }
-
- psikyo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ psikyo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT32 * vram_0;
diff --git a/src/mame/includes/psikyo4.h b/src/mame/includes/psikyo4.h
index 173c0251405..4a6a483d4e9 100644
--- a/src/mame/includes/psikyo4.h
+++ b/src/mame/includes/psikyo4.h
@@ -7,13 +7,11 @@
#define MASTER_CLOCK 57272700 // main oscillator frequency
-class psikyo4_state : public driver_data_t
+class psikyo4_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, psikyo4_state(machine)); }
-
- psikyo4_state(running_machine &machine)
- : driver_data_t(machine) { }
+ psikyo4_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT32 * vidregs;
diff --git a/src/mame/includes/psikyosh.h b/src/mame/includes/psikyosh.h
index e6b296e1fd0..2cddf4e315b 100644
--- a/src/mame/includes/psikyosh.h
+++ b/src/mame/includes/psikyosh.h
@@ -16,13 +16,11 @@
#define SPRITE_PRI(n) (((state->vidregs[2] << (4*n)) & 0xf0000000 ) >> 28)
-class psikyosh_state : public driver_data_t
+class psikyosh_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, psikyosh_state(machine)); }
-
- psikyosh_state(running_machine &machine)
- : driver_data_t(machine) { }
+ psikyosh_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT32 * bgram;
diff --git a/src/mame/includes/pushman.h b/src/mame/includes/pushman.h
index 37ad252c7b6..7b1eea7f142 100644
--- a/src/mame/includes/pushman.h
+++ b/src/mame/includes/pushman.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class pushman_state : public driver_data_t
+class pushman_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, pushman_state(machine)); }
-
- pushman_state(running_machine &machine)
- : driver_data_t(machine) { }
+ pushman_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/includes/qix.h b/src/mame/includes/qix.h
index 1479509bec4..ac1ec91e513 100644
--- a/src/mame/includes/qix.h
+++ b/src/mame/includes/qix.h
@@ -17,13 +17,11 @@
#define QIX_CHARACTER_CLOCK (20000000/2/16)
-class qix_state : public driver_data_t
+class qix_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, qix_state(machine)); }
-
- qix_state(running_machine &machine)
- : driver_data_t(machine) { }
+ qix_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* machine state */
UINT8 *_68705_port_out;
diff --git a/src/mame/includes/rainbow.h b/src/mame/includes/rainbow.h
index b4166792e33..3a93e21c481 100644
--- a/src/mame/includes/rainbow.h
+++ b/src/mame/includes/rainbow.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class rainbow_state : public driver_data_t
+class rainbow_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, rainbow_state(machine)); }
-
- rainbow_state(running_machine &machine)
- : driver_data_t(machine) { }
+ rainbow_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * spriteram;
diff --git a/src/mame/includes/rampart.h b/src/mame/includes/rampart.h
index d60c4241698..dfd1327d60e 100644
--- a/src/mame/includes/rampart.h
+++ b/src/mame/includes/rampart.h
@@ -10,10 +10,8 @@
class rampart_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, rampart_state(machine)); }
-
- rampart_state(running_machine &machine)
- : atarigen_state(machine) { }
+ rampart_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT16 * bitmap;
UINT8 has_mo;
diff --git a/src/mame/includes/rastan.h b/src/mame/includes/rastan.h
index 330d00fce52..3e468ebafe0 100644
--- a/src/mame/includes/rastan.h
+++ b/src/mame/includes/rastan.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class rastan_state : public driver_data_t
+class rastan_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, rastan_state(machine)); }
-
- rastan_state(running_machine &machine)
- : driver_data_t(machine) { }
+ rastan_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT16 * paletteram; // this currently uses generic palette handlers
diff --git a/src/mame/includes/relief.h b/src/mame/includes/relief.h
index 34cd8bf9c9f..df9d00682e9 100644
--- a/src/mame/includes/relief.h
+++ b/src/mame/includes/relief.h
@@ -9,10 +9,8 @@
class relief_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, relief_state(machine)); }
-
- relief_state(running_machine &machine)
- : atarigen_state(machine) { }
+ relief_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT8 ym2413_volume;
UINT8 overall_volume;
diff --git a/src/mame/includes/rockrage.h b/src/mame/includes/rockrage.h
index 8f5e9d9b657..41e163681fa 100644
--- a/src/mame/includes/rockrage.h
+++ b/src/mame/includes/rockrage.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class rockrage_state : public driver_data_t
+class rockrage_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, rockrage_state(machine)); }
-
- rockrage_state(running_machine &machine)
- : driver_data_t(machine) { }
+ rockrage_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * paletteram;
diff --git a/src/mame/includes/rohga.h b/src/mame/includes/rohga.h
index a09d7661e43..705b8cdbba0 100644
--- a/src/mame/includes/rohga.h
+++ b/src/mame/includes/rohga.h
@@ -7,13 +7,11 @@
#include "sound/okim6295.h"
#include "video/deco16ic.h"
-class rohga_state : public driver_data_t
+class rohga_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, rohga_state(machine)); }
-
- rohga_state(running_machine &machine)
- : driver_data_t(machine),
+ rohga_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
maincpu(machine.device<cpu_device>("maincpu")),
audiocpu(machine.device<cpu_device>("audiocpu")),
deco16ic(machine.device<deco16ic_device>("deco_custom")),
diff --git a/src/mame/includes/rollerg.h b/src/mame/includes/rollerg.h
index 8da3d1a750b..89bf1c2bd15 100644
--- a/src/mame/includes/rollerg.h
+++ b/src/mame/includes/rollerg.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class rollerg_state : public driver_data_t
+class rollerg_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, rollerg_state(machine)); }
-
- rollerg_state(running_machine &machine)
- : driver_data_t(machine) { }
+ rollerg_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT8 * paletteram; // currently this uses generic palette handling
diff --git a/src/mame/includes/rungun.h b/src/mame/includes/rungun.h
index cec1ea87266..dd9ab587830 100644
--- a/src/mame/includes/rungun.h
+++ b/src/mame/includes/rungun.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class rungun_state : public driver_data_t
+class rungun_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, rungun_state(machine)); }
-
- rungun_state(running_machine &machine)
- : driver_data_t(machine) { }
+ rungun_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * _936_videoram;
diff --git a/src/mame/includes/sbugger.h b/src/mame/includes/sbugger.h
index f335338577c..9c6287a59ad 100644
--- a/src/mame/includes/sbugger.h
+++ b/src/mame/includes/sbugger.h
@@ -1,10 +1,8 @@
-class sbugger_state : public driver_data_t
+class sbugger_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, sbugger_state(machine)); }
-
- sbugger_state(running_machine &machine)
- : driver_data_t(machine) { }
+ sbugger_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *videoram;
UINT8 *videoram_attr;
diff --git a/src/mame/includes/sderby.h b/src/mame/includes/sderby.h
index 24aec8e4063..de1a57bf4de 100644
--- a/src/mame/includes/sderby.h
+++ b/src/mame/includes/sderby.h
@@ -1,10 +1,8 @@
-class sderby_state : public driver_data_t
+class sderby_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, sderby_state(machine)); }
-
- sderby_state(running_machine &machine)
- : driver_data_t(machine) { }
+ sderby_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 *spriteram;
size_t spriteram_size;
diff --git a/src/mame/includes/segas16.h b/src/mame/includes/segas16.h
index dd5fd807950..2faa1fe9127 100644
--- a/src/mame/includes/segas16.h
+++ b/src/mame/includes/segas16.h
@@ -1,11 +1,9 @@
-class segas1x_state : public driver_data_t
+class segas1x_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, segas1x_state(machine)); }
-
- segas1x_state(running_machine &machine)
- : driver_data_t(machine),
+ segas1x_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
interrupt_timer(machine.device<timer_device>("int_timer")) { }
/* memory pointers */
diff --git a/src/mame/includes/seta.h b/src/mame/includes/seta.h
index 27d19ac87e2..0c4eb6bd8d2 100644
--- a/src/mame/includes/seta.h
+++ b/src/mame/includes/seta.h
@@ -24,13 +24,11 @@ struct _game_offset
int tilemap_offs[2];
};
-class seta_state : public driver_data_t
+class seta_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, seta_state(machine)); }
-
- seta_state(running_machine &machine)
- : driver_data_t(machine) { }
+ seta_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *sharedram;
UINT16 *workram;
diff --git a/src/mame/includes/seta2.h b/src/mame/includes/seta2.h
index 73e24167df2..9357a95364c 100644
--- a/src/mame/includes/seta2.h
+++ b/src/mame/includes/seta2.h
@@ -1,10 +1,8 @@
-class seta2_state : public driver_data_t
+class seta2_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, seta2_state(machine)); }
-
- seta2_state(running_machine &machine)
- : driver_data_t(machine) { }
+ seta2_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 *vregs;
int yoffset;
diff --git a/src/mame/includes/sf.h b/src/mame/includes/sf.h
index 6c26f8fcca2..a8af6a27863 100644
--- a/src/mame/includes/sf.h
+++ b/src/mame/includes/sf.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class sf_state : public driver_data_t
+class sf_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, sf_state(machine)); }
-
- sf_state(running_machine &machine)
- : driver_data_t(machine) { }
+ sf_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/includes/shadfrce.h b/src/mame/includes/shadfrce.h
index 6fa8fa874f6..4a5c0eaf5e5 100644
--- a/src/mame/includes/shadfrce.h
+++ b/src/mame/includes/shadfrce.h
@@ -1,10 +1,8 @@
-class shadfrce_state : public driver_data_t
+class shadfrce_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, shadfrce_state(machine)); }
-
- shadfrce_state(running_machine &machine)
- : driver_data_t(machine) { }
+ shadfrce_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
tilemap_t *fgtilemap;
tilemap_t *bg0tilemap;
diff --git a/src/mame/includes/shootout.h b/src/mame/includes/shootout.h
index 6ea11468e60..91c3909f845 100644
--- a/src/mame/includes/shootout.h
+++ b/src/mame/includes/shootout.h
@@ -1,10 +1,8 @@
-class shootout_state : public driver_data_t
+class shootout_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, shootout_state(machine)); }
-
- shootout_state(running_machine &machine)
- : driver_data_t(machine) { }
+ shootout_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
tilemap_t *background;
tilemap_t *foreground;
diff --git a/src/mame/includes/shuuz.h b/src/mame/includes/shuuz.h
index 74f875c05fd..1fc7bf3a30f 100644
--- a/src/mame/includes/shuuz.h
+++ b/src/mame/includes/shuuz.h
@@ -9,10 +9,8 @@
class shuuz_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, shuuz_state(machine)); }
-
- shuuz_state(running_machine &machine)
- : atarigen_state(machine) { }
+ shuuz_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
};
diff --git a/src/mame/includes/sidearms.h b/src/mame/includes/sidearms.h
index d9f3464212f..a173c6c74c7 100644
--- a/src/mame/includes/sidearms.h
+++ b/src/mame/includes/sidearms.h
@@ -1,10 +1,8 @@
-class sidearms_state : public driver_data_t
+class sidearms_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, sidearms_state(machine)); }
-
- sidearms_state(running_machine &machine)
- : driver_data_t(machine) { }
+ sidearms_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
int gameid;
diff --git a/src/mame/includes/sidepckt.h b/src/mame/includes/sidepckt.h
index 1da1f4998e2..a4ef848d1c1 100644
--- a/src/mame/includes/sidepckt.h
+++ b/src/mame/includes/sidepckt.h
@@ -1,10 +1,8 @@
-class sidepckt_state : public driver_data_t
+class sidepckt_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, sidepckt_state(machine)); }
-
- sidepckt_state(running_machine &machine)
- : driver_data_t(machine) { }
+ sidepckt_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
tilemap_t *bg_tilemap;
UINT8 *colorram;
diff --git a/src/mame/includes/silkroad.h b/src/mame/includes/silkroad.h
index 58753c2055f..6c1730e7e9c 100644
--- a/src/mame/includes/silkroad.h
+++ b/src/mame/includes/silkroad.h
@@ -1,10 +1,8 @@
-class silkroad_state : public driver_data_t
+class silkroad_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, silkroad_state(machine)); }
-
- silkroad_state(running_machine &machine)
- : driver_data_t(machine) { }
+ silkroad_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT32 *vidram;
UINT32 *vidram2;
diff --git a/src/mame/includes/simpl156.h b/src/mame/includes/simpl156.h
index 58f1130226d..4dba56f5316 100644
--- a/src/mame/includes/simpl156.h
+++ b/src/mame/includes/simpl156.h
@@ -8,13 +8,11 @@
#include "sound/okim6295.h"
#include "video/deco16ic.h"
-class simpl156_state : public driver_data_t
+class simpl156_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, simpl156_state(machine)); }
-
- simpl156_state(running_machine &machine)
- : driver_data_t(machine),
+ simpl156_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
maincpu(machine.device<cpu_device>("maincpu")),
deco16ic(machine.device<deco16ic_device>("deco_custom")),
eeprom(machine.device<eeprom_device>("eeprom")),
diff --git a/src/mame/includes/simpsons.h b/src/mame/includes/simpsons.h
index c291be78f71..22e6e0fb930 100644
--- a/src/mame/includes/simpsons.h
+++ b/src/mame/includes/simpsons.h
@@ -1,11 +1,9 @@
-class simpsons_state : public driver_data_t
+class simpsons_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, simpsons_state(machine)); }
-
- simpsons_state(running_machine &machine)
- : driver_data_t(machine) { }
+ simpsons_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram;
diff --git a/src/mame/includes/skullxbo.h b/src/mame/includes/skullxbo.h
index 34b18dd777d..d5622b63bf8 100644
--- a/src/mame/includes/skullxbo.h
+++ b/src/mame/includes/skullxbo.h
@@ -9,10 +9,8 @@
class skullxbo_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, skullxbo_state(machine)); }
-
- skullxbo_state(running_machine &machine)
- : atarigen_state(machine) { }
+ skullxbo_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
};
diff --git a/src/mame/includes/skyfox.h b/src/mame/includes/skyfox.h
index 07d2dda4c16..0bf86f37fb8 100644
--- a/src/mame/includes/skyfox.h
+++ b/src/mame/includes/skyfox.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class skyfox_state : public driver_data_t
+class skyfox_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, skyfox_state(machine)); }
-
- skyfox_state(running_machine &machine)
- : driver_data_t(machine) { }
+ skyfox_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * spriteram;
diff --git a/src/mame/includes/slapshot.h b/src/mame/includes/slapshot.h
index c0c14a45cf0..82e4e3ffee2 100644
--- a/src/mame/includes/slapshot.h
+++ b/src/mame/includes/slapshot.h
@@ -14,13 +14,11 @@ struct slapshot_tempsprite
int primask;
};
-class slapshot_state : public driver_data_t
+class slapshot_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, slapshot_state(machine)); }
-
- slapshot_state(running_machine &machine)
- : driver_data_t(machine) { }
+ slapshot_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * color_ram;
diff --git a/src/mame/includes/snes.h b/src/mame/includes/snes.h
index 77a1d05f439..116efb7a583 100644
--- a/src/mame/includes/snes.h
+++ b/src/mame/includes/snes.h
@@ -395,13 +395,11 @@ struct snes_superscope
typedef void (*snes_io_read)(running_machine *machine);
typedef UINT8 (*snes_oldjoy_read)(running_machine *machine);
-class snes_state : public driver_data_t
+class snes_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, snes_state(machine)); }
-
- snes_state(running_machine &machine)
- : driver_data_t(machine) { }
+ snes_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* misc */
UINT16 htmult; /* in 512 wide, we run HTOTAL double and halve it on latching */
diff --git a/src/mame/includes/snk.h b/src/mame/includes/snk.h
index cc78e618f3c..dd36a89279a 100644
--- a/src/mame/includes/snk.h
+++ b/src/mame/includes/snk.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class snk_state : public driver_data_t
+class snk_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, snk_state(machine)); }
-
- snk_state(running_machine &machine)
- : driver_data_t(machine) { }
+ snk_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
int countryc_trackball;
int last_value[2];
diff --git a/src/mame/includes/snk6502.h b/src/mame/includes/snk6502.h
index be46c82a6e7..35cc704ed30 100644
--- a/src/mame/includes/snk6502.h
+++ b/src/mame/includes/snk6502.h
@@ -10,13 +10,11 @@
#include "sound/sn76477.h"
-class snk6502_state : public driver_data_t
+class snk6502_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, snk6502_state(machine)); }
-
- snk6502_state(running_machine &machine)
- : driver_data_t(machine) { }
+ snk6502_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 sasuke_counter;
diff --git a/src/mame/includes/snk68.h b/src/mame/includes/snk68.h
index fcf51a879b9..a2254c072cc 100644
--- a/src/mame/includes/snk68.h
+++ b/src/mame/includes/snk68.h
@@ -1,10 +1,8 @@
-class snk68_state : public driver_data_t
+class snk68_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, snk68_state(machine)); }
-
- snk68_state(running_machine &machine)
- : driver_data_t(machine) { }
+ snk68_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
int invert_controls;
int sound_status;
diff --git a/src/mame/includes/sonson.h b/src/mame/includes/sonson.h
index d3bbcd3aeef..e9efced0bad 100644
--- a/src/mame/includes/sonson.h
+++ b/src/mame/includes/sonson.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class sonson_state : public driver_data_t
+class sonson_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, sonson_state(machine)); }
-
- sonson_state(running_machine &machine)
- : driver_data_t(machine) { }
+ sonson_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/spbactn.h b/src/mame/includes/spbactn.h
index 5ec9d3daa54..52db40e4266 100644
--- a/src/mame/includes/spbactn.h
+++ b/src/mame/includes/spbactn.h
@@ -1,10 +1,8 @@
-class spbactn_state : public driver_data_t
+class spbactn_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, spbactn_state(machine)); }
-
- spbactn_state(running_machine &machine)
- : driver_data_t(machine) { }
+ spbactn_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 *bgvideoram;
UINT16 *fgvideoram;
diff --git a/src/mame/includes/spy.h b/src/mame/includes/spy.h
index 0992c4ef61e..bc12d2919c7 100644
--- a/src/mame/includes/spy.h
+++ b/src/mame/includes/spy.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class spy_state : public driver_data_t
+class spy_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, spy_state(machine)); }
-
- spy_state(running_machine &machine)
- : driver_data_t(machine) { }
+ spy_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram;
diff --git a/src/mame/includes/srmp2.h b/src/mame/includes/srmp2.h
index c2c0534fc33..cf11c9d3b37 100644
--- a/src/mame/includes/srmp2.h
+++ b/src/mame/includes/srmp2.h
@@ -1,10 +1,8 @@
-class srmp2_state : public driver_data_t
+class srmp2_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, srmp2_state(machine)); }
-
- srmp2_state(running_machine &machine)
- : driver_data_t(machine) { }
+ srmp2_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
int color_bank;
int gfx_bank;
diff --git a/src/mame/includes/sslam.h b/src/mame/includes/sslam.h
index afc34c447c1..b2b9ef553ed 100644
--- a/src/mame/includes/sslam.h
+++ b/src/mame/includes/sslam.h
@@ -1,10 +1,8 @@
-class sslam_state : public driver_data_t
+class sslam_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, sslam_state(machine)); }
-
- sslam_state(running_machine &machine)
- : driver_data_t(machine) { }
+ sslam_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
emu_timer *music_timer;
diff --git a/src/mame/includes/ssv.h b/src/mame/includes/ssv.h
index 4598c2ed80d..ad0a9c4925f 100644
--- a/src/mame/includes/ssv.h
+++ b/src/mame/includes/ssv.h
@@ -1,10 +1,8 @@
-class ssv_state : public driver_data_t
+class ssv_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ssv_state(machine)); }
-
- ssv_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ssv_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 *scroll;
UINT16 *paletteram;
diff --git a/src/mame/includes/stactics.h b/src/mame/includes/stactics.h
index 1a030e45196..54627ee6f64 100644
--- a/src/mame/includes/stactics.h
+++ b/src/mame/includes/stactics.h
@@ -7,13 +7,11 @@
****************************************************************************/
-class stactics_state : public driver_data_t
+class stactics_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, stactics_state(machine)); }
-
- stactics_state(running_machine &machine)
- : driver_data_t(machine) { }
+ stactics_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* machine state */
int vert_pos;
diff --git a/src/mame/includes/stlforce.h b/src/mame/includes/stlforce.h
index 119b14c27af..f97e6e1ee5d 100644
--- a/src/mame/includes/stlforce.h
+++ b/src/mame/includes/stlforce.h
@@ -1,10 +1,8 @@
-class stlforce_state : public driver_data_t
+class stlforce_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, stlforce_state(machine)); }
-
- stlforce_state(running_machine &machine)
- : driver_data_t(machine) { }
+ stlforce_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
tilemap_t *bg_tilemap;
tilemap_t *mlow_tilemap;
diff --git a/src/mame/includes/supbtime.h b/src/mame/includes/supbtime.h
index 19825594b84..aec2ba69ef0 100644
--- a/src/mame/includes/supbtime.h
+++ b/src/mame/includes/supbtime.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class supbtime_state : public driver_data_t
+class supbtime_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, supbtime_state(machine)); }
-
- supbtime_state(running_machine &machine)
- : driver_data_t(machine) { }
+ supbtime_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * pf1_rowscroll;
diff --git a/src/mame/includes/suprslam.h b/src/mame/includes/suprslam.h
index bde133d1758..5d7c63bb64e 100644
--- a/src/mame/includes/suprslam.h
+++ b/src/mame/includes/suprslam.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class suprslam_state : public driver_data_t
+class suprslam_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, suprslam_state(machine)); }
-
- suprslam_state(running_machine &machine)
- : driver_data_t(machine) { }
+ suprslam_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * screen_videoram;
diff --git a/src/mame/includes/surpratk.h b/src/mame/includes/surpratk.h
index c5d8e030c48..725c493ac4e 100644
--- a/src/mame/includes/surpratk.h
+++ b/src/mame/includes/surpratk.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class surpratk_state : public driver_data_t
+class surpratk_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, surpratk_state(machine)); }
-
- surpratk_state(running_machine &machine)
- : driver_data_t(machine) { }
+ surpratk_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram;
diff --git a/src/mame/includes/system16.h b/src/mame/includes/system16.h
index 9b07e68196d..008f0e742a4 100644
--- a/src/mame/includes/system16.h
+++ b/src/mame/includes/system16.h
@@ -1,13 +1,11 @@
// later, this might be merged with segas1x_state in segas16.h
-class segas1x_bootleg_state : public driver_data_t
+class segas1x_bootleg_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, segas1x_bootleg_state(machine)); }
-
- segas1x_bootleg_state(running_machine &machine)
- : driver_data_t(machine) { }
+ segas1x_bootleg_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT16 * bg0_tileram;
UINT16 * bg1_tileram;
diff --git a/src/mame/includes/tail2nos.h b/src/mame/includes/tail2nos.h
index e18b715b1aa..3f0ade7fb55 100644
--- a/src/mame/includes/tail2nos.h
+++ b/src/mame/includes/tail2nos.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class tail2nos_state : public driver_data_t
+class tail2nos_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, tail2nos_state(machine)); }
-
- tail2nos_state(running_machine &machine)
- : driver_data_t(machine) { }
+ tail2nos_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * bgvideoram;
diff --git a/src/mame/includes/taito_b.h b/src/mame/includes/taito_b.h
index bf15be1dd47..8f58fbd9699 100644
--- a/src/mame/includes/taito_b.h
+++ b/src/mame/includes/taito_b.h
@@ -1,11 +1,9 @@
-class taitob_state : public driver_data_t
+class taitob_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, taitob_state(machine)); }
-
- taitob_state(running_machine &machine)
- : driver_data_t(machine) { }
+ taitob_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * spriteram;
diff --git a/src/mame/includes/taito_f2.h b/src/mame/includes/taito_f2.h
index 06a317c1093..ea6c286dd44 100644
--- a/src/mame/includes/taito_f2.h
+++ b/src/mame/includes/taito_f2.h
@@ -10,13 +10,11 @@ struct f2_tempsprite
int primask;
};
-class taitof2_state : public driver_data_t
+class taitof2_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, taitof2_state(machine)); }
-
- taitof2_state(running_machine &machine)
- : driver_data_t(machine),
+ taitof2_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config),
oki(machine.device<okim6295_device>("oki")) { }
/* memory pointers */
diff --git a/src/mame/includes/taito_h.h b/src/mame/includes/taito_h.h
index 13dc7f5141f..49f33f06524 100644
--- a/src/mame/includes/taito_h.h
+++ b/src/mame/includes/taito_h.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class taitoh_state : public driver_data_t
+class taitoh_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, taitoh_state(machine)); }
-
- taitoh_state(running_machine &machine)
- : driver_data_t(machine) { }
+ taitoh_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * m68000_mainram;
diff --git a/src/mame/includes/taito_l.h b/src/mame/includes/taito_l.h
index 81f8e37e128..8b65bb5022a 100644
--- a/src/mame/includes/taito_l.h
+++ b/src/mame/includes/taito_l.h
@@ -1,13 +1,11 @@
#define TAITOL_SPRITERAM_SIZE 0x400
-class taitol_state : public driver_data_t
+class taitol_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, taitol_state(machine)); }
-
- taitol_state(running_machine &machine)
- : driver_data_t(machine) { }
+ taitol_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * rambanks;
diff --git a/src/mame/includes/taito_o.h b/src/mame/includes/taito_o.h
index a4b20f611f7..9b4dc572dc1 100644
--- a/src/mame/includes/taito_o.h
+++ b/src/mame/includes/taito_o.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class taitoo_state : public driver_data_t
+class taitoo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, taitoo_state(machine)); }
-
- taitoo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ taitoo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT16 * paletteram; // currently this uses generic palette handling
diff --git a/src/mame/includes/taito_z.h b/src/mame/includes/taito_z.h
index 44aeb157c8a..4bd5732045a 100644
--- a/src/mame/includes/taito_z.h
+++ b/src/mame/includes/taito_z.h
@@ -5,13 +5,11 @@
*************************************************************************/
-class taitoz_state : public driver_data_t
+class taitoz_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, taitoz_state(machine)); }
-
- taitoz_state(running_machine &machine)
- : driver_data_t(machine) { }
+ taitoz_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * spriteram;
diff --git a/src/mame/includes/taitoair.h b/src/mame/includes/taitoair.h
index 601f77af088..fe9fcc6dec8 100644
--- a/src/mame/includes/taitoair.h
+++ b/src/mame/includes/taitoair.h
@@ -17,13 +17,11 @@ struct taitoair_poly {
};
-class taitoair_state : public driver_data_t
+class taitoair_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, taitoair_state(machine)); }
-
- taitoair_state(running_machine &machine)
- : driver_data_t(machine) { }
+ taitoair_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * m68000_mainram;
diff --git a/src/mame/includes/taitojc.h b/src/mame/includes/taitojc.h
index f59a9c3c6b4..7f440ba9a5e 100644
--- a/src/mame/includes/taitojc.h
+++ b/src/mame/includes/taitojc.h
@@ -1,12 +1,10 @@
#include "video/poly.h"
-class taitojc_state : public driver_data_t
+class taitojc_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, taitojc_state(machine)); }
-
- taitojc_state(running_machine &machine)
- : driver_data_t(machine) { }
+ taitojc_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
int texture_x;
int texture_y;
diff --git a/src/mame/includes/thunderj.h b/src/mame/includes/thunderj.h
index 356182e20ea..8a45f626cab 100644
--- a/src/mame/includes/thunderj.h
+++ b/src/mame/includes/thunderj.h
@@ -9,10 +9,8 @@
class thunderj_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, thunderj_state(machine)); }
-
- thunderj_state(running_machine &machine)
- : atarigen_state(machine) { }
+ thunderj_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT8 alpha_tile_bank;
};
diff --git a/src/mame/includes/thunderx.h b/src/mame/includes/thunderx.h
index e49e6d5e311..3e5d86456bb 100644
--- a/src/mame/includes/thunderx.h
+++ b/src/mame/includes/thunderx.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class thunderx_state : public driver_data_t
+class thunderx_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, thunderx_state(machine)); }
-
- thunderx_state(running_machine &machine)
- : driver_data_t(machine) { }
+ thunderx_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram;
diff --git a/src/mame/includes/timeplt.h b/src/mame/includes/timeplt.h
index 71eed750fde..24d07a884c5 100644
--- a/src/mame/includes/timeplt.h
+++ b/src/mame/includes/timeplt.h
@@ -19,13 +19,11 @@ struct jungler_star
#define JUNGLER_MAX_STARS 1000
-class timeplt_state : public driver_data_t
+class timeplt_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, timeplt_state(machine)); }
-
- timeplt_state(running_machine &machine)
- : driver_data_t(machine) { }
+ timeplt_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram; // timeplt, tutankham, junofrst, rocnrope, pooyan, rallyx
diff --git a/src/mame/includes/tmnt.h b/src/mame/includes/tmnt.h
index 3fe45c79290..e793073077e 100644
--- a/src/mame/includes/tmnt.h
+++ b/src/mame/includes/tmnt.h
@@ -1,11 +1,9 @@
-class tmnt_state : public driver_data_t
+class tmnt_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, tmnt_state(machine)); }
-
- tmnt_state(running_machine &machine)
- : driver_data_t(machine) { }
+ tmnt_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
INT16 * sampledata;
diff --git a/src/mame/includes/tnzs.h b/src/mame/includes/tnzs.h
index 37463279a1b..4ec7cea93f6 100644
--- a/src/mame/includes/tnzs.h
+++ b/src/mame/includes/tnzs.h
@@ -15,13 +15,11 @@ enum
MCU_TNZS
};
-class tnzs_state : public driver_data_t
+class tnzs_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, tnzs_state(machine)); }
-
- tnzs_state(running_machine &machine)
- : driver_data_t(machine) { }
+ tnzs_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * objram;
diff --git a/src/mame/includes/toaplan1.h b/src/mame/includes/toaplan1.h
index ca4afc855a3..51f910fdf53 100644
--- a/src/mame/includes/toaplan1.h
+++ b/src/mame/includes/toaplan1.h
@@ -4,13 +4,11 @@
****************************************************************************/
-class toaplan1_state : public driver_data_t
+class toaplan1_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, toaplan1_state(machine)); }
-
- toaplan1_state(running_machine &machine)
- : driver_data_t(machine) { }
+ toaplan1_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
int unk_reset_port;
UINT16 *colorram1;
diff --git a/src/mame/includes/toaplan2.h b/src/mame/includes/toaplan2.h
index 9a79538651d..012029666da 100644
--- a/src/mame/includes/toaplan2.h
+++ b/src/mame/includes/toaplan2.h
@@ -16,13 +16,11 @@
#include "video/gp9001.h"
// cache the vdps for faster access
-class toaplan2_state : public driver_data_t
+class toaplan2_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, toaplan2_state(machine)); }
-
- toaplan2_state(running_machine &machine)
- : driver_data_t(machine)
+ toaplan2_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config)
{
vdp0 = NULL;
vdp1 = NULL;
diff --git a/src/mame/includes/toobin.h b/src/mame/includes/toobin.h
index fe8c000909f..8b296d24192 100644
--- a/src/mame/includes/toobin.h
+++ b/src/mame/includes/toobin.h
@@ -9,10 +9,8 @@
class toobin_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, toobin_state(machine)); }
-
- toobin_state(running_machine &machine)
- : atarigen_state(machine) { }
+ toobin_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT16 * interrupt_scan;
diff --git a/src/mame/includes/topspeed.h b/src/mame/includes/topspeed.h
index ebe6ed17bb0..2e97cbe915d 100644
--- a/src/mame/includes/topspeed.h
+++ b/src/mame/includes/topspeed.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class topspeed_state : public driver_data_t
+class topspeed_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, topspeed_state(machine)); }
-
- topspeed_state(running_machine &machine)
- : driver_data_t(machine) { }
+ topspeed_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * spritemap;
diff --git a/src/mame/includes/toypop.h b/src/mame/includes/toypop.h
index 879904d56f6..764d0f49ffd 100644
--- a/src/mame/includes/toypop.h
+++ b/src/mame/includes/toypop.h
@@ -1,10 +1,8 @@
-class toypop_state : public driver_data_t
+class toypop_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, toypop_state(machine)); }
-
- toypop_state(running_machine &machine)
- : driver_data_t(machine) { }
+ toypop_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *videoram;
UINT8 *spriteram;
diff --git a/src/mame/includes/trackfld.h b/src/mame/includes/trackfld.h
index c2390065833..46f545bb29b 100644
--- a/src/mame/includes/trackfld.h
+++ b/src/mame/includes/trackfld.h
@@ -8,13 +8,11 @@
#include "sound/msm5205.h"
-class trackfld_state : public driver_data_t
+class trackfld_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, trackfld_state(machine)); }
-
- trackfld_state(running_machine &machine)
- : driver_data_t(machine) { }
+ trackfld_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram; // trackfld, hyperspt, yiear, sbasketb
diff --git a/src/mame/includes/tumbleb.h b/src/mame/includes/tumbleb.h
index 69a36bd704d..4828d26f3e8 100644
--- a/src/mame/includes/tumbleb.h
+++ b/src/mame/includes/tumbleb.h
@@ -1,11 +1,9 @@
-class tumbleb_state : public driver_data_t
+class tumbleb_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, tumbleb_state(machine)); }
-
- tumbleb_state(running_machine &machine)
- : driver_data_t(machine) { }
+ tumbleb_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * pf1_data;
diff --git a/src/mame/includes/tumblep.h b/src/mame/includes/tumblep.h
index f43008fbbde..71bb8ef8728 100644
--- a/src/mame/includes/tumblep.h
+++ b/src/mame/includes/tumblep.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class tumblep_state : public driver_data_t
+class tumblep_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, tumblep_state(machine)); }
-
- tumblep_state(running_machine &machine)
- : driver_data_t(machine) { }
+ tumblep_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * pf1_rowscroll;
diff --git a/src/mame/includes/tunhunt.h b/src/mame/includes/tunhunt.h
index e50f16b27ea..cc87e4d58ec 100644
--- a/src/mame/includes/tunhunt.h
+++ b/src/mame/includes/tunhunt.h
@@ -1,10 +1,8 @@
-class tunhunt_state : public driver_data_t
+class tunhunt_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, tunhunt_state(machine)); }
-
- tunhunt_state(running_machine &machine)
- : driver_data_t(machine) { }
+ tunhunt_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 control;
UINT8 *workram;
diff --git a/src/mame/includes/turbo.h b/src/mame/includes/turbo.h
index 2f14b45bc51..7348f33ac61 100644
--- a/src/mame/includes/turbo.h
+++ b/src/mame/includes/turbo.h
@@ -22,13 +22,11 @@ struct i8279_state
};
-class turbo_state : public driver_data_t
+class turbo_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, turbo_state(machine)); }
-
- turbo_state(running_machine &machine)
- : driver_data_t(machine) { }
+ turbo_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/ultraman.h b/src/mame/includes/ultraman.h
index 8920115453e..c330fe0ee19 100644
--- a/src/mame/includes/ultraman.h
+++ b/src/mame/includes/ultraman.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class ultraman_state : public driver_data_t
+class ultraman_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, ultraman_state(machine)); }
-
- ultraman_state(running_machine &machine)
- : driver_data_t(machine) { }
+ ultraman_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT16 * paletteram; // currently this uses generic palette handling
diff --git a/src/mame/includes/vaportra.h b/src/mame/includes/vaportra.h
index 599f4f5b58a..3517725b2c4 100644
--- a/src/mame/includes/vaportra.h
+++ b/src/mame/includes/vaportra.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class vaportra_state : public driver_data_t
+class vaportra_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, vaportra_state(machine)); }
-
- vaportra_state(running_machine &machine)
- : driver_data_t(machine) { }
+ vaportra_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * pf1_rowscroll;
diff --git a/src/mame/includes/vastar.h b/src/mame/includes/vastar.h
index 5f942cef97f..d6273e2e22e 100644
--- a/src/mame/includes/vastar.h
+++ b/src/mame/includes/vastar.h
@@ -1,10 +1,8 @@
-class vastar_state : public driver_data_t
+class vastar_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, vastar_state(machine)); }
-
- vastar_state(running_machine &machine)
- : driver_data_t(machine) { }
+ vastar_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *spriteram1;
UINT8 *spriteram2;
diff --git a/src/mame/includes/vendetta.h b/src/mame/includes/vendetta.h
index 436ce1bb7cf..98da65b1a00 100644
--- a/src/mame/includes/vendetta.h
+++ b/src/mame/includes/vendetta.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class vendetta_state : public driver_data_t
+class vendetta_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, vendetta_state(machine)); }
-
- vendetta_state(running_machine &machine)
- : driver_data_t(machine) { }
+ vendetta_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * ram;
diff --git a/src/mame/includes/vindictr.h b/src/mame/includes/vindictr.h
index 1588edd01cf..936446665b5 100644
--- a/src/mame/includes/vindictr.h
+++ b/src/mame/includes/vindictr.h
@@ -9,10 +9,8 @@
class vindictr_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, vindictr_state(machine)); }
-
- vindictr_state(running_machine &machine)
- : atarigen_state(machine) { }
+ vindictr_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT8 playfield_tile_bank;
UINT16 playfield_xscroll;
diff --git a/src/mame/includes/volfied.h b/src/mame/includes/volfied.h
index 1aba266d86e..86b3d061f1a 100644
--- a/src/mame/includes/volfied.h
+++ b/src/mame/includes/volfied.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class volfied_state : public driver_data_t
+class volfied_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, volfied_state(machine)); }
-
- volfied_state(running_machine &machine)
- : driver_data_t(machine) { }
+ volfied_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * video_ram;
diff --git a/src/mame/includes/warriorb.h b/src/mame/includes/warriorb.h
index 7cb49633b73..e794d11b202 100644
--- a/src/mame/includes/warriorb.h
+++ b/src/mame/includes/warriorb.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class warriorb_state : public driver_data_t
+class warriorb_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, warriorb_state(machine)); }
-
- warriorb_state(running_machine &machine)
- : driver_data_t(machine) { }
+ warriorb_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * spriteram;
diff --git a/src/mame/includes/welltris.h b/src/mame/includes/welltris.h
index 46636478c2c..f80f1cc6bf7 100644
--- a/src/mame/includes/welltris.h
+++ b/src/mame/includes/welltris.h
@@ -1,10 +1,8 @@
-class welltris_state : public driver_data_t
+class welltris_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, welltris_state(machine)); }
-
- welltris_state(running_machine &machine)
- : driver_data_t(machine) { }
+ welltris_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
int pending_command;
diff --git a/src/mame/includes/wgp.h b/src/mame/includes/wgp.h
index eb41696b3dd..7c048f8f178 100644
--- a/src/mame/includes/wgp.h
+++ b/src/mame/includes/wgp.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class wgp_state : public driver_data_t
+class wgp_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, wgp_state(machine)); }
-
- wgp_state(running_machine &machine)
- : driver_data_t(machine) { }
+ wgp_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * spritemap;
diff --git a/src/mame/includes/wwfsstar.h b/src/mame/includes/wwfsstar.h
index b06dfe672c2..d95588173b1 100644
--- a/src/mame/includes/wwfsstar.h
+++ b/src/mame/includes/wwfsstar.h
@@ -1,10 +1,8 @@
-class wwfsstar_state : public driver_data_t
+class wwfsstar_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, wwfsstar_state(machine)); }
-
- wwfsstar_state(running_machine &machine)
- : driver_data_t(machine) { }
+ wwfsstar_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
int vblank;
int scrollx;
diff --git a/src/mame/includes/xexex.h b/src/mame/includes/xexex.h
index 238e5d4249c..8faf340483b 100644
--- a/src/mame/includes/xexex.h
+++ b/src/mame/includes/xexex.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class xexex_state : public driver_data_t
+class xexex_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, xexex_state(machine)); }
-
- xexex_state(running_machine &machine)
- : driver_data_t(machine) { }
+ xexex_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * workram;
diff --git a/src/mame/includes/xmen.h b/src/mame/includes/xmen.h
index 2cdaa5c0f45..a9b8849e75a 100644
--- a/src/mame/includes/xmen.h
+++ b/src/mame/includes/xmen.h
@@ -1,11 +1,9 @@
-class xmen_state : public driver_data_t
+class xmen_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, xmen_state(machine)); }
-
- xmen_state(running_machine &machine)
- : driver_data_t(machine) { }
+ xmen_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
// UINT16 * paletteram; // currently this uses generic palette handling
diff --git a/src/mame/includes/xybots.h b/src/mame/includes/xybots.h
index c8e0c3d975c..d7b4ab0e822 100644
--- a/src/mame/includes/xybots.h
+++ b/src/mame/includes/xybots.h
@@ -9,10 +9,8 @@
class xybots_state : public atarigen_state
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, xybots_state(machine)); }
-
- xybots_state(running_machine &machine)
- : atarigen_state(machine) { }
+ xybots_state(running_machine &machine, const driver_device_config_base &config)
+ : atarigen_state(machine, config) { }
UINT16 h256;
};
diff --git a/src/mame/includes/xyonix.h b/src/mame/includes/xyonix.h
index 3431e2671aa..7379a32731a 100644
--- a/src/mame/includes/xyonix.h
+++ b/src/mame/includes/xyonix.h
@@ -1,10 +1,8 @@
-class xyonix_state : public driver_data_t
+class xyonix_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, xyonix_state(machine)); }
-
- xyonix_state(running_machine &machine)
- : driver_data_t(machine) { }
+ xyonix_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *vidram;
tilemap_t *tilemap;
diff --git a/src/mame/includes/yunsun16.h b/src/mame/includes/yunsun16.h
index 92c6c305d32..b0fdadcc19e 100644
--- a/src/mame/includes/yunsun16.h
+++ b/src/mame/includes/yunsun16.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class yunsun16_state : public driver_data_t
+class yunsun16_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, yunsun16_state(machine)); }
-
- yunsun16_state(running_machine &machine)
- : driver_data_t(machine) { }
+ yunsun16_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * vram_0;
diff --git a/src/mame/includes/yunsung8.h b/src/mame/includes/yunsung8.h
index 43352ae49b9..7d74bcae67a 100644
--- a/src/mame/includes/yunsung8.h
+++ b/src/mame/includes/yunsung8.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class yunsung8_state : public driver_data_t
+class yunsung8_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, yunsung8_state(machine)); }
-
- yunsung8_state(running_machine &machine)
- : driver_data_t(machine) { }
+ yunsung8_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * videoram;
diff --git a/src/mame/includes/zaxxon.h b/src/mame/includes/zaxxon.h
index ccb9c83c11c..9aec20de189 100644
--- a/src/mame/includes/zaxxon.h
+++ b/src/mame/includes/zaxxon.h
@@ -4,13 +4,11 @@
***************************************************************************/
-class zaxxon_state : public driver_data_t
+class zaxxon_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, zaxxon_state(machine)); }
-
- zaxxon_state(running_machine &machine)
- : driver_data_t(machine) { }
+ zaxxon_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 *colorram;
UINT8 *videoram;
diff --git a/src/mame/includes/zerozone.h b/src/mame/includes/zerozone.h
index 78c9fab6510..80635816f72 100644
--- a/src/mame/includes/zerozone.h
+++ b/src/mame/includes/zerozone.h
@@ -4,13 +4,11 @@
*************************************************************************/
-class zerozone_state : public driver_data_t
+class zerozone_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, zerozone_state(machine)); }
-
- zerozone_state(running_machine &machine)
- : driver_data_t(machine) { }
+ zerozone_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT16 * videoram;
diff --git a/src/mame/machine/atarigen.h b/src/mame/machine/atarigen.h
index 3ed1d3994ac..8cec5ee571c 100644
--- a/src/mame/machine/atarigen.h
+++ b/src/mame/machine/atarigen.h
@@ -60,11 +60,11 @@ struct _atarigen_screen_timer
};
-class atarigen_state : public driver_data_t
+class atarigen_state : public driver_device
{
public:
- atarigen_state(running_machine &machine)
- : driver_data_t(machine) { }
+ atarigen_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
UINT8 scanline_int_state;
UINT8 sound_int_state;
diff --git a/src/mame/machine/decocass.h b/src/mame/machine/decocass.h
index d462ae7cb09..9a48fc6f9f6 100644
--- a/src/mame/machine/decocass.h
+++ b/src/mame/machine/decocass.h
@@ -16,13 +16,11 @@ DECLARE_LEGACY_DEVICE(DECOCASS_TAPE, decocass_tape);
-class decocass_state : public driver_data_t
+class decocass_state : public driver_device
{
public:
- static driver_data_t *alloc(running_machine &machine) { return auto_alloc_clear(&machine, decocass_state(machine)); }
-
- decocass_state(running_machine &machine)
- : driver_data_t(machine) { }
+ decocass_state(running_machine &machine, const driver_device_config_base &config)
+ : driver_device(machine, config) { }
/* memory pointers */
UINT8 * rambase;