summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatarGravatar Miodrag Milanovic <mmicko@gmail.com>2014-03-14 14:39:34 +0000
committerGravatarGravatar Miodrag Milanovic <mmicko@gmail.com>2014-03-14 14:39:34 +0000
commitb5a348c7c1a37b55dc9bb2c57da9120dcb29cd15 (patch) (github)
tree8cbf4677543966e90688ac82c01da72f745aa14d
parent1c837826c7ab6f7a84c5ca358aca9aff9cca2b62 (diff)
downloadmame-b5a348c7c1a37b55dc9bb2c57da9120dcb29cd15.tar.bz2
mame-b5a348c7c1a37b55dc9bb2c57da9120dcb29cd15.zip
Made palette settings for screen explicit and mandatory for ind16 mode (nw)
-rw-r--r--src/emu/bus/isa/ega.c1
-rw-r--r--src/emu/screen.c32
-rw-r--r--src/emu/screen.h10
-rw-r--r--src/emu/video/psx.c3
-rw-r--r--src/mame/drivers/1942.c3
-rw-r--r--src/mame/drivers/1943.c1
-rw-r--r--src/mame/drivers/1945kiii.c1
-rw-r--r--src/mame/drivers/40love.c2
-rw-r--r--src/mame/drivers/4enraya.c1
-rw-r--r--src/mame/drivers/4roses.c1
-rw-r--r--src/mame/drivers/5clown.c1
-rw-r--r--src/mame/drivers/88games.c1
-rw-r--r--src/mame/drivers/ace.c1
-rw-r--r--src/mame/drivers/acefruit.c1
-rw-r--r--src/mame/drivers/acommand.c1
-rw-r--r--src/mame/drivers/actfancr.c2
-rw-r--r--src/mame/drivers/adp.c3
-rw-r--r--src/mame/drivers/aeroboto.c1
-rw-r--r--src/mame/drivers/aerofgt.c13
-rw-r--r--src/mame/drivers/airbustr.c1
-rw-r--r--src/mame/drivers/ajax.c1
-rw-r--r--src/mame/drivers/albazc.c1
-rw-r--r--src/mame/drivers/albazg.c1
-rw-r--r--src/mame/drivers/aliens.c1
-rw-r--r--src/mame/drivers/alpha68k.c9
-rw-r--r--src/mame/drivers/amaticmg.c1
-rw-r--r--src/mame/drivers/ambush.c1
-rw-r--r--src/mame/drivers/ampoker2.c1
-rw-r--r--src/mame/drivers/amspdwy.c1
-rw-r--r--src/mame/drivers/angelkds.c1
-rw-r--r--src/mame/drivers/appoooh.c2
-rw-r--r--src/mame/drivers/aquarium.c1
-rw-r--r--src/mame/drivers/arabian.c1
-rw-r--r--src/mame/drivers/arcadecl.c1
-rw-r--r--src/mame/drivers/arcadia.c1
-rw-r--r--src/mame/drivers/aristmk4.c1
-rw-r--r--src/mame/drivers/arkanoid.c3
-rw-r--r--src/mame/drivers/armedf.c8
-rw-r--r--src/mame/drivers/ashnojoe.c1
-rw-r--r--src/mame/drivers/asterix.c1
-rw-r--r--src/mame/drivers/astrcorp.c2
-rw-r--r--src/mame/drivers/astrocde.c1
-rw-r--r--src/mame/drivers/asuka.c6
-rw-r--r--src/mame/drivers/atarifb.c1
-rw-r--r--src/mame/drivers/atarig1.c1
-rw-r--r--src/mame/drivers/atarig42.c1
-rw-r--r--src/mame/drivers/atarigx2.c1
-rw-r--r--src/mame/drivers/atarisy1.c1
-rw-r--r--src/mame/drivers/atarisy2.c1
-rw-r--r--src/mame/drivers/atetris.c2
-rw-r--r--src/mame/drivers/atlantis.c1
-rw-r--r--src/mame/drivers/atronic.c1
-rw-r--r--src/mame/drivers/avt.c1
-rw-r--r--src/mame/drivers/backfire.c2
-rw-r--r--src/mame/drivers/badlands.c2
-rw-r--r--src/mame/drivers/bagman.c3
-rw-r--r--src/mame/drivers/balsente.c1
-rw-r--r--src/mame/drivers/bankp.c1
-rw-r--r--src/mame/drivers/baraduke.c1
-rw-r--r--src/mame/drivers/bartop52.c1
-rw-r--r--src/mame/drivers/batman.c1
-rw-r--r--src/mame/drivers/battlane.c1
-rw-r--r--src/mame/drivers/battlera.c1
-rw-r--r--src/mame/drivers/battlex.c1
-rw-r--r--src/mame/drivers/battlnts.c1
-rw-r--r--src/mame/drivers/bbusters.c2
-rw-r--r--src/mame/drivers/beathead.c2
-rw-r--r--src/mame/drivers/beezer.c1
-rw-r--r--src/mame/drivers/bestleag.c1
-rw-r--r--src/mame/drivers/big10.c1
-rw-r--r--src/mame/drivers/bigevglf.c1
-rw-r--r--src/mame/drivers/bigstrkb.c1
-rw-r--r--src/mame/drivers/bingoc.c1
-rw-r--r--src/mame/drivers/bingoman.c1
-rw-r--r--src/mame/drivers/bionicc.c1
-rw-r--r--src/mame/drivers/bking.c1
-rw-r--r--src/mame/drivers/blackt96.c1
-rw-r--r--src/mame/drivers/bladestl.c1
-rw-r--r--src/mame/drivers/blitz.c1
-rw-r--r--src/mame/drivers/blktiger.c1
-rw-r--r--src/mame/drivers/blmbycar.c4
-rw-r--r--src/mame/drivers/blockade.c1
-rw-r--r--src/mame/drivers/blockhl.c1
-rw-r--r--src/mame/drivers/blockout.c1
-rw-r--r--src/mame/drivers/bloodbro.c1
-rw-r--r--src/mame/drivers/blstroid.c1
-rw-r--r--src/mame/drivers/blueprnt.c1
-rw-r--r--src/mame/drivers/bmcbowl.c1
-rw-r--r--src/mame/drivers/bmcpokr.c2
-rw-r--r--src/mame/drivers/bnstars.c2
-rw-r--r--src/mame/drivers/bntyhunt.c1
-rw-r--r--src/mame/drivers/bogeyman.c1
-rw-r--r--src/mame/drivers/bombjack.c1
-rw-r--r--src/mame/drivers/bottom9.c1
-rw-r--r--src/mame/drivers/bowltry.c1
-rw-r--r--src/mame/drivers/boxer.c1
-rw-r--r--src/mame/drivers/brkthru.c4
-rw-r--r--src/mame/drivers/bsktball.c1
-rw-r--r--src/mame/drivers/btime.c1
-rw-r--r--src/mame/drivers/bublbobl.c2
-rw-r--r--src/mame/drivers/buggychl.c1
-rw-r--r--src/mame/drivers/buster.c1
-rw-r--r--src/mame/drivers/bwing.c1
-rw-r--r--src/mame/drivers/cabal.c4
-rw-r--r--src/mame/drivers/cabaret.c1
-rw-r--r--src/mame/drivers/calomega.c1
-rw-r--r--src/mame/drivers/calorie.c1
-rw-r--r--src/mame/drivers/canyon.c1
-rw-r--r--src/mame/drivers/cardline.c1
-rw-r--r--src/mame/drivers/carjmbre.c1
-rw-r--r--src/mame/drivers/carpolo.c1
-rw-r--r--src/mame/drivers/carrera.c1
-rw-r--r--src/mame/drivers/caswin.c1
-rw-r--r--src/mame/drivers/cavepc.c1
-rw-r--r--src/mame/drivers/cball.c1
-rw-r--r--src/mame/drivers/cbasebal.c1
-rw-r--r--src/mame/drivers/ccastles.c2
-rw-r--r--src/mame/drivers/cchance.c1
-rw-r--r--src/mame/drivers/cclimber.c2
-rw-r--r--src/mame/drivers/centiped.c2
-rw-r--r--src/mame/drivers/chaknpop.c1
-rw-r--r--src/mame/drivers/cham24.c1
-rw-r--r--src/mame/drivers/champbas.c4
-rw-r--r--src/mame/drivers/champbwl.c2
-rw-r--r--src/mame/drivers/chanbara.c1
-rw-r--r--src/mame/drivers/chance32.c1
-rw-r--r--src/mame/drivers/changela.c1
-rw-r--r--src/mame/drivers/cheekyms.c1
-rw-r--r--src/mame/drivers/chinagat.c3
-rw-r--r--src/mame/drivers/chinsan.c1
-rw-r--r--src/mame/drivers/chqflag.c1
-rw-r--r--src/mame/drivers/chsuper.c1
-rw-r--r--src/mame/drivers/circus.c4
-rw-r--r--src/mame/drivers/circusc.c1
-rw-r--r--src/mame/drivers/cischeat.c2
-rw-r--r--src/mame/drivers/citycon.c1
-rw-r--r--src/mame/drivers/cloak.c1
-rw-r--r--src/mame/drivers/cloud9.c2
-rw-r--r--src/mame/drivers/clshroad.c2
-rw-r--r--src/mame/drivers/cmmb.c1
-rw-r--r--src/mame/drivers/cninja.c5
-rw-r--r--src/mame/drivers/cntsteer.c2
-rw-r--r--src/mame/drivers/coinmstr.c1
-rw-r--r--src/mame/drivers/coinmvga.c1
-rw-r--r--src/mame/drivers/combatsc.c2
-rw-r--r--src/mame/drivers/comebaby.c1
-rw-r--r--src/mame/drivers/commando.c1
-rw-r--r--src/mame/drivers/compgolf.c1
-rw-r--r--src/mame/drivers/contra.c1
-rw-r--r--src/mame/drivers/coolridr.c2
-rw-r--r--src/mame/drivers/cop01.c2
-rw-r--r--src/mame/drivers/cops.c1
-rw-r--r--src/mame/drivers/copsnrob.c1
-rw-r--r--src/mame/drivers/corona.c5
-rw-r--r--src/mame/drivers/cosmic.c2
-rw-r--r--src/mame/drivers/cps1.c1
-rw-r--r--src/mame/drivers/cps2.c1
-rw-r--r--src/mame/drivers/crbaloon.c1
-rw-r--r--src/mame/drivers/crimfght.c1
-rw-r--r--src/mame/drivers/crospang.c1
-rw-r--r--src/mame/drivers/crshrace.c1
-rw-r--r--src/mame/drivers/crystal.c1
-rw-r--r--src/mame/drivers/cshooter.c1
-rw-r--r--src/mame/drivers/cswat.c1
-rw-r--r--src/mame/drivers/cultures.c1
-rw-r--r--src/mame/drivers/cupidon.c1
-rw-r--r--src/mame/drivers/cvs.c1
-rw-r--r--src/mame/drivers/cyberbal.c3
-rw-r--r--src/mame/drivers/cybertnk.c2
-rw-r--r--src/mame/drivers/cyclemb.c1
-rw-r--r--src/mame/drivers/d9final.c3
-rw-r--r--src/mame/drivers/dacholer.c1
-rw-r--r--src/mame/drivers/dambustr.c1
-rw-r--r--src/mame/drivers/darius.c3
-rw-r--r--src/mame/drivers/darkmist.c1
-rw-r--r--src/mame/drivers/darkseal.c1
-rw-r--r--src/mame/drivers/dblcrown.c1
-rw-r--r--src/mame/drivers/dblewing.c1
-rw-r--r--src/mame/drivers/dbz.c1
-rw-r--r--src/mame/drivers/dcheese.c1
-rw-r--r--src/mame/drivers/dcon.c2
-rw-r--r--src/mame/drivers/dday.c1
-rw-r--r--src/mame/drivers/ddayjlc.c1
-rw-r--r--src/mame/drivers/ddealer.c1
-rw-r--r--src/mame/drivers/ddenlovr.c11
-rw-r--r--src/mame/drivers/ddragon.c3
-rw-r--r--src/mame/drivers/ddragon3.c2
-rw-r--r--src/mame/drivers/ddribble.c1
-rw-r--r--src/mame/drivers/deadang.c1
-rw-r--r--src/mame/drivers/dec0.c11
-rw-r--r--src/mame/drivers/dec8.c9
-rw-r--r--src/mame/drivers/deco32.c5
-rw-r--r--src/mame/drivers/decocass.c1
-rw-r--r--src/mame/drivers/deniam.c2
-rw-r--r--src/mame/drivers/deshoros.c2
-rw-r--r--src/mame/drivers/destroyr.c1
-rw-r--r--src/mame/drivers/dfruit.c1
-rw-r--r--src/mame/drivers/dgpix.c1
-rw-r--r--src/mame/drivers/dietgo.c1
-rw-r--r--src/mame/drivers/discoboy.c1
-rw-r--r--src/mame/drivers/diverboy.c1
-rw-r--r--src/mame/drivers/djboy.c1
-rw-r--r--src/mame/drivers/dkong.c2
-rw-r--r--src/mame/drivers/dlair2.c1
-rw-r--r--src/mame/drivers/dmndrby.c1
-rw-r--r--src/mame/drivers/docastle.c1
-rw-r--r--src/mame/drivers/dogfgt.c1
-rw-r--r--src/mame/drivers/dominob.c1
-rw-r--r--src/mame/drivers/dooyong.c9
-rw-r--r--src/mame/drivers/dragrace.c1
-rw-r--r--src/mame/drivers/dreambal.c1
-rw-r--r--src/mame/drivers/dreamwld.c1
-rw-r--r--src/mame/drivers/drgnmst.c1
-rw-r--r--src/mame/drivers/dribling.c1
-rw-r--r--src/mame/drivers/drmicro.c1
-rw-r--r--src/mame/drivers/drtomy.c1
-rw-r--r--src/mame/drivers/drw80pkr.c1
-rw-r--r--src/mame/drivers/dunhuang.c1
-rw-r--r--src/mame/drivers/dynadice.c1
-rw-r--r--src/mame/drivers/dynax.c9
-rw-r--r--src/mame/drivers/dynduke.c1
-rw-r--r--src/mame/drivers/egghunt.c1
-rw-r--r--src/mame/drivers/eolith.c1
-rw-r--r--src/mame/drivers/eolith16.c1
-rw-r--r--src/mame/drivers/eprom.c3
-rw-r--r--src/mame/drivers/equites.c2
-rw-r--r--src/mame/drivers/esd16.c1
-rw-r--r--src/mame/drivers/espial.c1
-rw-r--r--src/mame/drivers/ettrivia.c1
-rw-r--r--src/mame/drivers/exedexes.c1
-rw-r--r--src/mame/drivers/exerion.c3
-rw-r--r--src/mame/drivers/exidy.c1
-rw-r--r--src/mame/drivers/expro02.c1
-rw-r--r--src/mame/drivers/exprraid.c1
-rw-r--r--src/mame/drivers/exterm.c1
-rw-r--r--src/mame/drivers/exzisus.c1
-rw-r--r--src/mame/drivers/f-32.c1
-rw-r--r--src/mame/drivers/f1gp.c2
-rw-r--r--src/mame/drivers/famibox.c1
-rw-r--r--src/mame/drivers/fantland.c4
-rw-r--r--src/mame/drivers/fastfred.c1
-rw-r--r--src/mame/drivers/fastlane.c1
-rw-r--r--src/mame/drivers/fcombat.c1
-rw-r--r--src/mame/drivers/fcrash.c10
-rw-r--r--src/mame/drivers/feversoc.c3
-rw-r--r--src/mame/drivers/fgoal.c1
-rw-r--r--src/mame/drivers/finalizr.c1
-rw-r--r--src/mame/drivers/firebeat.c3
-rw-r--r--src/mame/drivers/firetrap.c2
-rw-r--r--src/mame/drivers/firetrk.c1
-rw-r--r--src/mame/drivers/fitfight.c2
-rw-r--r--src/mame/drivers/flkatck.c1
-rw-r--r--src/mame/drivers/flower.c1
-rw-r--r--src/mame/drivers/flstory.c4
-rw-r--r--src/mame/drivers/flyball.c1
-rw-r--r--src/mame/drivers/foodf.c1
-rw-r--r--src/mame/drivers/fortecar.c1
-rw-r--r--src/mame/drivers/freekick.c1
-rw-r--r--src/mame/drivers/fresh.c1
-rw-r--r--src/mame/drivers/fromanc2.c6
-rw-r--r--src/mame/drivers/fromance.c3
-rw-r--r--src/mame/drivers/funkybee.c1
-rw-r--r--src/mame/drivers/funkyjet.c1
-rw-r--r--src/mame/drivers/funworld.c1
-rw-r--r--src/mame/drivers/funybubl.c1
-rw-r--r--src/mame/drivers/fuukifg2.c1
-rw-r--r--src/mame/drivers/fuukifg3.c1
-rw-r--r--src/mame/drivers/gaelco.c4
-rw-r--r--src/mame/drivers/gaelco2.c8
-rw-r--r--src/mame/drivers/gaelco3d.c1
-rw-r--r--src/mame/drivers/gaiden.c1
-rw-r--r--src/mame/drivers/galaga.c4
-rw-r--r--src/mame/drivers/galastrm.c1
-rw-r--r--src/mame/drivers/galaxi.c1
-rw-r--r--src/mame/drivers/galaxia.c2
-rw-r--r--src/mame/drivers/galaxold.c4
-rw-r--r--src/mame/drivers/galgame.c1
-rw-r--r--src/mame/drivers/galivan.c2
-rw-r--r--src/mame/drivers/galpani2.c1
-rw-r--r--src/mame/drivers/galpanic.c1
-rw-r--r--src/mame/drivers/galspnbl.c2
-rw-r--r--src/mame/drivers/gamecstl.c1
-rw-r--r--src/mame/drivers/gaplus.c1
-rw-r--r--src/mame/drivers/gatron.c1
-rw-r--r--src/mame/drivers/gauntlet.c1
-rw-r--r--src/mame/drivers/gberet.c2
-rw-r--r--src/mame/drivers/gbusters.c3
-rw-r--r--src/mame/drivers/gcpinbal.c1
-rw-r--r--src/mame/drivers/gei.c1
-rw-r--r--src/mame/drivers/gijoe.c1
-rw-r--r--src/mame/drivers/ginganin.c1
-rw-r--r--src/mame/drivers/gladiatr.c2
-rw-r--r--src/mame/drivers/glass.c1
-rw-r--r--src/mame/drivers/gluck2.c1
-rw-r--r--src/mame/drivers/gng.c1
-rw-r--r--src/mame/drivers/go2000.c1
-rw-r--r--src/mame/drivers/goal92.c1
-rw-r--r--src/mame/drivers/goindol.c1
-rw-r--r--src/mame/drivers/goldngam.c1
-rw-r--r--src/mame/drivers/goldnpkr.c1
-rw-r--r--src/mame/drivers/goldstar.c27
-rw-r--r--src/mame/drivers/gomoku.c1
-rw-r--r--src/mame/drivers/good.c1
-rw-r--r--src/mame/drivers/goodejan.c1
-rw-r--r--src/mame/drivers/gotcha.c1
-rw-r--r--src/mame/drivers/gotya.c1
-rw-r--r--src/mame/drivers/gradius3.c1
-rw-r--r--src/mame/drivers/gridlee.c1
-rw-r--r--src/mame/drivers/groundfx.c1
-rw-r--r--src/mame/drivers/gstriker.c2
-rw-r--r--src/mame/drivers/gsword.c2
-rw-r--r--src/mame/drivers/guab.c1
-rw-r--r--src/mame/drivers/gumbo.c1
-rw-r--r--src/mame/drivers/gunbustr.c1
-rw-r--r--src/mame/drivers/gundealr.c1
-rw-r--r--src/mame/drivers/gunpey.c1
-rw-r--r--src/mame/drivers/gunsmoke.c1
-rw-r--r--src/mame/drivers/gyruss.c1
-rw-r--r--src/mame/drivers/halleys.c1
-rw-r--r--src/mame/drivers/hanaawas.c1
-rw-r--r--src/mame/drivers/harddriv.c1
-rw-r--r--src/mame/drivers/hcastle.c1
-rw-r--r--src/mame/drivers/headonb.c2
-rw-r--r--src/mame/drivers/hexion.c1
-rw-r--r--src/mame/drivers/hideseek.c1
-rw-r--r--src/mame/drivers/higemaru.c1
-rw-r--r--src/mame/drivers/himesiki.c1
-rw-r--r--src/mame/drivers/hitme.c1
-rw-r--r--src/mame/drivers/hitpoker.c1
-rw-r--r--src/mame/drivers/hnayayoi.c1
-rw-r--r--src/mame/drivers/holeland.c2
-rw-r--r--src/mame/drivers/homedata.c4
-rw-r--r--src/mame/drivers/homerun.c1
-rw-r--r--src/mame/drivers/hotblock.c1
-rw-r--r--src/mame/drivers/hvyunit.c1
-rw-r--r--src/mame/drivers/hyperspt.c1
-rw-r--r--src/mame/drivers/hyprduel.c2
-rw-r--r--src/mame/drivers/ichiban.c1
-rw-r--r--src/mame/drivers/igs009.c1
-rw-r--r--src/mame/drivers/igs011.c1
-rw-r--r--src/mame/drivers/igs017.c9
-rw-r--r--src/mame/drivers/igs_m027.c2
-rw-r--r--src/mame/drivers/igs_m036.c2
-rw-r--r--src/mame/drivers/igspoker.c1
-rw-r--r--src/mame/drivers/ikki.c3
-rw-r--r--src/mame/drivers/imolagp.c1
-rw-r--r--src/mame/drivers/intrscti.c1
-rw-r--r--src/mame/drivers/inufuku.c1
-rw-r--r--src/mame/drivers/iqblock.c1
-rw-r--r--src/mame/drivers/irobot.c1
-rw-r--r--src/mame/drivers/ironhors.c1
-rw-r--r--src/mame/drivers/itech32.c1
-rw-r--r--src/mame/drivers/itgamble.c1
-rw-r--r--src/mame/drivers/jack.c1
-rw-r--r--src/mame/drivers/jackal.c1
-rw-r--r--src/mame/drivers/jackie.c1
-rw-r--r--src/mame/drivers/jackpool.c1
-rw-r--r--src/mame/drivers/jailbrek.c2
-rw-r--r--src/mame/drivers/jalmah.c1
-rw-r--r--src/mame/drivers/jangou.c1
-rw-r--r--src/mame/drivers/jchan.c1
-rw-r--r--src/mame/drivers/jclub2.c3
-rw-r--r--src/mame/drivers/jokrwild.c1
-rw-r--r--src/mame/drivers/jollyjgr.c1
-rw-r--r--src/mame/drivers/jongkyo.c1
-rw-r--r--src/mame/drivers/jrpacman.c1
-rw-r--r--src/mame/drivers/jubilee.c1
-rw-r--r--src/mame/drivers/kaneko16.c6
-rw-r--r--src/mame/drivers/karnov.c2
-rw-r--r--src/mame/drivers/kchamp.c2
-rw-r--r--src/mame/drivers/kickgoal.c2
-rw-r--r--src/mame/drivers/kingdrby.c1
-rw-r--r--src/mame/drivers/kingobox.c2
-rw-r--r--src/mame/drivers/kinst.c1
-rw-r--r--src/mame/drivers/klax.c1
-rw-r--r--src/mame/drivers/kncljoe.c1
-rw-r--r--src/mame/drivers/koftball.c2
-rw-r--r--src/mame/drivers/koikoi.c1
-rw-r--r--src/mame/drivers/konamim2.c1
-rw-r--r--src/mame/drivers/konendev.c1
-rw-r--r--src/mame/drivers/kopunch.c1
-rw-r--r--src/mame/drivers/ksayakyu.c1
-rw-r--r--src/mame/drivers/kyugo.c1
-rw-r--r--src/mame/drivers/labyrunr.c1
-rw-r--r--src/mame/drivers/ladybug.c2
-rw-r--r--src/mame/drivers/ladyfrog.c1
-rw-r--r--src/mame/drivers/laserbas.c1
-rw-r--r--src/mame/drivers/laserbat.c2
-rw-r--r--src/mame/drivers/lasso.c1
-rw-r--r--src/mame/drivers/lastbank.c1
-rw-r--r--src/mame/drivers/lastduel.c2
-rw-r--r--src/mame/drivers/lastfght.c2
-rw-r--r--src/mame/drivers/lazercmd.c3
-rw-r--r--src/mame/drivers/lbeach.c1
-rw-r--r--src/mame/drivers/legionna.c7
-rw-r--r--src/mame/drivers/lethal.c1
-rw-r--r--src/mame/drivers/lethalj.c2
-rw-r--r--src/mame/drivers/liberate.c2
-rw-r--r--src/mame/drivers/limenko.c2
-rw-r--r--src/mame/drivers/littlerb.c1
-rw-r--r--src/mame/drivers/lkage.c2
-rw-r--r--src/mame/drivers/lockon.c1
-rw-r--r--src/mame/drivers/looping.c1
-rw-r--r--src/mame/drivers/lordgun.c2
-rw-r--r--src/mame/drivers/lsasquad.c2
-rw-r--r--src/mame/drivers/ltcasino.c3
-rw-r--r--src/mame/drivers/luckgrln.c1
-rw-r--r--src/mame/drivers/lucky74.c1
-rw-r--r--src/mame/drivers/lvcards.c1
-rw-r--r--src/mame/drivers/lwings.c1
-rw-r--r--src/mame/drivers/m10.c2
-rw-r--r--src/mame/drivers/m107.c1
-rw-r--r--src/mame/drivers/m14.c2
-rw-r--r--src/mame/drivers/m52.c1
-rw-r--r--src/mame/drivers/m57.c1
-rw-r--r--src/mame/drivers/m58.c2
-rw-r--r--src/mame/drivers/m62.c1
-rw-r--r--src/mame/drivers/m63.c2
-rw-r--r--src/mame/drivers/m72.c13
-rw-r--r--src/mame/drivers/m90.c1
-rw-r--r--src/mame/drivers/m92.c1
-rw-r--r--src/mame/drivers/macs.c1
-rw-r--r--src/mame/drivers/madmotor.c1
-rw-r--r--src/mame/drivers/magic10.c1
-rw-r--r--src/mame/drivers/magicfly.c1
-rw-r--r--src/mame/drivers/magmax.c1
-rw-r--r--src/mame/drivers/mainevt.c2
-rw-r--r--src/mame/drivers/mainsnk.c1
-rw-r--r--src/mame/drivers/majorpkr.c1
-rw-r--r--src/mame/drivers/mappy.c3
-rw-r--r--src/mame/drivers/marineb.c1
-rw-r--r--src/mame/drivers/marinedt.c1
-rw-r--r--src/mame/drivers/mario.c1
-rw-r--r--src/mame/drivers/markham.c1
-rw-r--r--src/mame/drivers/mastboy.c1
-rw-r--r--src/mame/drivers/matmania.c2
-rw-r--r--src/mame/drivers/maxaflex.c1
-rw-r--r--src/mame/drivers/maygayv1.c1
-rw-r--r--src/mame/drivers/mayumi.c1
-rw-r--r--src/mame/drivers/mcatadv.c1
-rw-r--r--src/mame/drivers/mcr.c1
-rw-r--r--src/mame/drivers/mcr3.c2
-rw-r--r--src/mame/drivers/mcr68.c2
-rw-r--r--src/mame/drivers/meadows.c3
-rw-r--r--src/mame/drivers/megasys1.c4
-rw-r--r--src/mame/drivers/megazone.c1
-rw-r--r--src/mame/drivers/meijinsn.c1
-rw-r--r--src/mame/drivers/mermaid.c1
-rw-r--r--src/mame/drivers/metalmx.c1
-rw-r--r--src/mame/drivers/metlclsh.c1
-rw-r--r--src/mame/drivers/metro.c25
-rw-r--r--src/mame/drivers/mexico86.c1
-rw-r--r--src/mame/drivers/meyc8088.c1
-rw-r--r--src/mame/drivers/mgolf.c1
-rw-r--r--src/mame/drivers/micro3d.c1
-rw-r--r--src/mame/drivers/midas.c2
-rw-r--r--src/mame/drivers/midtunit.c1
-rw-r--r--src/mame/drivers/midvunit.c1
-rw-r--r--src/mame/drivers/midwunit.c1
-rw-r--r--src/mame/drivers/midxunit.c1
-rw-r--r--src/mame/drivers/midyunit.c2
-rw-r--r--src/mame/drivers/midzeus.c2
-rw-r--r--src/mame/drivers/mikie.c1
-rw-r--r--src/mame/drivers/mil4000.c1
-rw-r--r--src/mame/drivers/miniboy7.c1
-rw-r--r--src/mame/drivers/mirax.c1
-rw-r--r--src/mame/drivers/missile.c1
-rw-r--r--src/mame/drivers/mitchell.c5
-rw-r--r--src/mame/drivers/mjkjidai.c1
-rw-r--r--src/mame/drivers/mjsister.c1
-rw-r--r--src/mame/drivers/mlanding.c1
-rw-r--r--src/mame/drivers/model3.c6
-rw-r--r--src/mame/drivers/mogura.c1
-rw-r--r--src/mame/drivers/mole.c1
-rw-r--r--src/mame/drivers/momoko.c1
-rw-r--r--src/mame/drivers/monzagp.c1
-rw-r--r--src/mame/drivers/mosaic.c1
-rw-r--r--src/mame/drivers/mouser.c1
-rw-r--r--src/mame/drivers/mpoker.c1
-rw-r--r--src/mame/drivers/mpu12wbk.c1
-rw-r--r--src/mame/drivers/mpu4dealem.c1
-rw-r--r--src/mame/drivers/mpu4plasma.c1
-rw-r--r--src/mame/drivers/mquake.c1
-rw-r--r--src/mame/drivers/mrdo.c1
-rw-r--r--src/mame/drivers/mrflea.c1
-rw-r--r--src/mame/drivers/mrjong.c1
-rw-r--r--src/mame/drivers/msisaac.c1
-rw-r--r--src/mame/drivers/mugsmash.c2
-rw-r--r--src/mame/drivers/multfish.c2
-rw-r--r--src/mame/drivers/multigam.c1
-rw-r--r--src/mame/drivers/munchmo.c1
-rw-r--r--src/mame/drivers/murogem.c1
-rw-r--r--src/mame/drivers/murogmbl.c1
-rw-r--r--src/mame/drivers/mustache.c1
-rw-r--r--src/mame/drivers/mwarr.c1
-rw-r--r--src/mame/drivers/n8080.c3
-rw-r--r--src/mame/drivers/namcofl.c1
-rw-r--r--src/mame/drivers/namcona1.c1
-rw-r--r--src/mame/drivers/namconb1.c2
-rw-r--r--src/mame/drivers/namcond1.c1
-rw-r--r--src/mame/drivers/namcos1.c1
-rw-r--r--src/mame/drivers/namcos2.c7
-rw-r--r--src/mame/drivers/namcos21.c3
-rw-r--r--src/mame/drivers/namcos86.c1
-rw-r--r--src/mame/drivers/naughtyb.c2
-rw-r--r--src/mame/drivers/nbmj8688.c2
-rw-r--r--src/mame/drivers/nbmj8891.c1
-rw-r--r--src/mame/drivers/nbmj8900.c2
-rw-r--r--src/mame/drivers/nbmj8991.c2
-rw-r--r--src/mame/drivers/nbmj9195.c1
-rw-r--r--src/mame/drivers/nemesis.c10
-rw-r--r--src/mame/drivers/neoprint.c2
-rw-r--r--src/mame/drivers/neptunp2.c2
-rw-r--r--src/mame/drivers/news.c1
-rw-r--r--src/mame/drivers/nightgal.c1
-rw-r--r--src/mame/drivers/ninjakd2.c1
-rw-r--r--src/mame/drivers/nitedrvr.c1
-rw-r--r--src/mame/drivers/niyanpai.c1
-rw-r--r--src/mame/drivers/nmg5.c1
-rw-r--r--src/mame/drivers/nmk16.c24
-rw-r--r--src/mame/drivers/norautp.c1
-rw-r--r--src/mame/drivers/nova2001.c4
-rw-r--r--src/mame/drivers/nsmpoker.c1
-rw-r--r--src/mame/drivers/nycaptor.c3
-rw-r--r--src/mame/drivers/offtwall.c1
-rw-r--r--src/mame/drivers/ohmygod.c1
-rw-r--r--src/mame/drivers/ojankohs.c4
-rw-r--r--src/mame/drivers/olibochu.c1
-rw-r--r--src/mame/drivers/oneshot.c1
-rw-r--r--src/mame/drivers/onetwo.c1
-rw-r--r--src/mame/drivers/opwolf.c2
-rw-r--r--src/mame/drivers/orbit.c1
-rw-r--r--src/mame/drivers/othunder.c1
-rw-r--r--src/mame/drivers/overdriv.c1
-rw-r--r--src/mame/drivers/pacland.c1
-rw-r--r--src/mame/drivers/pacman.c1
-rw-r--r--src/mame/drivers/pandoras.c1
-rw-r--r--src/mame/drivers/panicr.c4
-rw-r--r--src/mame/drivers/paradise.c1
-rw-r--r--src/mame/drivers/paranoia.c1
-rw-r--r--src/mame/drivers/parodius.c1
-rw-r--r--src/mame/drivers/pasha2.c1
-rw-r--r--src/mame/drivers/pass.c1
-rw-r--r--src/mame/drivers/pastelg.c2
-rw-r--r--src/mame/drivers/pbaction.c1
-rw-r--r--src/mame/drivers/pcktgal.c1
-rw-r--r--src/mame/drivers/pengo.c1
-rw-r--r--src/mame/drivers/peplus.c1
-rw-r--r--src/mame/drivers/pgm.c1
-rw-r--r--src/mame/drivers/pgm2.c1
-rw-r--r--src/mame/drivers/phoenix.c2
-rw-r--r--src/mame/drivers/photon.c2
-rw-r--r--src/mame/drivers/photon2.c1
-rw-r--r--src/mame/drivers/pingpong.c1
-rw-r--r--src/mame/drivers/pinkiri8.c1
-rw-r--r--src/mame/drivers/pipedrm.c2
-rw-r--r--src/mame/drivers/pipeline.c1
-rw-r--r--src/mame/drivers/pirates.c1
-rw-r--r--src/mame/drivers/pitnrun.c1
-rw-r--r--src/mame/drivers/pkscram.c1
-rw-r--r--src/mame/drivers/pktgaldx.c2
-rw-r--r--src/mame/drivers/playch10.c2
-rw-r--r--src/mame/drivers/playmark.c6
-rw-r--r--src/mame/drivers/plygonet.c1
-rw-r--r--src/mame/drivers/pokechmp.c1
-rw-r--r--src/mame/drivers/poker72.c1
-rw-r--r--src/mame/drivers/polepos.c2
-rw-r--r--src/mame/drivers/policetr.c1
-rw-r--r--src/mame/drivers/polyplay.c1
-rw-r--r--src/mame/drivers/poolshrk.c1
-rw-r--r--src/mame/drivers/pooyan.c1
-rw-r--r--src/mame/drivers/popeye.c1
-rw-r--r--src/mame/drivers/popobear.c1
-rw-r--r--src/mame/drivers/popper.c1
-rw-r--r--src/mame/drivers/portrait.c1
-rw-r--r--src/mame/drivers/powerbal.c2
-rw-r--r--src/mame/drivers/powerins.c1
-rw-r--r--src/mame/drivers/ppmast93.c1
-rw-r--r--src/mame/drivers/prehisle.c1
-rw-r--r--src/mame/drivers/progolf.c1
-rw-r--r--src/mame/drivers/psattack.c1
-rw-r--r--src/mame/drivers/psikyo.c4
-rw-r--r--src/mame/drivers/pturn.c1
-rw-r--r--src/mame/drivers/punchout.c2
-rw-r--r--src/mame/drivers/pushman.c2
-rw-r--r--src/mame/drivers/pzletime.c2
-rw-r--r--src/mame/drivers/qdrmfgp.c2
-rw-r--r--src/mame/drivers/quakeat.c1
-rw-r--r--src/mame/drivers/quasar.c1
-rw-r--r--src/mame/drivers/quizdna.c1
-rw-r--r--src/mame/drivers/quizo.c1
-rw-r--r--src/mame/drivers/quizpani.c1
-rw-r--r--src/mame/drivers/quizpun2.c1
-rw-r--r--src/mame/drivers/quizshow.c1
-rw-r--r--src/mame/drivers/r2dx_v33.c3
-rw-r--r--src/mame/drivers/rabbit.c1
-rw-r--r--src/mame/drivers/raiden.c1
-rw-r--r--src/mame/drivers/raiden2.c4
-rw-r--r--src/mame/drivers/rainbow.c2
-rw-r--r--src/mame/drivers/rallyx.c2
-rw-r--r--src/mame/drivers/rampart.c1
-rw-r--r--src/mame/drivers/rastan.c1
-rw-r--r--src/mame/drivers/rastersp.c1
-rw-r--r--src/mame/drivers/rbmk.c1
-rw-r--r--src/mame/drivers/rcorsair.c3
-rw-r--r--src/mame/drivers/realbrk.c1
-rw-r--r--src/mame/drivers/redclash.c2
-rw-r--r--src/mame/drivers/relief.c1
-rw-r--r--src/mame/drivers/renegade.c1
-rw-r--r--src/mame/drivers/retofinv.c1
-rw-r--r--src/mame/drivers/rgum.c1
-rw-r--r--src/mame/drivers/rltennis.c3
-rw-r--r--src/mame/drivers/rmhaihai.c1
-rw-r--r--src/mame/drivers/rockrage.c1
-rw-r--r--src/mame/drivers/rocnrope.c1
-rw-r--r--src/mame/drivers/rohga.c4
-rw-r--r--src/mame/drivers/rollerg.c1
-rw-r--r--src/mame/drivers/rollrace.c1
-rw-r--r--src/mame/drivers/roul.c1
-rw-r--r--src/mame/drivers/royalmah.c1
-rw-r--r--src/mame/drivers/rpunch.c2
-rw-r--r--src/mame/drivers/runaway.c1
-rw-r--r--src/mame/drivers/rungun.c1
-rw-r--r--src/mame/drivers/safarir.c1
-rw-r--r--src/mame/drivers/sandscrp.c1
-rw-r--r--src/mame/drivers/sanremo.c1
-rw-r--r--src/mame/drivers/sauro.c1
-rw-r--r--src/mame/drivers/sbasketb.c1
-rw-r--r--src/mame/drivers/sbowling.c1
-rw-r--r--src/mame/drivers/sbrkout.c1
-rw-r--r--src/mame/drivers/sbugger.c1
-rw-r--r--src/mame/drivers/scobra.c2
-rw-r--r--src/mame/drivers/scotrsht.c1
-rw-r--r--src/mame/drivers/scramble.c2
-rw-r--r--src/mame/drivers/scregg.c2
-rw-r--r--src/mame/drivers/sderby.c5
-rw-r--r--src/mame/drivers/seabattl.c1
-rw-r--r--src/mame/drivers/segag80r.c2
-rw-r--r--src/mame/drivers/segahang.c1
-rw-r--r--src/mame/drivers/segajw.c1
-rw-r--r--src/mame/drivers/segaorun.c3
-rw-r--r--src/mame/drivers/segas16a.c1
-rw-r--r--src/mame/drivers/segas16b.c1
-rw-r--r--src/mame/drivers/segas18.c1
-rw-r--r--src/mame/drivers/segas24.c1
-rw-r--r--src/mame/drivers/segaxbd.c1
-rw-r--r--src/mame/drivers/segaybd.c1
-rw-r--r--src/mame/drivers/seicross.c1
-rw-r--r--src/mame/drivers/sengokmj.c1
-rw-r--r--src/mame/drivers/senjyo.c1
-rw-r--r--src/mame/drivers/seta.c40
-rw-r--r--src/mame/drivers/seta2.c3
-rw-r--r--src/mame/drivers/sf.c1
-rw-r--r--src/mame/drivers/sfbonus.c1
-rw-r--r--src/mame/drivers/shadfrce.c1
-rw-r--r--src/mame/drivers/shangha3.c3
-rw-r--r--src/mame/drivers/shanghai.c3
-rw-r--r--src/mame/drivers/shangkid.c2
-rw-r--r--src/mame/drivers/shaolins.c1
-rw-r--r--src/mame/drivers/shisen.c1
-rw-r--r--src/mame/drivers/shootout.c2
-rw-r--r--src/mame/drivers/shougi.c1
-rw-r--r--src/mame/drivers/shtzone.c1
-rw-r--r--src/mame/drivers/shuuz.c1
-rw-r--r--src/mame/drivers/sidearms.c3
-rw-r--r--src/mame/drivers/sidepckt.c1
-rw-r--r--src/mame/drivers/sigmab52.c1
-rw-r--r--src/mame/drivers/sigmab98.c2
-rw-r--r--src/mame/drivers/silkroad.c1
-rw-r--r--src/mame/drivers/silvmil.c1
-rw-r--r--src/mame/drivers/simpl156.c1
-rw-r--r--src/mame/drivers/simpsons.c1
-rw-r--r--src/mame/drivers/skimaxx.c2
-rw-r--r--src/mame/drivers/skullxbo.c1
-rw-r--r--src/mame/drivers/skyarmy.c1
-rw-r--r--src/mame/drivers/skydiver.c1
-rw-r--r--src/mame/drivers/skyfox.c1
-rw-r--r--src/mame/drivers/skykid.c1
-rw-r--r--src/mame/drivers/skylncr.c1
-rw-r--r--src/mame/drivers/skyraid.c1
-rw-r--r--src/mame/drivers/slapfght.c4
-rw-r--r--src/mame/drivers/slapshot.c2
-rw-r--r--src/mame/drivers/smsmcorp.c1
-rw-r--r--src/mame/drivers/snk.c6
-rw-r--r--src/mame/drivers/snk6502.c2
-rw-r--r--src/mame/drivers/snk68.c1
-rw-r--r--src/mame/drivers/snookr10.c1
-rw-r--r--src/mame/drivers/snowbros.c4
-rw-r--r--src/mame/drivers/solomon.c1
-rw-r--r--src/mame/drivers/sonson.c1
-rw-r--r--src/mame/drivers/spaceg.c1
-rw-r--r--src/mame/drivers/spcforce.c1
-rw-r--r--src/mame/drivers/spdodgeb.c1
-rw-r--r--src/mame/drivers/speedatk.c1
-rw-r--r--src/mame/drivers/speedbal.c1
-rw-r--r--src/mame/drivers/speedspn.c1
-rw-r--r--src/mame/drivers/splash.c4
-rw-r--r--src/mame/drivers/splus.c1
-rw-r--r--src/mame/drivers/spoker.c1
-rw-r--r--src/mame/drivers/spool99.c1
-rw-r--r--src/mame/drivers/sprcros2.c1
-rw-r--r--src/mame/drivers/sprint2.c1
-rw-r--r--src/mame/drivers/sprint4.c1
-rw-r--r--src/mame/drivers/sprint8.c1
-rw-r--r--src/mame/drivers/spy.c1
-rw-r--r--src/mame/drivers/srmp2.c3
-rw-r--r--src/mame/drivers/srumbler.c1
-rw-r--r--src/mame/drivers/ssfindo.c1
-rw-r--r--src/mame/drivers/sshot.c2
-rw-r--r--src/mame/drivers/sslam.c2
-rw-r--r--src/mame/drivers/ssozumo.c1
-rw-r--r--src/mame/drivers/sspeedr.c1
-rw-r--r--src/mame/drivers/ssrj.c1
-rw-r--r--src/mame/drivers/ssv.c1
-rw-r--r--src/mame/drivers/st0016.c1
-rw-r--r--src/mame/drivers/stadhero.c1
-rw-r--r--src/mame/drivers/starcrus.c1
-rw-r--r--src/mame/drivers/starshp1.c1
-rw-r--r--src/mame/drivers/statriv2.c1
-rw-r--r--src/mame/drivers/stfight.c1
-rw-r--r--src/mame/drivers/stlforce.c1
-rw-r--r--src/mame/drivers/strnskil.c1
-rw-r--r--src/mame/drivers/stuntair.c1
-rw-r--r--src/mame/drivers/sub.c1
-rw-r--r--src/mame/drivers/subs.c2
-rw-r--r--src/mame/drivers/subsino.c5
-rw-r--r--src/mame/drivers/subsino2.c4
-rw-r--r--src/mame/drivers/summit.c1
-rw-r--r--src/mame/drivers/suna16.c4
-rw-r--r--src/mame/drivers/suna8.c5
-rw-r--r--src/mame/drivers/supbtime.c2
-rw-r--r--src/mame/drivers/supdrapo.c1
-rw-r--r--src/mame/drivers/superchs.c1
-rw-r--r--src/mame/drivers/supercrd.c1
-rw-r--r--src/mame/drivers/superqix.c4
-rw-r--r--src/mame/drivers/superwng.c1
-rw-r--r--src/mame/drivers/suprgolf.c1
-rw-r--r--src/mame/drivers/suprloco.c1
-rw-r--r--src/mame/drivers/suprridr.c1
-rw-r--r--src/mame/drivers/suprslam.c1
-rw-r--r--src/mame/drivers/surpratk.c1
-rw-r--r--src/mame/drivers/system1.c1
-rw-r--r--src/mame/drivers/system16.c3
-rw-r--r--src/mame/drivers/tagteam.c1
-rw-r--r--src/mame/drivers/tail2nos.c1
-rw-r--r--src/mame/drivers/taito_b.c16
-rw-r--r--src/mame/drivers/taito_f2.c3
-rw-r--r--src/mame/drivers/taito_h.c3
-rw-r--r--src/mame/drivers/taito_l.c4
-rw-r--r--src/mame/drivers/taito_o.c1
-rw-r--r--src/mame/drivers/taito_x.c4
-rw-r--r--src/mame/drivers/taito_z.c10
-rw-r--r--src/mame/drivers/taitoair.c3
-rw-r--r--src/mame/drivers/taitojc.c1
-rw-r--r--src/mame/drivers/taitosj.c1
-rw-r--r--src/mame/drivers/tank8.c1
-rw-r--r--src/mame/drivers/tankbatt.c1
-rw-r--r--src/mame/drivers/tankbust.c1
-rw-r--r--src/mame/drivers/taotaido.c1
-rw-r--r--src/mame/drivers/targeth.c1
-rw-r--r--src/mame/drivers/tasman.c1
-rw-r--r--src/mame/drivers/tattack.c1
-rw-r--r--src/mame/drivers/taxidriv.c1
-rw-r--r--src/mame/drivers/tbowl.c3
-rw-r--r--src/mame/drivers/tceptor.c3
-rw-r--r--src/mame/drivers/tcl.c1
-rw-r--r--src/mame/drivers/tecmo.c2
-rw-r--r--src/mame/drivers/tehkanwc.c1
-rw-r--r--src/mame/drivers/terracre.c3
-rw-r--r--src/mame/drivers/tetrisp2.c7
-rw-r--r--src/mame/drivers/thedeep.c1
-rw-r--r--src/mame/drivers/thepit.c1
-rw-r--r--src/mame/drivers/thief.c3
-rw-r--r--src/mame/drivers/thoop2.c1
-rw-r--r--src/mame/drivers/thunderj.c1
-rw-r--r--src/mame/drivers/thunderx.c2
-rw-r--r--src/mame/drivers/tiamc1.c1
-rw-r--r--src/mame/drivers/tigeroad.c1
-rw-r--r--src/mame/drivers/timelimt.c1
-rw-r--r--src/mame/drivers/timeplt.c1
-rw-r--r--src/mame/drivers/tmaster.c2
-rw-r--r--src/mame/drivers/tmmjprd.c2
-rw-r--r--src/mame/drivers/tmnt.c12
-rw-r--r--src/mame/drivers/tmspoker.c1
-rw-r--r--src/mame/drivers/tnzs.c7
-rw-r--r--src/mame/drivers/toaplan1.c10
-rw-r--r--src/mame/drivers/toaplan2.c20
-rw-r--r--src/mame/drivers/toki.c2
-rw-r--r--src/mame/drivers/tokyocop.c1
-rw-r--r--src/mame/drivers/topspeed.c1
-rw-r--r--src/mame/drivers/tourvis.c1
-rw-r--r--src/mame/drivers/toypop.c1
-rw-r--r--src/mame/drivers/tp84.c1
-rw-r--r--src/mame/drivers/trackfld.c2
-rw-r--r--src/mame/drivers/travrusa.c1
-rw-r--r--src/mame/drivers/triplhnt.c1
-rw-r--r--src/mame/drivers/truco.c1
-rw-r--r--src/mame/drivers/trucocl.c1
-rw-r--r--src/mame/drivers/trvmadns.c1
-rw-r--r--src/mame/drivers/tryout.c1
-rw-r--r--src/mame/drivers/tsamurai.c3
-rw-r--r--src/mame/drivers/ttchamp.c1
-rw-r--r--src/mame/drivers/tubep.c2
-rw-r--r--src/mame/drivers/tugboat.c1
-rw-r--r--src/mame/drivers/tumbleb.c7
-rw-r--r--src/mame/drivers/tumblep.c1
-rw-r--r--src/mame/drivers/tunhunt.c1
-rw-r--r--src/mame/drivers/turbo.c3
-rw-r--r--src/mame/drivers/turrett.c2
-rw-r--r--src/mame/drivers/twin16.c2
-rw-r--r--src/mame/drivers/twincobr.c1
-rw-r--r--src/mame/drivers/twins.c2
-rw-r--r--src/mame/drivers/tx1.c7
-rw-r--r--src/mame/drivers/uapce.c1
-rw-r--r--src/mame/drivers/ultraman.c1
-rw-r--r--src/mame/drivers/ultratnk.c1
-rw-r--r--src/mame/drivers/ultrsprt.c1
-rw-r--r--src/mame/drivers/umipoker.c1
-rw-r--r--src/mame/drivers/undrfire.c2
-rw-r--r--src/mame/drivers/unico.c3
-rw-r--r--src/mame/drivers/unkhorse.c2
-rw-r--r--src/mame/drivers/upscope.c1
-rw-r--r--src/mame/drivers/usgames.c1
-rw-r--r--src/mame/drivers/vamphalf.c2
-rw-r--r--src/mame/drivers/vaportra.c2
-rw-r--r--src/mame/drivers/vastar.c1
-rw-r--r--src/mame/drivers/vball.c3
-rw-r--r--src/mame/drivers/vega.c1
-rw-r--r--src/mame/drivers/vegaeo.c1
-rw-r--r--src/mame/drivers/vendetta.c1
-rw-r--r--src/mame/drivers/victory.c1
-rw-r--r--src/mame/drivers/videopin.c1
-rw-r--r--src/mame/drivers/videopkr.c1
-rw-r--r--src/mame/drivers/vigilant.c3
-rw-r--r--src/mame/drivers/vindictr.c1
-rw-r--r--src/mame/drivers/vlc.c1
-rw-r--r--src/mame/drivers/volfied.c1
-rw-r--r--src/mame/drivers/vp101.c2
-rw-r--r--src/mame/drivers/vpoker.c1
-rw-r--r--src/mame/drivers/vroulet.c1
-rw-r--r--src/mame/drivers/vsnes.c4
-rw-r--r--src/mame/drivers/vulgus.c1
-rw-r--r--src/mame/drivers/wallc.c1
-rw-r--r--src/mame/drivers/wardner.c1
-rw-r--r--src/mame/drivers/warpsped.c2
-rw-r--r--src/mame/drivers/warpwarp.c2
-rw-r--r--src/mame/drivers/wc90.c1
-rw-r--r--src/mame/drivers/wc90b.c1
-rw-r--r--src/mame/drivers/wecleman.c1
-rw-r--r--src/mame/drivers/welltris.c1
-rw-r--r--src/mame/drivers/wgp.c1
-rw-r--r--src/mame/drivers/wheelfir.c1
-rw-r--r--src/mame/drivers/wildpkr.c1
-rw-r--r--src/mame/drivers/wink.c1
-rw-r--r--src/mame/drivers/wiping.c1
-rw-r--r--src/mame/drivers/witch.c1
-rw-r--r--src/mame/drivers/wiz.c1
-rw-r--r--src/mame/drivers/wolfpack.c3
-rw-r--r--src/mame/drivers/wrally.c1
-rw-r--r--src/mame/drivers/wwfsstar.c1
-rw-r--r--src/mame/drivers/xain.c1
-rw-r--r--src/mame/drivers/xmen.c4
-rw-r--r--src/mame/drivers/xorworld.c1
-rw-r--r--src/mame/drivers/xxmissio.c1
-rw-r--r--src/mame/drivers/xybots.c1
-rw-r--r--src/mame/drivers/xyonix.c1
-rw-r--r--src/mame/drivers/yiear.c1
-rw-r--r--src/mame/drivers/yunsun16.c3
-rw-r--r--src/mame/drivers/yunsung8.c1
-rw-r--r--src/mame/drivers/zac2650.c1
-rw-r--r--src/mame/drivers/zaccaria.c1
-rw-r--r--src/mame/drivers/zaxxon.c1
-rw-r--r--src/mame/drivers/zerozone.c1
-rw-r--r--src/mame/drivers/zodiack.c1
-rw-r--r--src/mame/video/bfm_adr2.c2
-rw-r--r--src/mame/video/exidy440.c1
-rw-r--r--src/mame/video/leland.c1
-rw-r--r--src/mame/video/madalien.c1
-rw-r--r--src/mame/video/mystston.c1
-rw-r--r--src/mame/video/stactics.c1
-rw-r--r--src/mess/drivers/a51xx.c1
-rw-r--r--src/mess/drivers/a7150.c1
-rw-r--r--src/mess/drivers/a7800.c3
-rw-r--r--src/mess/drivers/ac1.c1
-rw-r--r--src/mess/drivers/ace.c2
-rw-r--r--src/mess/drivers/advision.c1
-rw-r--r--src/mess/drivers/alesis.c1
-rw-r--r--src/mess/drivers/alphasma.c2
-rw-r--r--src/mess/drivers/amiga.c4
-rw-r--r--src/mess/drivers/amstrad.c3
-rw-r--r--src/mess/drivers/apexc.c1
-rw-r--r--src/mess/drivers/apple1.c2
-rw-r--r--src/mess/drivers/apple2.c1
-rw-r--r--src/mess/drivers/apple2gs.c1
-rw-r--r--src/mess/drivers/apple3.c1
-rw-r--r--src/mess/drivers/apricotf.c2
-rw-r--r--src/mess/drivers/apricotp.c3
-rw-r--r--src/mess/drivers/aquarius.c1
-rw-r--r--src/mess/drivers/arcadia.c1
-rw-r--r--src/mess/drivers/argo.c2
-rw-r--r--src/mess/drivers/astrocde.c1
-rw-r--r--src/mess/drivers/atari400.c1
-rw-r--r--src/mess/drivers/avigo.c2
-rw-r--r--src/mess/drivers/ax20.c1
-rw-r--r--src/mess/drivers/b16.c1
-rw-r--r--src/mess/drivers/b2m.c1
-rw-r--r--src/mess/drivers/bcs3.c2
-rw-r--r--src/mess/drivers/beehive.c2
-rw-r--r--src/mess/drivers/binbug.c4
-rw-r--r--src/mess/drivers/bk.c1
-rw-r--r--src/mess/drivers/bmjr.c2
-rw-r--r--src/mess/drivers/busicom.c1
-rw-r--r--src/mess/drivers/bw2.c1
-rw-r--r--src/mess/drivers/c10.c1
-rw-r--r--src/mess/drivers/casloopy.c1
-rw-r--r--src/mess/drivers/cat.c2
-rw-r--r--src/mess/drivers/cd2650.c1
-rw-r--r--src/mess/drivers/cdc721.c1
-rw-r--r--src/mess/drivers/cfx9850.c1
-rw-r--r--src/mess/drivers/cgenie.c1
-rw-r--r--src/mess/drivers/channelf.c4
-rw-r--r--src/mess/drivers/clcd.c1
-rw-r--r--src/mess/drivers/comquest.c1
-rw-r--r--src/mess/drivers/concept.c1
-rw-r--r--src/mess/drivers/d6800.c2
-rw-r--r--src/mess/drivers/dai.c1
-rw-r--r--src/mess/drivers/dct11em.c2
-rw-r--r--src/mess/drivers/dm7000.c1
-rw-r--r--src/mess/drivers/dms5000.c2
-rw-r--r--src/mess/drivers/electron.c1
-rw-r--r--src/mess/drivers/elwro800.c1
-rw-r--r--src/mess/drivers/exelv.c2
-rw-r--r--src/mess/drivers/fk1.c2
-rw-r--r--src/mess/drivers/fm7.c9
-rw-r--r--src/mess/drivers/fp200.c1
-rw-r--r--src/mess/drivers/fp6000.c1
-rw-r--r--src/mess/drivers/galaxy.c2
-rw-r--r--src/mess/drivers/galeb.c1
-rw-r--r--src/mess/drivers/gamecom.c1
-rw-r--r--src/mess/drivers/gamepock.c1
-rw-r--r--src/mess/drivers/gb.c4
-rw-r--r--src/mess/drivers/gba.c1
-rw-r--r--src/mess/drivers/geniusiq.c4
-rw-r--r--src/mess/drivers/gmaster.c1
-rw-r--r--src/mess/drivers/grfd2301.c2
-rw-r--r--src/mess/drivers/hec2hrp.c7
-rw-r--r--src/mess/drivers/homelab.c6
-rw-r--r--src/mess/drivers/homez80.c2
-rw-r--r--src/mess/drivers/hp48.c1
-rw-r--r--src/mess/drivers/hp9k.c2
-rw-r--r--src/mess/drivers/hprot1.c2
-rw-r--r--src/mess/drivers/hunter2.c2
-rw-r--r--src/mess/drivers/hx20.c3
-rw-r--r--src/mess/drivers/ibm6580.c2
-rw-r--r--src/mess/drivers/ie15.c4
-rw-r--r--src/mess/drivers/interact.c2
-rw-r--r--src/mess/drivers/intv.c3
-rw-r--r--src/mess/drivers/ip20.c1
-rw-r--r--src/mess/drivers/iq151.c2
-rw-r--r--src/mess/drivers/irisha.c2
-rw-r--r--src/mess/drivers/itt3030.c1
-rw-r--r--src/mess/drivers/jonos.c2
-rw-r--r--src/mess/drivers/jr100.c1
-rw-r--r--src/mess/drivers/jr200.c1
-rw-r--r--src/mess/drivers/jtc.c3
-rw-r--r--src/mess/drivers/jupiter.c3
-rw-r--r--src/mess/drivers/k8915.c2
-rw-r--r--src/mess/drivers/kaypro.c5
-rw-r--r--src/mess/drivers/kc.c2
-rw-r--r--src/mess/drivers/konin.c2
-rw-r--r--src/mess/drivers/kramermc.c1
-rw-r--r--src/mess/drivers/lcmate2.c2
-rw-r--r--src/mess/drivers/lisa.c1
-rw-r--r--src/mess/drivers/llc.c4
-rw-r--r--src/mess/drivers/lviv.c1
-rw-r--r--src/mess/drivers/lynx.c1
-rw-r--r--src/mess/drivers/m79152pc.c1
-rw-r--r--src/mess/drivers/mac.c10
-rw-r--r--src/mess/drivers/macpci.c1
-rw-r--r--src/mess/drivers/mbc200.c2
-rw-r--r--src/mess/drivers/mc80.c4
-rw-r--r--src/mess/drivers/mes.c2
-rw-r--r--src/mess/drivers/micronic.c1
-rw-r--r--src/mess/drivers/microtan.c1
-rw-r--r--src/mess/drivers/microvsn.c1
-rw-r--r--src/mess/drivers/mikro80.c1
-rw-r--r--src/mess/drivers/mk85.c2
-rw-r--r--src/mess/drivers/mk90.c2
-rw-r--r--src/mess/drivers/mmodular.c1
-rw-r--r--src/mess/drivers/modellot.c2
-rw-r--r--src/mess/drivers/molecular.c1
-rw-r--r--src/mess/drivers/ms0515.c1
-rw-r--r--src/mess/drivers/mstation.c1
-rw-r--r--src/mess/drivers/multi16.c2
-rw-r--r--src/mess/drivers/multi8.c2
-rw-r--r--src/mess/drivers/myb3k.c2
-rw-r--r--src/mess/drivers/mz2000.c1
-rw-r--r--src/mess/drivers/mz2500.c1
-rw-r--r--src/mess/drivers/mz700.c1
-rw-r--r--src/mess/drivers/mz80.c2
-rw-r--r--src/mess/drivers/nakajies.c2
-rw-r--r--src/mess/drivers/nanos.c2
-rw-r--r--src/mess/drivers/nascom1.c1
-rw-r--r--src/mess/drivers/nc.c1
-rw-r--r--src/mess/drivers/nes.c1
-rw-r--r--src/mess/drivers/octopus.c2
-rw-r--r--src/mess/drivers/odyssey2.c4
-rw-r--r--src/mess/drivers/okean240.c1
-rw-r--r--src/mess/drivers/ondra.c1
-rw-r--r--src/mess/drivers/orao.c1
-rw-r--r--src/mess/drivers/oric.c1
-rw-r--r--src/mess/drivers/orion.c3
-rw-r--r--src/mess/drivers/osbexec.c1
-rw-r--r--src/mess/drivers/osborne1.c1
-rw-r--r--src/mess/drivers/p112.c1
-rw-r--r--src/mess/drivers/p2000t.c2
-rw-r--r--src/mess/drivers/palm.c2
-rw-r--r--src/mess/drivers/paso1600.c2
-rw-r--r--src/mess/drivers/pasogo.c1
-rw-r--r--src/mess/drivers/pasopia7.c4
-rw-r--r--src/mess/drivers/pb1000.c2
-rw-r--r--src/mess/drivers/pc100.c2
-rw-r--r--src/mess/drivers/pc1500.c2
-rw-r--r--src/mess/drivers/pc2000.c1
-rw-r--r--src/mess/drivers/pc4.c2
-rw-r--r--src/mess/drivers/pc6001.c2
-rw-r--r--src/mess/drivers/pc8801.c1
-rw-r--r--src/mess/drivers/pce220.c2
-rw-r--r--src/mess/drivers/pcm.c2
-rw-r--r--src/mess/drivers/pcw.c3
-rw-r--r--src/mess/drivers/pcw16.c1
-rw-r--r--src/mess/drivers/pda600.c2
-rw-r--r--src/mess/drivers/pdp1.c1
-rw-r--r--src/mess/drivers/pegasus.c1
-rw-r--r--src/mess/drivers/phunsy.c2
-rw-r--r--src/mess/drivers/pitagjr.c1
-rw-r--r--src/mess/drivers/pk8000.c1
-rw-r--r--src/mess/drivers/pk8020.c1
-rw-r--r--src/mess/drivers/plan80.c2
-rw-r--r--src/mess/drivers/pmd85.c1
-rw-r--r--src/mess/drivers/pocketc.c2
-rw-r--r--src/mess/drivers/pokemini.c1
-rw-r--r--src/mess/drivers/poly88.c1
-rw-r--r--src/mess/drivers/portfoli.c3
-rw-r--r--src/mess/drivers/pp01.c2
-rw-r--r--src/mess/drivers/prestige.c1
-rw-r--r--src/mess/drivers/primo.c1
-rw-r--r--src/mess/drivers/psion.c2
-rw-r--r--src/mess/drivers/ptcsol.c2
-rw-r--r--src/mess/drivers/pv1000.c1
-rw-r--r--src/mess/drivers/pv9234.c1
-rw-r--r--src/mess/drivers/px4.c1
-rw-r--r--src/mess/drivers/px8.c1
-rw-r--r--src/mess/drivers/rd110.c2
-rw-r--r--src/mess/drivers/replicator.c1
-rw-r--r--src/mess/drivers/rex6000.c2
-rw-r--r--src/mess/drivers/rm380z.c3
-rw-r--r--src/mess/drivers/rmnimbus.c1
-rw-r--r--src/mess/drivers/rmt32.c2
-rw-r--r--src/mess/drivers/rx78.c2
-rw-r--r--src/mess/drivers/samcoupe.c1
-rw-r--r--src/mess/drivers/sapi1.c3
-rw-r--r--src/mess/drivers/sbrain.c2
-rw-r--r--src/mess/drivers/scv.c1
-rw-r--r--src/mess/drivers/smc777.c1
-rw-r--r--src/mess/drivers/socrates.c4
-rw-r--r--src/mess/drivers/sorcerer.c2
-rw-r--r--src/mess/drivers/special.c4
-rw-r--r--src/mess/drivers/spectrum.c1
-rw-r--r--src/mess/drivers/ssystem3.c1
-rw-r--r--src/mess/drivers/super80.c3
-rw-r--r--src/mess/drivers/supracan.c2
-rw-r--r--src/mess/drivers/svision.c2
-rw-r--r--src/mess/drivers/svmu.c2
-rw-r--r--src/mess/drivers/sys2900.c1
-rw-r--r--src/mess/drivers/terak.c1
-rw-r--r--src/mess/drivers/thomson.c1
-rw-r--r--src/mess/drivers/ti85.c1
-rw-r--r--src/mess/drivers/ti89.c2
-rw-r--r--src/mess/drivers/ti99_2.c1
-rw-r--r--src/mess/drivers/tim011.c2
-rw-r--r--src/mess/drivers/tk80bs.c2
-rw-r--r--src/mess/drivers/trs80.c1
-rw-r--r--src/mess/drivers/tx0.c1
-rw-r--r--src/mess/drivers/uknc.c2
-rw-r--r--src/mess/drivers/unistar.c2
-rw-r--r--src/mess/drivers/univac.c2
-rw-r--r--src/mess/drivers/unixpc.c1
-rw-r--r--src/mess/drivers/ut88.c2
-rw-r--r--src/mess/drivers/vboy.c2
-rw-r--r--src/mess/drivers/vc4000.c1
-rw-r--r--src/mess/drivers/vector06.c2
-rw-r--r--src/mess/drivers/vt220.c2
-rw-r--r--src/mess/drivers/vt320.c2
-rw-r--r--src/mess/drivers/vt520.c2
-rw-r--r--src/mess/drivers/vta2000.c4
-rw-r--r--src/mess/drivers/vtech2.c1
-rw-r--r--src/mess/drivers/wswan.c2
-rw-r--r--src/mess/drivers/x07.c2
-rw-r--r--src/mess/drivers/x68k.c2
-rw-r--r--src/mess/drivers/xavix.c1
-rw-r--r--src/mess/drivers/ymmu100.c2
-rw-r--r--src/mess/drivers/z100.c2
-rw-r--r--src/mess/drivers/z1013.c2
-rw-r--r--src/mess/drivers/z88.c1
-rw-r--r--src/mess/drivers/z9001.c2
-rw-r--r--src/mess/drivers/zorba.c2
-rw-r--r--src/mess/drivers/zx.c1
-rw-r--r--src/mess/video/kyocera.c2
-rw-r--r--src/mess/video/osi.c5
-rw-r--r--src/mess/video/pc8401a.c3
1111 files changed, 1948 insertions, 93 deletions
diff --git a/src/emu/bus/isa/ega.c b/src/emu/bus/isa/ega.c
index ac1c12bf589..c8985f26958 100644
--- a/src/emu/bus/isa/ega.c
+++ b/src/emu/bus/isa/ega.c
@@ -471,6 +471,7 @@ MACHINE_CONFIG_FRAGMENT( pcvideo_ega )
MCFG_SCREEN_ADD(EGA_SCREEN_NAME, RASTER)
MCFG_SCREEN_RAW_PARAMS(16257000,912,0,640,262,0,200)
MCFG_SCREEN_UPDATE_DEVICE(EGA_CRTC_NAME, crtc_ega_device, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD( "palette", 64 )
MCFG_CRTC_EGA_ADD(EGA_CRTC_NAME, 16257000/8, crtc_ega_ega_intf)
diff --git a/src/emu/screen.c b/src/emu/screen.c
index 0bb3eceb810..6941307cc24 100644
--- a/src/emu/screen.c
+++ b/src/emu/screen.c
@@ -53,14 +53,12 @@ screen_device::screen_device(const machine_config &mconfig, const char *tag, dev
m_yoffset(0.0f),
m_xscale(1.0f),
m_yscale(1.0f),
- m_palette_tag(NULL),
- m_palette_base(0),
+ m_palette(*this),
m_video_attributes(0),
m_container(NULL),
m_width(100),
m_height(100),
m_visarea(0, 99, 0, 99),
- m_palette(NULL),
m_curbitmap(0),
m_curtexture(0),
m_changed(true),
@@ -221,11 +219,9 @@ void screen_device::static_set_screen_vblank(device_t &device, screen_vblank_del
// configuration
//-------------------------------------------------
-void screen_device::static_set_palette(device_t &device, const char *palette, int base)
+void screen_device::static_set_palette(device_t &device, const char *tag)
{
- screen_device &screen = downcast<screen_device &>(device);
- screen.m_palette_tag = palette;
- screen.m_palette_base = base;
+ downcast<screen_device &>(device).m_palette.set_tag(tag);
}
@@ -265,9 +261,11 @@ void screen_device::device_validity_check(validity_checker &valid) const
if (m_refresh == 0)
mame_printf_error("Invalid (zero) refresh rate\n");
- // check for valid palette
- if (m_palette_tag != NULL && siblingdevice(m_palette_tag) == NULL)
- mame_printf_error("Unable to location specified palette '%s'\n", m_palette_tag);
+ texture_format texformat = !m_screen_update_ind16.isnull() ? TEXFORMAT_PALETTE16 : TEXFORMAT_RGB32;
+ if (m_palette == NULL && texformat == TEXFORMAT_PALETTE16)
+ mame_printf_error("Screen does not have palette defined\n");
+ if (m_palette != NULL && texformat == TEXFORMAT_RGB32)
+ mame_printf_warning("Screen does not need palette defined\n");
}
@@ -282,17 +280,6 @@ void screen_device::device_start()
m_screen_update_rgb32.bind_relative_to(*owner());
m_screen_vblank.bind_relative_to(*owner());
- // find our palette: first find the specified device, otherwise look for a subdevice
- // named 'palette'; finally, look for a global 'palette' at the root
- if (m_palette_tag != NULL)
- m_palette = siblingdevice<palette_device>(m_palette_tag);
- if (m_palette == NULL)
- m_palette = siblingdevice<palette_device>("palette");
- if (m_palette == NULL)
- m_palette = subdevice<palette_device>("palette");
- if (m_palette == NULL)
- m_palette = subdevice<palette_device>(":palette");
-
// if we have a palette and it's not started, wait for it
if (m_palette != NULL && !m_palette->started())
throw device_missing_dependencies();
@@ -300,9 +287,6 @@ void screen_device::device_start()
// configure bitmap formats and allocate screen bitmaps
texture_format texformat = !m_screen_update_ind16.isnull() ? TEXFORMAT_PALETTE16 : TEXFORMAT_RGB32;
- if (m_palette == NULL && texformat == TEXFORMAT_PALETTE16)
- throw emu_fatalerror("Screen does not have palette defined\n");
-
for (int index = 0; index < ARRAY_LENGTH(m_bitmap); index++)
{
m_bitmap[index].set_format(format(), texformat);
diff --git a/src/emu/screen.h b/src/emu/screen.h
index 6c3da03a0b9..956a899b331 100644
--- a/src/emu/screen.h
+++ b/src/emu/screen.h
@@ -179,7 +179,7 @@ public:
static void static_set_screen_update(device_t &device, screen_update_ind16_delegate callback);
static void static_set_screen_update(device_t &device, screen_update_rgb32_delegate callback);
static void static_set_screen_vblank(device_t &device, screen_vblank_delegate callback);
- static void static_set_palette(device_t &device, const char *palette, int base);
+ static void static_set_palette(device_t &device, const char *tag);
static void static_set_video_attributes(device_t &device, UINT32 flags);
// information getters
@@ -261,8 +261,7 @@ private:
screen_update_ind16_delegate m_screen_update_ind16; // screen update callback (16-bit palette)
screen_update_rgb32_delegate m_screen_update_rgb32; // screen update callback (32-bit RGB)
screen_vblank_delegate m_screen_vblank; // screen vblank callback
- const char * m_palette_tag; // tag to our palette
- int m_palette_base; // base of our palette
+ optional_device<palette_device> m_palette; // our palette
UINT32 m_video_attributes; // flags describing the video system
// internal state
@@ -274,7 +273,6 @@ private:
rectangle m_visarea; // current visible area (HBLANK end/start, VBLANK end/start)
// textures and bitmaps
- palette_device * m_palette; // our palette
texture_format m_texformat; // texture format
render_texture * m_texture[2]; // 2x textures for the screen bitmap
screen_bitmap m_bitmap[2]; // 2x bitmaps for rendering
@@ -383,7 +381,9 @@ typedef device_type_iterator<&device_creator<screen_device>, screen_device> scre
#define MCFG_SCREEN_VBLANK_DEVICE(_device, _class, _method) \
screen_device::static_set_screen_vblank(*device, screen_vblank_delegate(&_class::_method, #_class "::" #_method, _device, (_class *)0));
#define MCFG_SCREEN_PALETTE(_palette_tag) \
- screen_device::static_set_palette(*device, _palette_tag, 0);
+ screen_device::static_set_palette(*device, "^" _palette_tag);
+#define MCFG_SCREEN_NO_PALETTE \
+ screen_device::static_set_palette(*device, FINDER_DUMMY_TAG);
#define MCFG_SCREEN_VIDEO_ATTRIBUTES(_flags) \
screen_device::static_set_video_attributes(*device, _flags);
diff --git a/src/emu/video/psx.c b/src/emu/video/psx.c
index 2e91b5c0237..51c2b1ec12e 100644
--- a/src/emu/video/psx.c
+++ b/src/emu/video/psx.c
@@ -3804,8 +3804,9 @@ MACHINE_CONFIG_FRAGMENT( psxgpu )
MCFG_SCREEN_VISIBLE_AREA( 0, 639, 0, 479 )
MCFG_SCREEN_UPDATE_DEVICE( DEVICE_SELF, psxgpu_device, update_screen )
((screen_device *)device)->register_vblank_callback(vblank_state_delegate(FUNC(psxgpu_device::vblank), (psxgpu_device *) owner));
+ MCFG_SCREEN_PALETTE("palette")
- MCFG_PALETTE_ADD( "screen:palette", 65536 )
+ MCFG_PALETTE_ADD( "palette", 65536 )
MCFG_PALETTE_INIT_OWNER(psxgpu_device, psx)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/1942.c b/src/mame/drivers/1942.c
index b0492b673da..14acb2d7ba2 100644
--- a/src/mame/drivers/1942.c
+++ b/src/mame/drivers/1942.c
@@ -552,7 +552,7 @@ static MACHINE_CONFIG_START( 1942, _1942_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(_1942_state, screen_update_1942)
-
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
@@ -613,6 +613,7 @@ static MACHINE_CONFIG_START( 1942p, _1942_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(_1942_state, screen_update_1942p)
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
diff --git a/src/mame/drivers/1943.c b/src/mame/drivers/1943.c
index 05e048edfec..11d8b662fb5 100644
--- a/src/mame/drivers/1943.c
+++ b/src/mame/drivers/1943.c
@@ -319,6 +319,7 @@ static MACHINE_CONFIG_START( 1943, _1943_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(_1943_state, screen_update_1943)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 1943)
MCFG_PALETTE_ADD("palette", 32*4+16*16+16*16+16*16)
diff --git a/src/mame/drivers/1945kiii.c b/src/mame/drivers/1945kiii.c
index 3ca5b13fc03..f559c1e76b0 100644
--- a/src/mame/drivers/1945kiii.c
+++ b/src/mame/drivers/1945kiii.c
@@ -274,6 +274,7 @@ static MACHINE_CONFIG_START( k3, k3_state )
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(k3_state, screen_update_k3)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x800)
MCFG_PALETTE_FORMAT(xBBBBBGGGGGRRRRR)
diff --git a/src/mame/drivers/40love.c b/src/mame/drivers/40love.c
index 2d929e0eaad..3f3ccaba7ab 100644
--- a/src/mame/drivers/40love.c
+++ b/src/mame/drivers/40love.c
@@ -1073,6 +1073,7 @@ static MACHINE_CONFIG_START( 40love, fortyl_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(128,128+255, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(fortyl_state, screen_update_fortyl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 40love)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1128,6 +1129,7 @@ static MACHINE_CONFIG_START( undoukai, fortyl_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(128,128+255, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(fortyl_state, screen_update_fortyl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 40love)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/4enraya.c b/src/mame/drivers/4enraya.c
index 0cd84758832..f500566b86a 100644
--- a/src/mame/drivers/4enraya.c
+++ b/src/mame/drivers/4enraya.c
@@ -326,6 +326,7 @@ static MACHINE_CONFIG_START( 4enraya, _4enraya_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(_4enraya_state, screen_update_4enraya)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 4enraya)
diff --git a/src/mame/drivers/4roses.c b/src/mame/drivers/4roses.c
index 8fa0d138b29..5f112413677 100644
--- a/src/mame/drivers/4roses.c
+++ b/src/mame/drivers/4roses.c
@@ -400,6 +400,7 @@ static MACHINE_CONFIG_START( 4roses, _4roses_state )
MCFG_SCREEN_SIZE((124+1)*4, (30+1)*8) /* guess. taken from funworld games */
MCFG_SCREEN_VISIBLE_AREA(0*4, 96*4-1, 0*8, 29*8-1) /* guess. taken from funworld games */
MCFG_SCREEN_UPDATE_DRIVER(_4roses_state, screen_update_funworld)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 4roses)
diff --git a/src/mame/drivers/5clown.c b/src/mame/drivers/5clown.c
index 348d4c0a263..4b84a394d44 100644
--- a/src/mame/drivers/5clown.c
+++ b/src/mame/drivers/5clown.c
@@ -1064,6 +1064,7 @@ static MACHINE_CONFIG_START( fclown, _5clown_state )
MCFG_SCREEN_SIZE((39+1)*8, (31+1)*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(_5clown_state, screen_update_fclown)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fclown)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/88games.c b/src/mame/drivers/88games.c
index 2480671c2ec..a1c044313b1 100644
--- a/src/mame/drivers/88games.c
+++ b/src/mame/drivers/88games.c
@@ -365,6 +365,7 @@ static MACHINE_CONFIG_START( 88games, _88games_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(_88games_state, screen_update_88games)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2048)
MCFG_PALETTE_ENABLE_SHADOWS()
diff --git a/src/mame/drivers/ace.c b/src/mame/drivers/ace.c
index b7eefe192a4..52040a176e6 100644
--- a/src/mame/drivers/ace.c
+++ b/src/mame/drivers/ace.c
@@ -352,6 +352,7 @@ static MACHINE_CONFIG_START( ace, aceal_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(4*8, 32*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aceal_state, screen_update_ace)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ace)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mame/drivers/acefruit.c b/src/mame/drivers/acefruit.c
index e82a4cdd248..bac7189519b 100644
--- a/src/mame/drivers/acefruit.c
+++ b/src/mame/drivers/acefruit.c
@@ -617,6 +617,7 @@ static MACHINE_CONFIG_START( acefruit, acefruit_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 511, 0, 255)
MCFG_SCREEN_UPDATE_DRIVER(acefruit_state, screen_update_acefruit)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(acefruit_state, acefruit)
diff --git a/src/mame/drivers/acommand.c b/src/mame/drivers/acommand.c
index a4ba86f5ea4..0d114c780d6 100644
--- a/src/mame/drivers/acommand.c
+++ b/src/mame/drivers/acommand.c
@@ -618,6 +618,7 @@ static MACHINE_CONFIG_START( acommand, acommand_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(acommand_state, screen_update_acommand)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", acommand)
MCFG_PALETTE_ADD("palette", 0x4000)
diff --git a/src/mame/drivers/actfancr.c b/src/mame/drivers/actfancr.c
index f4c3c7a5cdf..da6687c8859 100644
--- a/src/mame/drivers/actfancr.c
+++ b/src/mame/drivers/actfancr.c
@@ -324,6 +324,7 @@ static MACHINE_CONFIG_START( actfancr, actfancr_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(actfancr_state, screen_update_actfancr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", actfan)
@@ -379,6 +380,7 @@ static MACHINE_CONFIG_START( triothep, actfancr_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(actfancr_state, screen_update_actfancr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", triothep)
diff --git a/src/mame/drivers/adp.c b/src/mame/drivers/adp.c
index b5e66efe53e..a865043522d 100644
--- a/src/mame/drivers/adp.c
+++ b/src/mame/drivers/adp.c
@@ -644,6 +644,7 @@ static MACHINE_CONFIG_START( quickjac, adp_state )
MCFG_SCREEN_SIZE(384, 280)
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 0, 280-1)
MCFG_SCREEN_UPDATE_DRIVER(adp_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x10)
@@ -680,6 +681,7 @@ static MACHINE_CONFIG_START( skattv, adp_state )
MCFG_SCREEN_SIZE(384, 280)
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 0, 280-1)
MCFG_SCREEN_UPDATE_DRIVER(adp_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x10)
@@ -715,6 +717,7 @@ static MACHINE_CONFIG_START( backgamn, adp_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(adp_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x10)
diff --git a/src/mame/drivers/aeroboto.c b/src/mame/drivers/aeroboto.c
index 8ee6ba0ef4b..3c2eb1ff4cf 100644
--- a/src/mame/drivers/aeroboto.c
+++ b/src/mame/drivers/aeroboto.c
@@ -260,6 +260,7 @@ static MACHINE_CONFIG_START( formatz, aeroboto_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aeroboto_state, screen_update_aeroboto)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", aeroboto)
diff --git a/src/mame/drivers/aerofgt.c b/src/mame/drivers/aerofgt.c
index d2c72800210..b3329fbd37d 100644
--- a/src/mame/drivers/aerofgt.c
+++ b/src/mame/drivers/aerofgt.c
@@ -1325,6 +1325,7 @@ static MACHINE_CONFIG_START( pspikes, aerofgt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8+4, 44*8+4-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_pspikes)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", pspikes)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1368,6 +1369,7 @@ static MACHINE_CONFIG_START( spikes91, aerofgt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 320-1, 0*8+4, 224+4-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_spikes91)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", spikes91)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1401,6 +1403,7 @@ static MACHINE_CONFIG_START( pspikesb, aerofgt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8+4, 44*8+4-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_pspikesb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", pspikesb)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1432,6 +1435,7 @@ static MACHINE_CONFIG_START( pspikesc, aerofgt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8+4, 44*8+4-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_pspikes)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", pspikes)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1474,6 +1478,7 @@ static MACHINE_CONFIG_START( karatblz, aerofgt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(1*8, 45*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_karatblz)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", turbofrc)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1526,6 +1531,7 @@ static MACHINE_CONFIG_START( spinlbrk, aerofgt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(1*8, 45*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_spinlbrk)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", turbofrc)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1579,6 +1585,7 @@ static MACHINE_CONFIG_START( turbofrc, aerofgt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 44*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_turbofrc)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", turbofrc)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1632,6 +1639,7 @@ static MACHINE_CONFIG_START( aerofgtb, aerofgt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8+12, 40*8-1+12, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_turbofrc)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", aerofgtb)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1685,6 +1693,7 @@ static MACHINE_CONFIG_START( aerofgt, aerofgt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_aerofgt)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", aerofgt)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1730,6 +1739,7 @@ static MACHINE_CONFIG_START( aerfboot, aerofgt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8+12, 40*8-1+12, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_aerfboot)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", aerfboot)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1762,6 +1772,7 @@ static MACHINE_CONFIG_START( aerfboo2, aerofgt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8+12, 40*8-1+12, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_aerfboo2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", aerfboo2)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1795,7 +1806,7 @@ static MACHINE_CONFIG_START( wbbc97, aerofgt_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(0*8+14, 44*8-1+4, 0*8, 30*8-1)
- MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_wbbc97)
+ MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_wbbc97)
MCFG_GFXDECODE_ADD("gfxdecode", wbbc97)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/airbustr.c b/src/mame/drivers/airbustr.c
index 3c9ed9bbaf6..44bff962e86 100644
--- a/src/mame/drivers/airbustr.c
+++ b/src/mame/drivers/airbustr.c
@@ -625,6 +625,7 @@ static MACHINE_CONFIG_START( airbustr, airbustr_state )
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(airbustr_state, screen_update_airbustr)
MCFG_SCREEN_VBLANK_DRIVER(airbustr_state, screen_eof_airbustr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", airbustr)
MCFG_PALETTE_ADD("palette", 768)
diff --git a/src/mame/drivers/ajax.c b/src/mame/drivers/ajax.c
index 4a824334dba..1f7f07a8e47 100644
--- a/src/mame/drivers/ajax.c
+++ b/src/mame/drivers/ajax.c
@@ -214,6 +214,7 @@ static MACHINE_CONFIG_START( ajax, ajax_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(ajax_state, screen_update_ajax)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2048)
MCFG_PALETTE_ENABLE_SHADOWS()
diff --git a/src/mame/drivers/albazc.c b/src/mame/drivers/albazc.c
index b609e00f327..15099b7966a 100644
--- a/src/mame/drivers/albazc.c
+++ b/src/mame/drivers/albazc.c
@@ -285,6 +285,7 @@ static MACHINE_CONFIG_START( hanaroku, albazc_state )
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(0, 48*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(albazc_state, screen_update_hanaroku)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", hanaroku)
diff --git a/src/mame/drivers/albazg.c b/src/mame/drivers/albazg.c
index c16a9b53f2b..3d8bef67e43 100644
--- a/src/mame/drivers/albazg.c
+++ b/src/mame/drivers/albazg.c
@@ -399,6 +399,7 @@ static MACHINE_CONFIG_START( yumefuda, albazg_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 0, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(albazg_state, screen_update_yumefuda)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD("crtc", H46505, "screen", MASTER_CLOCK/16, mc6845_intf) /* hand tuned to get ~60 fps */
diff --git a/src/mame/drivers/aliens.c b/src/mame/drivers/aliens.c
index 8e8b6d37913..46745c5c5ce 100644
--- a/src/mame/drivers/aliens.c
+++ b/src/mame/drivers/aliens.c
@@ -232,6 +232,7 @@ static MACHINE_CONFIG_START( aliens, aliens_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(aliens_state, screen_update_aliens)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 512)
MCFG_PALETTE_ENABLE_SHADOWS()
diff --git a/src/mame/drivers/alpha68k.c b/src/mame/drivers/alpha68k.c
index 4c8420bd393..2db517fef31 100644
--- a/src/mame/drivers/alpha68k.c
+++ b/src/mame/drivers/alpha68k.c
@@ -1962,6 +1962,7 @@ static MACHINE_CONFIG_START( sstingry, alpha68k_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_sstingry)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", sstingry)
@@ -2009,6 +2010,7 @@ static MACHINE_CONFIG_START( kyros, alpha68k_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_kyros)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", kyros)
@@ -2055,6 +2057,7 @@ static MACHINE_CONFIG_START( jongbou, alpha68k_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_kyros)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jongbou)
@@ -2090,6 +2093,7 @@ static MACHINE_CONFIG_START( alpha68k_I, alpha68k_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_alpha68k_I)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", paddle)
@@ -2133,6 +2137,7 @@ static MACHINE_CONFIG_START( alpha68k_II, alpha68k_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_alpha68k_II)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", alpha68k_II)
MCFG_PALETTE_ADD("palette", 2048)
@@ -2182,6 +2187,7 @@ static MACHINE_CONFIG_START( alpha68k_II_gm, alpha68k_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_alpha68k_II)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", alpha68k_II)
MCFG_PALETTE_ADD("palette", 2048)
@@ -2225,6 +2231,7 @@ static MACHINE_CONFIG_START( alpha68k_V, alpha68k_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_alpha68k_V)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", alpha68k_V)
MCFG_PALETTE_ADD("palette", 4096)
@@ -2267,6 +2274,7 @@ static MACHINE_CONFIG_START( alpha68k_V_sb, alpha68k_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_alpha68k_V_sb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", alpha68k_V)
MCFG_PALETTE_ADD("palette", 4096)
@@ -2308,6 +2316,7 @@ static MACHINE_CONFIG_START( tnextspc, alpha68k_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_alpha68k_I)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", tnextspc)
diff --git a/src/mame/drivers/amaticmg.c b/src/mame/drivers/amaticmg.c
index 29391be4430..01709f35012 100644
--- a/src/mame/drivers/amaticmg.c
+++ b/src/mame/drivers/amaticmg.c
@@ -881,6 +881,7 @@ static MACHINE_CONFIG_START( amaticmg, amaticmg_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(amaticmg_state, screen_update_amaticmg)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK, mc6845_intf)
diff --git a/src/mame/drivers/ambush.c b/src/mame/drivers/ambush.c
index 17d40bea828..e506e6eb21f 100644
--- a/src/mame/drivers/ambush.c
+++ b/src/mame/drivers/ambush.c
@@ -241,6 +241,7 @@ static MACHINE_CONFIG_START( ambush, ambush_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-3) /* The -3 makes the cocktail mode perfect */
MCFG_SCREEN_UPDATE_DRIVER(ambush_state, screen_update_ambush)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ambush)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/ampoker2.c b/src/mame/drivers/ampoker2.c
index 554007fec7b..c28121c0af1 100644
--- a/src/mame/drivers/ampoker2.c
+++ b/src/mame/drivers/ampoker2.c
@@ -1183,6 +1183,7 @@ static MACHINE_CONFIG_START( ampoker2, ampoker2_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(20*8, 56*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ampoker2_state, screen_update_ampoker2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ampoker2)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/amspdwy.c b/src/mame/drivers/amspdwy.c
index 26a47f5b50f..a5cf339ff61 100644
--- a/src/mame/drivers/amspdwy.c
+++ b/src/mame/drivers/amspdwy.c
@@ -272,6 +272,7 @@ static MACHINE_CONFIG_START( amspdwy, amspdwy_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(amspdwy_state, screen_update_amspdwy)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", amspdwy)
MCFG_PALETTE_ADD("palette", 32)
diff --git a/src/mame/drivers/angelkds.c b/src/mame/drivers/angelkds.c
index d82edfecbf3..57b0087c238 100644
--- a/src/mame/drivers/angelkds.c
+++ b/src/mame/drivers/angelkds.c
@@ -611,6 +611,7 @@ static MACHINE_CONFIG_START( angelkds, angelkds_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(angelkds_state, screen_update_angelkds)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", angelkds)
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/appoooh.c b/src/mame/drivers/appoooh.c
index 2bc46c714e6..52ba282c741 100644
--- a/src/mame/drivers/appoooh.c
+++ b/src/mame/drivers/appoooh.c
@@ -454,6 +454,7 @@ static MACHINE_CONFIG_DERIVED( appoooh, appoooh_common )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(appoooh_state, screen_update_appoooh)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", appoooh)
MCFG_PALETTE_ADD("palette", 32*8+32*8)
@@ -472,6 +473,7 @@ static MACHINE_CONFIG_DERIVED( robowres, appoooh_common )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(appoooh_state, screen_update_robowres)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", robowres)
MCFG_PALETTE_ADD("palette", 32*8+32*8)
diff --git a/src/mame/drivers/aquarium.c b/src/mame/drivers/aquarium.c
index 841d474be20..a61ac47a95d 100644
--- a/src/mame/drivers/aquarium.c
+++ b/src/mame/drivers/aquarium.c
@@ -314,6 +314,7 @@ static MACHINE_CONFIG_START( aquarium, aquarium_state )
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(2*8, 42*8-1, 2*8, 34*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aquarium_state, screen_update_aquarium)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", aquarium)
MCFG_PALETTE_ADD("palette", 0x1000/2)
diff --git a/src/mame/drivers/arabian.c b/src/mame/drivers/arabian.c
index 77362ae8aa6..397d116518d 100644
--- a/src/mame/drivers/arabian.c
+++ b/src/mame/drivers/arabian.c
@@ -370,6 +370,7 @@ static MACHINE_CONFIG_START( arabian, arabian_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 11, 244)
MCFG_SCREEN_UPDATE_DRIVER(arabian_state, screen_update_arabian)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 256*32)
MCFG_PALETTE_INIT_OWNER(arabian_state, arabian)
diff --git a/src/mame/drivers/arcadecl.c b/src/mame/drivers/arcadecl.c
index fbc72904863..d139ff661db 100644
--- a/src/mame/drivers/arcadecl.c
+++ b/src/mame/drivers/arcadecl.c
@@ -338,6 +338,7 @@ static MACHINE_CONFIG_START( arcadecl, arcadecl_state )
/* the board uses an SOS-2 chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/2, 456, 0+12, 336+12, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(arcadecl_state, screen_update_arcadecl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(arcadecl_state,arcadecl)
diff --git a/src/mame/drivers/arcadia.c b/src/mame/drivers/arcadia.c
index 9f3fe3295bf..d52efc0f36d 100644
--- a/src/mame/drivers/arcadia.c
+++ b/src/mame/drivers/arcadia.c
@@ -344,6 +344,7 @@ static MACHINE_CONFIG_START( arcadia, arcadia_amiga_state )
MCFG_SCREEN_SIZE(512*2, 262)
MCFG_SCREEN_VISIBLE_AREA((129-8)*2, (449+8-1)*2, 44-8, 244+8-1)
MCFG_SCREEN_UPDATE_DRIVER(amiga_state, screen_update_amiga)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 4096)
MCFG_PALETTE_INIT_OWNER(arcadia_amiga_state,amiga)
diff --git a/src/mame/drivers/aristmk4.c b/src/mame/drivers/aristmk4.c
index 70d6ecc17ba..a318215bcea 100644
--- a/src/mame/drivers/aristmk4.c
+++ b/src/mame/drivers/aristmk4.c
@@ -1700,6 +1700,7 @@ static MACHINE_CONFIG_START( aristmk4, aristmk4_state )
MCFG_SCREEN_SIZE(320, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 304-1, 0, 216-1) /* from the crtc registers... updated by crtc */
MCFG_SCREEN_UPDATE_DRIVER(aristmk4_state, screen_update_aristmk4)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", aristmk4)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/arkanoid.c b/src/mame/drivers/arkanoid.c
index 539724677e6..5a021a2fd74 100644
--- a/src/mame/drivers/arkanoid.c
+++ b/src/mame/drivers/arkanoid.c
@@ -1218,6 +1218,7 @@ static MACHINE_CONFIG_START( arkanoid, arkanoid_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(arkanoid_state, screen_update_arkanoid)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", arkanoid)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 512)
@@ -1249,6 +1250,7 @@ static MACHINE_CONFIG_START( hexa, arkanoid_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(arkanoid_state, screen_update_hexa)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", hexa)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
@@ -1292,6 +1294,7 @@ static MACHINE_CONFIG_START( brixian, arkanoid_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(arkanoid_state, screen_update_hexa)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", arkanoid)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 512)
diff --git a/src/mame/drivers/armedf.c b/src/mame/drivers/armedf.c
index b462eb01663..6a85df3b915 100644
--- a/src/mame/drivers/armedf.c
+++ b/src/mame/drivers/armedf.c
@@ -1182,6 +1182,7 @@ static MACHINE_CONFIG_START( terraf, armedf_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 1*8, 31*8-1 )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(armedf_state,terraf)
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
@@ -1232,6 +1233,7 @@ static MACHINE_CONFIG_START( terrafjb, armedf_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 1*8, 31*8-1 )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(armedf_state,terraf)
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
@@ -1277,6 +1279,7 @@ static MACHINE_CONFIG_START( kozure, armedf_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 1*8, 31*8-1 ) // 320 x 240, trusted
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(armedf_state,terraf)
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
@@ -1322,6 +1325,7 @@ static MACHINE_CONFIG_START( armedf, armedf_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 1*8, 31*8-1 )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(armedf_state,armedf)
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
@@ -1367,6 +1371,7 @@ static MACHINE_CONFIG_START( cclimbr2, armedf_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(armedf_state,terraf)
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
@@ -1412,6 +1417,7 @@ static MACHINE_CONFIG_START( legion, armedf_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(armedf_state,terraf)
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
@@ -1457,6 +1463,7 @@ static MACHINE_CONFIG_START( legiono, armedf_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(armedf_state,terraf)
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
@@ -1513,6 +1520,7 @@ static MACHINE_CONFIG_START( bigfghtr, bigfghtr_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 1*8, 31*8-1 )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(armedf_state,armedf)
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
diff --git a/src/mame/drivers/ashnojoe.c b/src/mame/drivers/ashnojoe.c
index 454da1fcfbb..b54728b96cd 100644
--- a/src/mame/drivers/ashnojoe.c
+++ b/src/mame/drivers/ashnojoe.c
@@ -355,6 +355,7 @@ static MACHINE_CONFIG_START( ashnojoe, ashnojoe_state )
MCFG_SCREEN_SIZE(512, 512)
MCFG_SCREEN_VISIBLE_AREA(14*8, 50*8-1, 3*8, 29*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ashnojoe_state, screen_update_ashnojoe)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ashnojoe)
MCFG_PALETTE_ADD("palette", 0x1000/2)
diff --git a/src/mame/drivers/asterix.c b/src/mame/drivers/asterix.c
index 9fb1b48ba48..0d1f596b523 100644
--- a/src/mame/drivers/asterix.c
+++ b/src/mame/drivers/asterix.c
@@ -287,6 +287,7 @@ static MACHINE_CONFIG_START( asterix, asterix_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(asterix_state, screen_update_asterix)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2048)
MCFG_PALETTE_ENABLE_SHADOWS()
diff --git a/src/mame/drivers/astrcorp.c b/src/mame/drivers/astrcorp.c
index 378d79a8fbc..b129193831b 100644
--- a/src/mame/drivers/astrcorp.c
+++ b/src/mame/drivers/astrcorp.c
@@ -483,6 +483,7 @@ static MACHINE_CONFIG_START( showhand, astrocorp_state )
MCFG_SCREEN_SIZE(320, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(astrocorp_state, screen_update_astrocorp)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", astrocorp)
MCFG_PALETTE_ADD("palette", 0x100)
@@ -535,6 +536,7 @@ static MACHINE_CONFIG_START( skilldrp, astrocorp_state )
MCFG_SCREEN_SIZE(0x200, 0x100)
MCFG_SCREEN_VISIBLE_AREA(0, 0x200-1, 0, 0xf0-1)
MCFG_SCREEN_UPDATE_DRIVER(astrocorp_state, screen_update_astrocorp)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", astrocorp)
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/astrocde.c b/src/mame/drivers/astrocde.c
index a721ee48a61..0c5c97a171b 100644
--- a/src/mame/drivers/astrocde.c
+++ b/src/mame/drivers/astrocde.c
@@ -1280,6 +1280,7 @@ static MACHINE_CONFIG_START( astrocade_base, astrocde_state )
MCFG_SCREEN_RAW_PARAMS(ASTROCADE_CLOCK, 455, 0, 352, 262, 0, 240)
MCFG_SCREEN_DEFAULT_POSITION(1.1, 0.0, 1.18, -0.018) /* clip out borders */
MCFG_SCREEN_UPDATE_DRIVER(astrocde_state, screen_update_astrocde)
+ MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/asuka.c b/src/mame/drivers/asuka.c
index 382d9a22106..6667d33188d 100644
--- a/src/mame/drivers/asuka.c
+++ b/src/mame/drivers/asuka.c
@@ -889,6 +889,7 @@ static MACHINE_CONFIG_START( bonzeadv, asuka_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 3*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(asuka_state, screen_update_bonzeadv)
MCFG_SCREEN_VBLANK_DRIVER(asuka_state, screen_eof_asuka)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", asuka)
MCFG_PALETTE_ADD("palette", 4096)
@@ -937,6 +938,7 @@ static MACHINE_CONFIG_START( asuka, asuka_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(asuka_state, screen_update_asuka)
MCFG_SCREEN_VBLANK_DRIVER(asuka_state, screen_eof_asuka)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", asuka)
MCFG_PALETTE_ADD("palette", 4096)
@@ -993,6 +995,7 @@ static MACHINE_CONFIG_START( cadash, asuka_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(asuka_state, screen_update_bonzeadv)
MCFG_SCREEN_VBLANK_DRIVER(asuka_state, screen_eof_asuka)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", asuka)
MCFG_PALETTE_ADD("palette", 4096)
@@ -1041,6 +1044,7 @@ static MACHINE_CONFIG_START( mofflott, asuka_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(asuka_state, screen_update_asuka)
MCFG_SCREEN_VBLANK_DRIVER(asuka_state, screen_eof_asuka)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", asuka)
MCFG_PALETTE_ADD("palette", 4096) /* only Mofflott uses full palette space */
@@ -1093,6 +1097,7 @@ static MACHINE_CONFIG_START( galmedes, asuka_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(asuka_state, screen_update_asuka)
MCFG_SCREEN_VBLANK_DRIVER(asuka_state, screen_eof_asuka)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", asuka)
MCFG_PALETTE_ADD("palette", 4096) /* only Mofflott uses full palette space */
@@ -1141,6 +1146,7 @@ static MACHINE_CONFIG_START( eto, asuka_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(asuka_state, screen_update_asuka)
MCFG_SCREEN_VBLANK_DRIVER(asuka_state, screen_eof_asuka)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", asuka)
MCFG_PALETTE_ADD("palette", 4096)
diff --git a/src/mame/drivers/atarifb.c b/src/mame/drivers/atarifb.c
index ba346cee594..04ba4701746 100644
--- a/src/mame/drivers/atarifb.c
+++ b/src/mame/drivers/atarifb.c
@@ -561,6 +561,7 @@ static MACHINE_CONFIG_START( atarifb, atarifb_state )
MCFG_SCREEN_SIZE(38*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 38*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(atarifb_state, screen_update_atarifb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", atarifb)
MCFG_PALETTE_ADD("palette", 12)
diff --git a/src/mame/drivers/atarig1.c b/src/mame/drivers/atarig1.c
index 7cd912aef3d..9eff84805cd 100644
--- a/src/mame/drivers/atarig1.c
+++ b/src/mame/drivers/atarig1.c
@@ -446,6 +446,7 @@ static MACHINE_CONFIG_START( atarig1, atarig1_state )
/* note: these parameters are from published specs, not derived */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(atarig1_state, screen_update_atarig1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(atarig1_state,atarig1)
diff --git a/src/mame/drivers/atarig42.c b/src/mame/drivers/atarig42.c
index 26a2468cb56..dc1e90e901f 100644
--- a/src/mame/drivers/atarig42.c
+++ b/src/mame/drivers/atarig42.c
@@ -556,6 +556,7 @@ static MACHINE_CONFIG_START( atarig42, atarig42_state )
/* the board uses an SOS chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(atarig42_state, screen_update_atarig42)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(atarig42_state,atarig42)
diff --git a/src/mame/drivers/atarigx2.c b/src/mame/drivers/atarigx2.c
index 695969c7c5b..feaff373640 100644
--- a/src/mame/drivers/atarigx2.c
+++ b/src/mame/drivers/atarigx2.c
@@ -1474,6 +1474,7 @@ static MACHINE_CONFIG_START( atarigx2, atarigx2_state )
/* the board uses a pair of GALs to determine H and V parameters */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(atarigx2_state, screen_update_atarigx2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(atarigx2_state,atarigx2)
diff --git a/src/mame/drivers/atarisy1.c b/src/mame/drivers/atarisy1.c
index d8e33833277..68d1247df0b 100644
--- a/src/mame/drivers/atarisy1.c
+++ b/src/mame/drivers/atarisy1.c
@@ -744,6 +744,7 @@ static MACHINE_CONFIG_START( atarisy1, atarisy1_state )
/* video timing comes from an 82S163 (H) and an 82S129 (V) */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(atarisy1_state, screen_update_atarisy1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(atarisy1_state,atarisy1)
diff --git a/src/mame/drivers/atarisy2.c b/src/mame/drivers/atarisy2.c
index 7418519f305..82850c71e28 100644
--- a/src/mame/drivers/atarisy2.c
+++ b/src/mame/drivers/atarisy2.c
@@ -1248,6 +1248,7 @@ static MACHINE_CONFIG_START( atarisy2, atarisy2_state )
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_SCREEN_RAW_PARAMS(VIDEO_CLOCK/2, 640, 0, 512, 416, 0, 384)
MCFG_SCREEN_UPDATE_DRIVER(atarisy2_state, screen_update_atarisy2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(atarisy2_state,atarisy2)
diff --git a/src/mame/drivers/atetris.c b/src/mame/drivers/atetris.c
index b4717176f6a..7fb5026e693 100644
--- a/src/mame/drivers/atetris.c
+++ b/src/mame/drivers/atetris.c
@@ -341,6 +341,7 @@ static MACHINE_CONFIG_START( atetris, atetris_state )
/* the board uses an SOS-2 chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(atetris_state, screen_update_atetris)
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
@@ -375,6 +376,7 @@ static MACHINE_CONFIG_START( atetrisb2, atetris_state )
/* the board uses an SOS-2 chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(atetris_state, screen_update_atetris)
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
diff --git a/src/mame/drivers/atlantis.c b/src/mame/drivers/atlantis.c
index 28adba4d7a0..5f975416f28 100644
--- a/src/mame/drivers/atlantis.c
+++ b/src/mame/drivers/atlantis.c
@@ -152,6 +152,7 @@ static MACHINE_CONFIG_START( mwskins, atlantis_state )
MCFG_SCREEN_SIZE(320, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(atlantis_state, screen_update_mwskins)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BBBBBGGGGGRRRRR("palette")
diff --git a/src/mame/drivers/atronic.c b/src/mame/drivers/atronic.c
index ea389a0a52c..20936031d81 100644
--- a/src/mame/drivers/atronic.c
+++ b/src/mame/drivers/atronic.c
@@ -68,6 +68,7 @@ static MACHINE_CONFIG_START( atronic, atronic_state )
MCFG_SCREEN_UPDATE_DRIVER(atronic_state, screen_update)
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
diff --git a/src/mame/drivers/avt.c b/src/mame/drivers/avt.c
index ce2ee15b023..6a448e52473 100644
--- a/src/mame/drivers/avt.c
+++ b/src/mame/drivers/avt.c
@@ -907,6 +907,7 @@ static MACHINE_CONFIG_START( avt, avt_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1) /* 240x224 (through CRTC) */
MCFG_SCREEN_UPDATE_DRIVER(avt_state, screen_update_avt)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", avt)
diff --git a/src/mame/drivers/backfire.c b/src/mame/drivers/backfire.c
index 094148e8bf4..64506982458 100644
--- a/src/mame/drivers/backfire.c
+++ b/src/mame/drivers/backfire.c
@@ -515,6 +515,7 @@ static MACHINE_CONFIG_START( backfire, backfire_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(backfire_state, screen_update_backfire_left)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("rscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -522,6 +523,7 @@ static MACHINE_CONFIG_START( backfire, backfire_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(backfire_state, screen_update_backfire_right)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DECO16IC_ADD("tilegen1", backfire_deco16ic_tilegen1_intf)
diff --git a/src/mame/drivers/badlands.c b/src/mame/drivers/badlands.c
index 6caf7672ebc..4937f0dcb21 100644
--- a/src/mame/drivers/badlands.c
+++ b/src/mame/drivers/badlands.c
@@ -522,6 +522,7 @@ static MACHINE_CONFIG_START( badlands, badlands_state )
/* the board uses an SOS-2 chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(badlands_state, screen_update_badlands)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(badlands_state,badlands)
@@ -725,6 +726,7 @@ static MACHINE_CONFIG_START( badlandsb, badlands_state )
/* the board uses an SOS-2 chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(badlands_state, screen_update_badlands)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(badlands_state,badlands)
diff --git a/src/mame/drivers/bagman.c b/src/mame/drivers/bagman.c
index 730521320ec..49766344840 100644
--- a/src/mame/drivers/bagman.c
+++ b/src/mame/drivers/bagman.c
@@ -482,6 +482,7 @@ static MACHINE_CONFIG_START( bagman, bagman_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(BAGMAN_HCLK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(bagman_state, screen_update_bagman)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bagman)
MCFG_PALETTE_ADD("palette", 64)
@@ -518,6 +519,7 @@ static MACHINE_CONFIG_START( pickin, bagman_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(BAGMAN_HCLK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(bagman_state, screen_update_bagman)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", pickin)
MCFG_PALETTE_ADD("palette", 64)
@@ -570,6 +572,7 @@ static MACHINE_CONFIG_START( botanic, bagman_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(BAGMAN_HCLK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(bagman_state, screen_update_bagman)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bagman)
MCFG_PALETTE_ADD("palette", 64)
diff --git a/src/mame/drivers/balsente.c b/src/mame/drivers/balsente.c
index b6cace1d9c7..1b342b446c4 100644
--- a/src/mame/drivers/balsente.c
+++ b/src/mame/drivers/balsente.c
@@ -1224,6 +1224,7 @@ static MACHINE_CONFIG_START( balsente, balsente_state )
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_SCREEN_RAW_PARAMS(BALSENTE_PIXEL_CLOCK, BALSENTE_HTOTAL, BALSENTE_HBEND, BALSENTE_HBSTART, BALSENTE_VTOTAL, BALSENTE_VBEND, BALSENTE_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(balsente_state, screen_update_balsente)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/bankp.c b/src/mame/drivers/bankp.c
index 50cdbc245aa..202d796ca9d 100644
--- a/src/mame/drivers/bankp.c
+++ b/src/mame/drivers/bankp.c
@@ -298,6 +298,7 @@ static MACHINE_CONFIG_START( bankp, bankp_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(bankp_state, screen_update_bankp)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bankp)
MCFG_PALETTE_ADD("palette", 32*4+16*8)
diff --git a/src/mame/drivers/baraduke.c b/src/mame/drivers/baraduke.c
index e42839d1f1b..8b183024617 100644
--- a/src/mame/drivers/baraduke.c
+++ b/src/mame/drivers/baraduke.c
@@ -391,6 +391,7 @@ static MACHINE_CONFIG_START( baraduke, baraduke_state )
MCFG_SCREEN_RAW_PARAMS(XTAL_49_152MHz/8, 384, 0, 36*8, 264, 2*8, 30*8)
MCFG_SCREEN_UPDATE_DRIVER(baraduke_state, screen_update_baraduke)
MCFG_SCREEN_VBLANK_DRIVER(baraduke_state, screen_eof_baraduke)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", baraduke)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/bartop52.c b/src/mame/drivers/bartop52.c
index 3bf008a86e6..ccdfdf43c0b 100644
--- a/src/mame/drivers/bartop52.c
+++ b/src/mame/drivers/bartop52.c
@@ -132,6 +132,7 @@ static MACHINE_CONFIG_START( a5200, bartop52_state )
MCFG_SCREEN_REFRESH_RATE(FRAME_RATE_60HZ)
MCFG_SCREEN_SIZE(HWIDTH*8, TOTAL_LINES_60HZ)
MCFG_SCREEN_UPDATE_STATIC(atari)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_LEGACY(atari)
diff --git a/src/mame/drivers/batman.c b/src/mame/drivers/batman.c
index 0a6dc0be35f..b53c3b7865f 100644
--- a/src/mame/drivers/batman.c
+++ b/src/mame/drivers/batman.c
@@ -221,6 +221,7 @@ static MACHINE_CONFIG_START( batman, batman_state )
/* the board uses a VAD chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(batman_state, screen_update_batman)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(batman_state,batman)
diff --git a/src/mame/drivers/battlane.c b/src/mame/drivers/battlane.c
index 570e6a5118b..f40509c6848 100644
--- a/src/mame/drivers/battlane.c
+++ b/src/mame/drivers/battlane.c
@@ -284,6 +284,7 @@ static MACHINE_CONFIG_START( battlane, battlane_state )
MCFG_SCREEN_SIZE(32 * 8, 32 * 8)
MCFG_SCREEN_VISIBLE_AREA(1 * 8, 31 * 8 - 1, 0 * 8, 32 * 8 - 1)
MCFG_SCREEN_UPDATE_DRIVER(battlane_state, screen_update_battlane)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", battlane)
MCFG_PALETTE_ADD("palette", 64)
diff --git a/src/mame/drivers/battlera.c b/src/mame/drivers/battlera.c
index 7153079412d..07a609f4f73 100644
--- a/src/mame/drivers/battlera.c
+++ b/src/mame/drivers/battlera.c
@@ -243,6 +243,7 @@ static MACHINE_CONFIG_START( battlera, battlera_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(battlera_state, screen_update_battlera)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", battlera)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/battlex.c b/src/mame/drivers/battlex.c
index 4e16556f2d1..4f0615d2337 100644
--- a/src/mame/drivers/battlex.c
+++ b/src/mame/drivers/battlex.c
@@ -257,6 +257,7 @@ static MACHINE_CONFIG_START( battlex, battlex_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(battlex_state, screen_update_battlex)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", battlex)
MCFG_PALETTE_ADD("palette", 64)
diff --git a/src/mame/drivers/battlnts.c b/src/mame/drivers/battlnts.c
index 102385e5084..25f4f939e45 100644
--- a/src/mame/drivers/battlnts.c
+++ b/src/mame/drivers/battlnts.c
@@ -249,6 +249,7 @@ static MACHINE_CONFIG_START( battlnts, battlnts_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(battlnts_state, screen_update_battlnts)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", battlnts)
MCFG_PALETTE_ADD("palette", 128)
diff --git a/src/mame/drivers/bbusters.c b/src/mame/drivers/bbusters.c
index 60f0983ea35..5422df95a29 100644
--- a/src/mame/drivers/bbusters.c
+++ b/src/mame/drivers/bbusters.c
@@ -680,6 +680,7 @@ static MACHINE_CONFIG_START( bbusters, bbusters_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bbusters_state, screen_update_bbuster)
MCFG_SCREEN_VBLANK_DRIVER(bbusters_state, screen_eof_bbuster)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bbusters)
MCFG_PALETTE_ADD("palette", 2048)
@@ -719,6 +720,7 @@ static MACHINE_CONFIG_START( mechatt, bbusters_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bbusters_state, screen_update_mechatt)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mechatt)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/beathead.c b/src/mame/drivers/beathead.c
index 76492d8a4fe..d2319b6cb40 100644
--- a/src/mame/drivers/beathead.c
+++ b/src/mame/drivers/beathead.c
@@ -376,6 +376,8 @@ static MACHINE_CONFIG_START( beathead, beathead_state )
MCFG_SCREEN_UPDATE_DRIVER(beathead_state, screen_update)
MCFG_SCREEN_SIZE(42*8, 262)
MCFG_SCREEN_VISIBLE_AREA(0*8, 42*8-1, 0*8, 30*8-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 32768)
/* sound hardware */
diff --git a/src/mame/drivers/beezer.c b/src/mame/drivers/beezer.c
index d79b8f85a05..4fcd0925c34 100644
--- a/src/mame/drivers/beezer.c
+++ b/src/mame/drivers/beezer.c
@@ -98,6 +98,7 @@ static MACHINE_CONFIG_START( beezer, beezer_state )
MCFG_SCREEN_SIZE(384, 256)
MCFG_SCREEN_VISIBLE_AREA(16, 304-1, 0, 240-1) // 288 x 240, correct?
MCFG_SCREEN_UPDATE_DRIVER(beezer_state, screen_update_beezer)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
diff --git a/src/mame/drivers/bestleag.c b/src/mame/drivers/bestleag.c
index bcc84d8d9c7..0526f11bc06 100644
--- a/src/mame/drivers/bestleag.c
+++ b/src/mame/drivers/bestleag.c
@@ -378,6 +378,7 @@ static MACHINE_CONFIG_START( bestleag, bestleag_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bestleag_state, screen_update_bestleag)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bestleag)
MCFG_PALETTE_ADD("palette", 0x800)
diff --git a/src/mame/drivers/big10.c b/src/mame/drivers/big10.c
index d44f6238926..0ba261cdaf7 100644
--- a/src/mame/drivers/big10.c
+++ b/src/mame/drivers/big10.c
@@ -266,7 +266,6 @@ static MACHINE_CONFIG_START( big10, big10_state )
MCFG_SCREEN_UPDATE_DEVICE("v9938", v9938_device, screen_update)
MCFG_SCREEN_SIZE(512 + 32, (212 + 28) * 2)
MCFG_SCREEN_VISIBLE_AREA(0, 512 + 32 - 1, 0, (212 + 28) * 2 - 1)
-
MCFG_SCREEN_PALETTE("v9938:palette")
/* sound hardware */
diff --git a/src/mame/drivers/bigevglf.c b/src/mame/drivers/bigevglf.c
index 2313cb9aab9..4f9a7d4ff5f 100644
--- a/src/mame/drivers/bigevglf.c
+++ b/src/mame/drivers/bigevglf.c
@@ -509,6 +509,7 @@ static MACHINE_CONFIG_START( bigevglf, bigevglf_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bigevglf_state, screen_update_bigevglf)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bigevglf)
MCFG_PALETTE_ADD("palette", 0x800)
diff --git a/src/mame/drivers/bigstrkb.c b/src/mame/drivers/bigstrkb.c
index 0ff6163ab4c..46d23230717 100644
--- a/src/mame/drivers/bigstrkb.c
+++ b/src/mame/drivers/bigstrkb.c
@@ -208,6 +208,7 @@ static MACHINE_CONFIG_START( bigstrkb, bigstrkb_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bigstrkb_state, screen_update_bigstrkb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x400)
MCFG_PALETTE_FORMAT(RRRRGGGGBBBBRGBx)
diff --git a/src/mame/drivers/bingoc.c b/src/mame/drivers/bingoc.c
index ee868bf8dfb..9212a1fac60 100644
--- a/src/mame/drivers/bingoc.c
+++ b/src/mame/drivers/bingoc.c
@@ -167,6 +167,7 @@ static MACHINE_CONFIG_START( bingoc, bingoc_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(bingoc_state, screen_update_bingoc)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/bingoman.c b/src/mame/drivers/bingoman.c
index c160a89342a..3ac8824783f 100644
--- a/src/mame/drivers/bingoman.c
+++ b/src/mame/drivers/bingoman.c
@@ -381,6 +381,7 @@ static MACHINE_CONFIG_START( bingoman, bingoman_state )
MCFG_SCREEN_UPDATE_DRIVER(bingoman_state, screen_update)
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bingoman)
diff --git a/src/mame/drivers/bionicc.c b/src/mame/drivers/bionicc.c
index 9f3dc41fe9b..90a93803898 100644
--- a/src/mame/drivers/bionicc.c
+++ b/src/mame/drivers/bionicc.c
@@ -366,6 +366,7 @@ static MACHINE_CONFIG_START( bionicc, bionicc_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bionicc_state, screen_update_bionicc)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bionicc)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/bking.c b/src/mame/drivers/bking.c
index 61f11efb72a..e47acc3e405 100644
--- a/src/mame/drivers/bking.c
+++ b/src/mame/drivers/bking.c
@@ -479,6 +479,7 @@ static MACHINE_CONFIG_START( bking, bking_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bking_state, screen_update_bking)
MCFG_SCREEN_VBLANK_DRIVER(bking_state, screen_eof_bking)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bking)
MCFG_PALETTE_ADD("palette", 4*8+4*4+4*2+4*2)
diff --git a/src/mame/drivers/blackt96.c b/src/mame/drivers/blackt96.c
index 07e399d3f5e..abdc8c81dd3 100644
--- a/src/mame/drivers/blackt96.c
+++ b/src/mame/drivers/blackt96.c
@@ -613,6 +613,7 @@ static MACHINE_CONFIG_START( blackt96, blackt96_state )
// MCFG_SCREEN_VISIBLE_AREA(0*8, 16*32-1, 0*8, 16*32-1)
MCFG_SCREEN_VISIBLE_AREA(0*8, 256-1, 0*8, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(blackt96_state, screen_update_blackt96)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x800)
MCFG_PALETTE_FORMAT(xxxxRRRRGGGGBBBB)
diff --git a/src/mame/drivers/bladestl.c b/src/mame/drivers/bladestl.c
index 2342df2cc12..b56139f471e 100644
--- a/src/mame/drivers/bladestl.c
+++ b/src/mame/drivers/bladestl.c
@@ -329,6 +329,7 @@ static MACHINE_CONFIG_START( bladestl, bladestl_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bladestl_state, screen_update_bladestl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bladestl)
MCFG_PALETTE_ADD("palette", 32 + 16*16)
diff --git a/src/mame/drivers/blitz.c b/src/mame/drivers/blitz.c
index 4597c496f7f..8e2433b70ce 100644
--- a/src/mame/drivers/blitz.c
+++ b/src/mame/drivers/blitz.c
@@ -785,6 +785,7 @@ static MACHINE_CONFIG_START( megadpkr, blitz_state )
MCFG_SCREEN_SIZE((32)*8, (32)*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(blitz_state, screen_update_megadpkr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD("crtc", MC6845, "screen", CPU_CLOCK, mc6845_intf)
diff --git a/src/mame/drivers/blktiger.c b/src/mame/drivers/blktiger.c
index 54685979731..945aaea0732 100644
--- a/src/mame/drivers/blktiger.c
+++ b/src/mame/drivers/blktiger.c
@@ -327,6 +327,7 @@ static MACHINE_CONFIG_START( blktiger, blktiger_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(blktiger_state, screen_update_blktiger)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", blktiger)
diff --git a/src/mame/drivers/blmbycar.c b/src/mame/drivers/blmbycar.c
index 27d488478c0..b7f4b328c82 100644
--- a/src/mame/drivers/blmbycar.c
+++ b/src/mame/drivers/blmbycar.c
@@ -362,7 +362,8 @@ static MACHINE_CONFIG_START( blmbycar, blmbycar_state )
MCFG_SCREEN_SIZE(0x180, 0x100)
MCFG_SCREEN_VISIBLE_AREA(0, 0x180-1, 0, 0x100-1)
MCFG_SCREEN_UPDATE_DRIVER(blmbycar_state, screen_update_blmbycar)
-
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", blmbycar)
MCFG_PALETTE_ADD("palette", 0x300)
@@ -403,6 +404,7 @@ static MACHINE_CONFIG_START( watrball, blmbycar_state )
MCFG_SCREEN_SIZE(0x180, 0x100)
MCFG_SCREEN_VISIBLE_AREA(0, 0x180-1, 16, 0x100-1)
MCFG_SCREEN_UPDATE_DRIVER(blmbycar_state, screen_update_blmbycar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", blmbycar)
MCFG_PALETTE_ADD("palette", 0x300)
diff --git a/src/mame/drivers/blockade.c b/src/mame/drivers/blockade.c
index 135d1143062..956049673d2 100644
--- a/src/mame/drivers/blockade.c
+++ b/src/mame/drivers/blockade.c
@@ -472,6 +472,7 @@ static MACHINE_CONFIG_START( blockade, blockade_state )
MCFG_SCREEN_SIZE(32*8, 28*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(blockade_state, screen_update_blockade)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", blockade)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mame/drivers/blockhl.c b/src/mame/drivers/blockhl.c
index 75d20d14727..8a6d8dc95cc 100644
--- a/src/mame/drivers/blockhl.c
+++ b/src/mame/drivers/blockhl.c
@@ -219,6 +219,7 @@ static MACHINE_CONFIG_START( blockhl, blockhl_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(blockhl_state, screen_update_blockhl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 1024)
MCFG_PALETTE_ENABLE_SHADOWS()
diff --git a/src/mame/drivers/blockout.c b/src/mame/drivers/blockout.c
index dafe46efb43..77276937ce7 100644
--- a/src/mame/drivers/blockout.c
+++ b/src/mame/drivers/blockout.c
@@ -308,6 +308,7 @@ static MACHINE_CONFIG_START( blockout, blockout_state )
MCFG_SCREEN_SIZE(320, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 319, 8, 247)
MCFG_SCREEN_UPDATE_DRIVER(blockout_state, screen_update_blockout)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 513)
diff --git a/src/mame/drivers/bloodbro.c b/src/mame/drivers/bloodbro.c
index ce0a0c83c6d..4a37e2e6dd1 100644
--- a/src/mame/drivers/bloodbro.c
+++ b/src/mame/drivers/bloodbro.c
@@ -467,6 +467,7 @@ static MACHINE_CONFIG_START( bloodbro, bloodbro_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bloodbro_state, screen_update_bloodbro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEVICE_ADD("crtc", SEIBU_CRTC, 0)
MCFG_SEIBU_CRTC_LAYER_EN_CB(WRITE16(bloodbro_state, layer_en_w))
diff --git a/src/mame/drivers/blstroid.c b/src/mame/drivers/blstroid.c
index ee9224334ac..b7f39911119 100644
--- a/src/mame/drivers/blstroid.c
+++ b/src/mame/drivers/blstroid.c
@@ -197,6 +197,7 @@ static MACHINE_CONFIG_START( blstroid, blstroid_state )
/* the board uses an SOS-2 chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz, 456*2, 0, 320*2, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(blstroid_state, screen_update_blstroid)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(blstroid_state,blstroid)
diff --git a/src/mame/drivers/blueprnt.c b/src/mame/drivers/blueprnt.c
index 09f3c2f62ce..0e50f2b90d1 100644
--- a/src/mame/drivers/blueprnt.c
+++ b/src/mame/drivers/blueprnt.c
@@ -384,6 +384,7 @@ static MACHINE_CONFIG_START( blueprnt, blueprnt_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_VIDEO_START_OVERRIDE(blueprnt_state, blueprnt)
MCFG_SCREEN_UPDATE_DRIVER(blueprnt_state, screen_update_blueprnt)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", blueprnt)
MCFG_PALETTE_ADD("palette", 128*4+8)
diff --git a/src/mame/drivers/bmcbowl.c b/src/mame/drivers/bmcbowl.c
index bad39d1b4e7..5bd7479990e 100644
--- a/src/mame/drivers/bmcbowl.c
+++ b/src/mame/drivers/bmcbowl.c
@@ -482,6 +482,7 @@ static MACHINE_CONFIG_START( bmcbowl, bmcbowl_state )
MCFG_SCREEN_SIZE(35*8, 30*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 35*8-1, 0*8, 29*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bmcbowl_state, screen_update_bmcbowl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/bmcpokr.c b/src/mame/drivers/bmcpokr.c
index 2b42fcde91a..e4dfbbd9e69 100644
--- a/src/mame/drivers/bmcpokr.c
+++ b/src/mame/drivers/bmcpokr.c
@@ -241,6 +241,8 @@ static MACHINE_CONFIG_START( bmcpokr, bmcpokr_state )
MCFG_SCREEN_UPDATE_DRIVER(bmcpokr_state, screen_update_bmcpokr)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 256)
MCFG_GFXDECODE_ADD("gfxdecode", bmcpokr)
diff --git a/src/mame/drivers/bnstars.c b/src/mame/drivers/bnstars.c
index bec9dd7c075..e0efeaa81f9 100644
--- a/src/mame/drivers/bnstars.c
+++ b/src/mame/drivers/bnstars.c
@@ -1345,6 +1345,7 @@ static MACHINE_CONFIG_START( bnstars, bnstars_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bnstars_state, screen_update_bnstars_left)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("rscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -1352,6 +1353,7 @@ static MACHINE_CONFIG_START( bnstars, bnstars_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bnstars_state, screen_update_bnstars_right)
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
diff --git a/src/mame/drivers/bntyhunt.c b/src/mame/drivers/bntyhunt.c
index 7b41d2919cb..d8573e7166c 100644
--- a/src/mame/drivers/bntyhunt.c
+++ b/src/mame/drivers/bntyhunt.c
@@ -58,6 +58,7 @@ static MACHINE_CONFIG_START( bntyhunt, bntyhunt_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/bogeyman.c b/src/mame/drivers/bogeyman.c
index 559cd1932a8..3bfae4fc457 100644
--- a/src/mame/drivers/bogeyman.c
+++ b/src/mame/drivers/bogeyman.c
@@ -248,6 +248,7 @@ static MACHINE_CONFIG_START( bogeyman, bogeyman_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bogeyman_state, screen_update_bogeyman)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bogeyman)
MCFG_PALETTE_ADD("palette", 16+256)
diff --git a/src/mame/drivers/bombjack.c b/src/mame/drivers/bombjack.c
index 6368d5840c5..068956ab6fd 100644
--- a/src/mame/drivers/bombjack.c
+++ b/src/mame/drivers/bombjack.c
@@ -369,6 +369,7 @@ static MACHINE_CONFIG_START( bombjack, bombjack_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bombjack_state, screen_update_bombjack)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bombjack)
MCFG_PALETTE_ADD("palette", 128)
diff --git a/src/mame/drivers/bottom9.c b/src/mame/drivers/bottom9.c
index 1bd13d48d26..4e3f0309b5e 100644
--- a/src/mame/drivers/bottom9.c
+++ b/src/mame/drivers/bottom9.c
@@ -334,6 +334,7 @@ static MACHINE_CONFIG_START( bottom9, bottom9_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(bottom9_state, screen_update_bottom9)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 1024)
MCFG_PALETTE_ENABLE_SHADOWS()
diff --git a/src/mame/drivers/bowltry.c b/src/mame/drivers/bowltry.c
index f2730ed7349..aab0095a92f 100644
--- a/src/mame/drivers/bowltry.c
+++ b/src/mame/drivers/bowltry.c
@@ -66,6 +66,7 @@ static MACHINE_CONFIG_START( bowltry, bowltry_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bowltry_state, screen_update_bowltry)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x200)
diff --git a/src/mame/drivers/boxer.c b/src/mame/drivers/boxer.c
index a502326b587..fdbbdc86304 100644
--- a/src/mame/drivers/boxer.c
+++ b/src/mame/drivers/boxer.c
@@ -485,6 +485,7 @@ static MACHINE_CONFIG_START( boxer, boxer_state )
MCFG_SCREEN_SIZE(256, 262)
MCFG_SCREEN_VISIBLE_AREA(8, 247, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(boxer_state, screen_update_boxer)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", boxer)
MCFG_PALETTE_ADD("palette", 4)
diff --git a/src/mame/drivers/brkthru.c b/src/mame/drivers/brkthru.c
index ed1f633db35..e620cd2b05e 100644
--- a/src/mame/drivers/brkthru.c
+++ b/src/mame/drivers/brkthru.c
@@ -390,7 +390,7 @@ static MACHINE_CONFIG_START( brkthru, brkthru_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/2, 384, 8, 248, 272, 8, 248)
MCFG_SCREEN_UPDATE_DRIVER(brkthru_state, screen_update_brkthru)
-
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
@@ -439,7 +439,7 @@ static MACHINE_CONFIG_START( darwin, brkthru_state )
= 57.444855Hz
tuned by Shingo SUZUKI(VSyncMAME Project) 2000/10/19 */
MCFG_SCREEN_UPDATE_DRIVER(brkthru_state, screen_update_brkthru)
-
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
diff --git a/src/mame/drivers/bsktball.c b/src/mame/drivers/bsktball.c
index 38ba45d77b5..1da2d529de0 100644
--- a/src/mame/drivers/bsktball.c
+++ b/src/mame/drivers/bsktball.c
@@ -255,6 +255,7 @@ static MACHINE_CONFIG_START( bsktball, bsktball_state )
MCFG_SCREEN_SIZE(32*8, 28*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bsktball_state, screen_update_bsktball)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bsktball)
MCFG_PALETTE_ADD("palette", 2*4 + 4*4*4*4)
diff --git a/src/mame/drivers/btime.c b/src/mame/drivers/btime.c
index e9fcea3cfb1..c4f98504284 100644
--- a/src/mame/drivers/btime.c
+++ b/src/mame/drivers/btime.c
@@ -1313,6 +1313,7 @@ static MACHINE_CONFIG_START( btime, btime_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(HCLK, 384, 8, 248, 272, 8, 248)
MCFG_SCREEN_UPDATE_DRIVER(btime_state, screen_update_btime)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MACHINE_START_OVERRIDE(btime_state,btime)
MCFG_MACHINE_RESET_OVERRIDE(btime_state,btime)
diff --git a/src/mame/drivers/bublbobl.c b/src/mame/drivers/bublbobl.c
index 5104267e092..2151bd8f86e 100644
--- a/src/mame/drivers/bublbobl.c
+++ b/src/mame/drivers/bublbobl.c
@@ -769,6 +769,7 @@ static MACHINE_CONFIG_START( tokio, bublbobl_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MAIN_XTAL/4, 384, 0, 256, 264, 16, 240)
MCFG_SCREEN_UPDATE_DRIVER(bublbobl_state, screen_update_bublbobl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bublbobl)
MCFG_PALETTE_ADD("palette", 256)
@@ -851,6 +852,7 @@ static MACHINE_CONFIG_START( bublbobl, bublbobl_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MAIN_XTAL/4, 384, 0, 256, 264, 16, 240)
MCFG_SCREEN_UPDATE_DRIVER(bublbobl_state, screen_update_bublbobl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bublbobl)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/buggychl.c b/src/mame/drivers/buggychl.c
index 3d1ecbdaca5..2a08913044f 100644
--- a/src/mame/drivers/buggychl.c
+++ b/src/mame/drivers/buggychl.c
@@ -407,6 +407,7 @@ static MACHINE_CONFIG_START( buggychl, buggychl_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(buggychl_state, screen_update_buggychl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", buggychl)
MCFG_PALETTE_ADD("palette", 128+128)
diff --git a/src/mame/drivers/buster.c b/src/mame/drivers/buster.c
index 19d36f3fd75..4276124ac47 100644
--- a/src/mame/drivers/buster.c
+++ b/src/mame/drivers/buster.c
@@ -349,6 +349,7 @@ static MACHINE_CONFIG_START( buster, buster_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(buster_state, screen_update_buster)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD("crtc", MC6845, "screen", XTAL_3_579545MHz/4, mc6845_intf) //unknown clock / type
MCFG_GFXDECODE_ADD("gfxdecode", buster)
diff --git a/src/mame/drivers/bwing.c b/src/mame/drivers/bwing.c
index 28aefb26dea..673a98f26b2 100644
--- a/src/mame/drivers/bwing.c
+++ b/src/mame/drivers/bwing.c
@@ -377,6 +377,7 @@ static MACHINE_CONFIG_START( bwing, bwing_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bwing_state, screen_update_bwing)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bwing)
MCFG_PALETTE_ADD("palette", 64)
diff --git a/src/mame/drivers/cabal.c b/src/mame/drivers/cabal.c
index 491010055be..8177ef709c6 100644
--- a/src/mame/drivers/cabal.c
+++ b/src/mame/drivers/cabal.c
@@ -485,8 +485,9 @@ static MACHINE_CONFIG_START( cabal, cabal_state )
MCFG_SCREEN_REFRESH_RATE(59.60) /* verified on pcb */
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(256, 256)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+ MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cabal_state, screen_update_cabal)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cabal)
MCFG_PALETTE_ADD("palette", 1024)
@@ -544,6 +545,7 @@ static MACHINE_CONFIG_START( cabalbl, cabal_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cabal_state, screen_update_cabal)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cabal)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/cabaret.c b/src/mame/drivers/cabaret.c
index dfebe7b14db..40adc909ee4 100644
--- a/src/mame/drivers/cabaret.c
+++ b/src/mame/drivers/cabaret.c
@@ -352,6 +352,7 @@ static MACHINE_CONFIG_START( cabaret, cabaret_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(cabaret_state, screen_update_cabaret)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cabaret)
MCFG_PALETTE_ADD("palette", 0x800)
diff --git a/src/mame/drivers/calomega.c b/src/mame/drivers/calomega.c
index d978d003a9b..33830c5d300 100644
--- a/src/mame/drivers/calomega.c
+++ b/src/mame/drivers/calomega.c
@@ -2647,6 +2647,7 @@ static MACHINE_CONFIG_START( sys903, calomega_state )
MCFG_SCREEN_SIZE((39+1)*8, (31+1)*8) /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1) */
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 31*8-1) /* Taken from MC6845 init, registers 01 & 06 */
MCFG_SCREEN_UPDATE_DRIVER(calomega_state, screen_update_calomega)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", calomega)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/calorie.c b/src/mame/drivers/calorie.c
index e9499d86ffe..7d6f9a9cfd9 100644
--- a/src/mame/drivers/calorie.c
+++ b/src/mame/drivers/calorie.c
@@ -460,6 +460,7 @@ static MACHINE_CONFIG_START( calorie, calorie_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(calorie_state, screen_update_calorie)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", calorie)
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/canyon.c b/src/mame/drivers/canyon.c
index 877b8fedd28..4acef8cad73 100644
--- a/src/mame/drivers/canyon.c
+++ b/src/mame/drivers/canyon.c
@@ -249,6 +249,7 @@ static MACHINE_CONFIG_START( canyon, canyon_state )
MCFG_SCREEN_SIZE(256, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(canyon_state, screen_update_canyon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", canyon)
MCFG_PALETTE_ADD("palette", 4)
diff --git a/src/mame/drivers/cardline.c b/src/mame/drivers/cardline.c
index f974db10da7..967da36895b 100644
--- a/src/mame/drivers/cardline.c
+++ b/src/mame/drivers/cardline.c
@@ -233,6 +233,7 @@ static MACHINE_CONFIG_START( cardline, cardline_state )
MCFG_SCREEN_SIZE(64*8, 35*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cardline_state, screen_update_cardline)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cardline)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/carjmbre.c b/src/mame/drivers/carjmbre.c
index 509cd17276c..be8f802b9d3 100644
--- a/src/mame/drivers/carjmbre.c
+++ b/src/mame/drivers/carjmbre.c
@@ -214,6 +214,7 @@ static MACHINE_CONFIG_START( carjmbre, carjmbre_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(carjmbre_state, screen_update_carjmbre)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", carjmbre)
MCFG_PALETTE_ADD("palette", 64)
diff --git a/src/mame/drivers/carpolo.c b/src/mame/drivers/carpolo.c
index 970c5fd71ce..e7a8b9f64b5 100644
--- a/src/mame/drivers/carpolo.c
+++ b/src/mame/drivers/carpolo.c
@@ -291,6 +291,7 @@ static MACHINE_CONFIG_START( carpolo, carpolo_state )
MCFG_SCREEN_VISIBLE_AREA(0, 239, 0, 255)
MCFG_SCREEN_UPDATE_DRIVER(carpolo_state, screen_update_carpolo)
MCFG_SCREEN_VBLANK_DRIVER(carpolo_state, screen_eof_carpolo)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", carpolo)
MCFG_PALETTE_ADD("palette", 12*2+2*16+4*2)
diff --git a/src/mame/drivers/carrera.c b/src/mame/drivers/carrera.c
index 63e5e1fb87a..e8eafdae401 100644
--- a/src/mame/drivers/carrera.c
+++ b/src/mame/drivers/carrera.c
@@ -345,6 +345,7 @@ static MACHINE_CONFIG_START( carrera, carrera_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(carrera_state, screen_update_carrera)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD("crtc", MC6845, "screen", MASTER_CLOCK / 16, mc6845_intf)
diff --git a/src/mame/drivers/caswin.c b/src/mame/drivers/caswin.c
index e56a9ebaf64..aa1d4d7ffda 100644
--- a/src/mame/drivers/caswin.c
+++ b/src/mame/drivers/caswin.c
@@ -341,6 +341,7 @@ static MACHINE_CONFIG_START( vvillage, caswin_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(caswin_state, screen_update_vvillage)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_NVRAM_ADD_0FILL("nvram")
diff --git a/src/mame/drivers/cavepc.c b/src/mame/drivers/cavepc.c
index 9570bf4f9a0..d47e21c302b 100644
--- a/src/mame/drivers/cavepc.c
+++ b/src/mame/drivers/cavepc.c
@@ -117,6 +117,7 @@ static MACHINE_CONFIG_START( cavepc, cavepc_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 199)
MCFG_SCREEN_UPDATE_DRIVER(cavepc_state, screen_update_cavepc)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cball.c b/src/mame/drivers/cball.c
index 4f09d6fa0f0..349caf7b94b 100644
--- a/src/mame/drivers/cball.c
+++ b/src/mame/drivers/cball.c
@@ -264,6 +264,7 @@ static MACHINE_CONFIG_START( cball, cball_state )
MCFG_SCREEN_SIZE(256, 262)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 0, 223)
MCFG_SCREEN_UPDATE_DRIVER(cball_state, screen_update_cball)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cball)
MCFG_PALETTE_ADD("palette", 6)
diff --git a/src/mame/drivers/cbasebal.c b/src/mame/drivers/cbasebal.c
index 3d194b5d48c..765fe663627 100644
--- a/src/mame/drivers/cbasebal.c
+++ b/src/mame/drivers/cbasebal.c
@@ -268,6 +268,7 @@ static MACHINE_CONFIG_START( cbasebal, cbasebal_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(cbasebal_state, screen_update_cbasebal)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cbasebal)
diff --git a/src/mame/drivers/ccastles.c b/src/mame/drivers/ccastles.c
index 682d8f87219..68a7564a4fb 100644
--- a/src/mame/drivers/ccastles.c
+++ b/src/mame/drivers/ccastles.c
@@ -481,7 +481,7 @@ static MACHINE_CONFIG_START( ccastles, ccastles_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, 0, HTOTAL - 1, VTOTAL, 0, VTOTAL - 1) /* will be adjusted later */
MCFG_SCREEN_UPDATE_DRIVER(ccastles_state, screen_update_ccastles)
-
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
diff --git a/src/mame/drivers/cchance.c b/src/mame/drivers/cchance.c
index 4d9ba651c11..9c8334fc1a3 100644
--- a/src/mame/drivers/cchance.c
+++ b/src/mame/drivers/cchance.c
@@ -232,6 +232,7 @@ static MACHINE_CONFIG_START( cchance, cchance_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cchance_state, screen_update_tnzs)
MCFG_SCREEN_VBLANK_DRIVER(cchance_state, screen_eof_tnzs)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 512)
MCFG_PALETTE_INIT_OWNER(cchance_state,arknoid2)
diff --git a/src/mame/drivers/cclimber.c b/src/mame/drivers/cclimber.c
index 30221bc232f..787156b1d4c 100644
--- a/src/mame/drivers/cclimber.c
+++ b/src/mame/drivers/cclimber.c
@@ -994,6 +994,7 @@ static MACHINE_CONFIG_START( root, cclimber_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cclimber_state, screen_update_cclimber)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cclimber)
MCFG_PALETTE_ADD("palette", 16*4+8*4)
@@ -1094,6 +1095,7 @@ static MACHINE_CONFIG_START( swimmer, cclimber_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cclimber_state, screen_update_swimmer)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", swimmer)
MCFG_PALETTE_ADD("palette", 32*8+4*8+1)
diff --git a/src/mame/drivers/centiped.c b/src/mame/drivers/centiped.c
index 6d7db7393f8..82f13bb1816 100644
--- a/src/mame/drivers/centiped.c
+++ b/src/mame/drivers/centiped.c
@@ -1750,6 +1750,7 @@ static MACHINE_CONFIG_START( centiped_base, centiped_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(centiped_state, screen_update_centiped)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", centiped)
MCFG_PALETTE_ADD("palette", 4+4*4*4*4)
@@ -1902,6 +1903,7 @@ static MACHINE_CONFIG_START( bullsdrt, centiped_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(centiped_state, screen_update_bullsdrt)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", centiped)
MCFG_PALETTE_ADD("palette", 4+4*4*4*4)
diff --git a/src/mame/drivers/chaknpop.c b/src/mame/drivers/chaknpop.c
index 261789f98db..dd3df6b5a08 100644
--- a/src/mame/drivers/chaknpop.c
+++ b/src/mame/drivers/chaknpop.c
@@ -384,6 +384,7 @@ static MACHINE_CONFIG_START( chaknpop, chaknpop_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(chaknpop_state, screen_update_chaknpop)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", chaknpop)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/cham24.c b/src/mame/drivers/cham24.c
index b4fa8e2dcb2..b45e53313ef 100644
--- a/src/mame/drivers/cham24.c
+++ b/src/mame/drivers/cham24.c
@@ -356,6 +356,7 @@ static MACHINE_CONFIG_START( cham24, cham24_state )
MCFG_SCREEN_SIZE(32*8, 262)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cham24_state, screen_update_cham24)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cham24)
MCFG_PALETTE_ADD("palette", 8*4*16)
diff --git a/src/mame/drivers/champbas.c b/src/mame/drivers/champbas.c
index 607fdf1abc5..472b38761c2 100644
--- a/src/mame/drivers/champbas.c
+++ b/src/mame/drivers/champbas.c
@@ -619,6 +619,7 @@ static MACHINE_CONFIG_START( talbot, champbas_state )
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(champbas_state, screen_update_champbas)
MCFG_SCREEN_VBLANK_DRIVER(champbas_state, screen_eof_champbas)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", talbot)
MCFG_PALETTE_ADD("palette", 512)
@@ -654,6 +655,7 @@ static MACHINE_CONFIG_START( champbas, champbas_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(champbas_state, screen_update_champbas)
MCFG_SCREEN_VBLANK_DRIVER(champbas_state, screen_eof_champbas)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", champbas)
MCFG_PALETTE_ADD("palette", 512)
@@ -711,6 +713,7 @@ static MACHINE_CONFIG_START( exctsccr, champbas_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(champbas_state, screen_update_exctsccr)
MCFG_SCREEN_VBLANK_DRIVER(champbas_state, screen_eof_champbas)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", exctsccr)
MCFG_PALETTE_ADD("palette", 512)
@@ -762,6 +765,7 @@ static MACHINE_CONFIG_START( exctsccrb, champbas_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(champbas_state, screen_update_exctsccr)
MCFG_SCREEN_VBLANK_DRIVER(champbas_state, screen_eof_champbas)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", exctsccr)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/champbwl.c b/src/mame/drivers/champbwl.c
index 123115023af..c534f5ba323 100644
--- a/src/mame/drivers/champbwl.c
+++ b/src/mame/drivers/champbwl.c
@@ -497,6 +497,7 @@ static MACHINE_CONFIG_START( champbwl, champbwl_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(champbwl_state, screen_update_champbwl)
MCFG_SCREEN_VBLANK_DRIVER(champbwl_state, screen_eof_champbwl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", champbwl)
MCFG_PALETTE_ADD("palette", 512)
@@ -562,6 +563,7 @@ static MACHINE_CONFIG_START( doraemon, champbwl_state )
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(champbwl_state, screen_update_doraemon)
MCFG_SCREEN_VBLANK_DRIVER(champbwl_state, screen_eof_doraemon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", champbwl)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/chanbara.c b/src/mame/drivers/chanbara.c
index bb3fbf7808c..6860709b4ce 100644
--- a/src/mame/drivers/chanbara.c
+++ b/src/mame/drivers/chanbara.c
@@ -410,6 +410,7 @@ static MACHINE_CONFIG_START( chanbara, chanbara_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(chanbara_state, screen_update_chanbara)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", chanbara)
diff --git a/src/mame/drivers/chance32.c b/src/mame/drivers/chance32.c
index 84cb7c73f43..315d609fe7b 100644
--- a/src/mame/drivers/chance32.c
+++ b/src/mame/drivers/chance32.c
@@ -473,6 +473,7 @@ static MACHINE_CONFIG_START( chance32, chance32_state )
MCFG_SCREEN_SIZE(40*16, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 35*16-1, 0, 29*8-1)
MCFG_SCREEN_UPDATE_DRIVER(chance32_state, screen_update_chance32)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD("crtc", H46505, "screen", 12000000/16, mc6845_intf) /* 52.786 Hz (similar to Major Poker) */
diff --git a/src/mame/drivers/changela.c b/src/mame/drivers/changela.c
index b7ad7db4d56..93fd517588b 100644
--- a/src/mame/drivers/changela.c
+++ b/src/mame/drivers/changela.c
@@ -509,6 +509,7 @@ static MACHINE_CONFIG_START( changela, changela_state )
MCFG_SCREEN_SIZE(32*8, 262) /* vert size is a guess */
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(changela_state, screen_update_changela)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x40)
diff --git a/src/mame/drivers/cheekyms.c b/src/mame/drivers/cheekyms.c
index 08a43596148..899d3955e86 100644
--- a/src/mame/drivers/cheekyms.c
+++ b/src/mame/drivers/cheekyms.c
@@ -134,6 +134,7 @@ static MACHINE_CONFIG_START( cheekyms, cheekyms_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cheekyms_state, screen_update_cheekyms)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cheekyms)
MCFG_PALETTE_ADD("palette", 0xc0)
diff --git a/src/mame/drivers/chinagat.c b/src/mame/drivers/chinagat.c
index 01384bc8859..c328b848580 100644
--- a/src/mame/drivers/chinagat.c
+++ b/src/mame/drivers/chinagat.c
@@ -586,6 +586,7 @@ static MACHINE_CONFIG_START( chinagat, chinagat_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 384, 0, 256, 272, 0, 240) /* based on ddragon driver */
MCFG_SCREEN_UPDATE_DRIVER(chinagat_state, screen_update_ddragon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", chinagat)
MCFG_PALETTE_ADD("palette", 384)
@@ -631,6 +632,7 @@ static MACHINE_CONFIG_START( saiyugoub1, chinagat_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 384, 0, 256, 272, 0, 240) /* based on ddragon driver */
MCFG_SCREEN_UPDATE_DRIVER(chinagat_state, screen_update_ddragon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", chinagat)
MCFG_PALETTE_ADD("palette", 384)
@@ -673,6 +675,7 @@ static MACHINE_CONFIG_START( saiyugoub2, chinagat_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 384, 0, 256, 272, 0, 240) /* based on ddragon driver */
MCFG_SCREEN_UPDATE_DRIVER(chinagat_state, screen_update_ddragon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", chinagat)
MCFG_PALETTE_ADD("palette", 384)
diff --git a/src/mame/drivers/chinsan.c b/src/mame/drivers/chinsan.c
index c2863809c3b..1b53540d456 100644
--- a/src/mame/drivers/chinsan.c
+++ b/src/mame/drivers/chinsan.c
@@ -613,6 +613,7 @@ static MACHINE_CONFIG_START( chinsan, chinsan_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_VISIBLE_AREA(24, 512-24-1, 16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(chinsan_state, screen_update_chinsan)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", chinsan)
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/chqflag.c b/src/mame/drivers/chqflag.c
index 11cd3613dbb..a338c6b5745 100644
--- a/src/mame/drivers/chqflag.c
+++ b/src/mame/drivers/chqflag.c
@@ -339,6 +339,7 @@ static MACHINE_CONFIG_START( chqflag, chqflag_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(12*8, (64-14)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(chqflag_state, screen_update_chqflag)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 1024)
MCFG_PALETTE_ENABLE_SHADOWS()
diff --git a/src/mame/drivers/chsuper.c b/src/mame/drivers/chsuper.c
index d51c3e7bc2b..f856f4be7a5 100644
--- a/src/mame/drivers/chsuper.c
+++ b/src/mame/drivers/chsuper.c
@@ -215,6 +215,7 @@ static MACHINE_CONFIG_START( chsuper, chsuper_state )
MCFG_SCREEN_UPDATE_DRIVER(chsuper_state, screen_update)
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 0, 30*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_NVRAM_ADD_0FILL("nvram")
diff --git a/src/mame/drivers/circus.c b/src/mame/drivers/circus.c
index 8bed9ebbc3a..9b93a16fe18 100644
--- a/src/mame/drivers/circus.c
+++ b/src/mame/drivers/circus.c
@@ -291,6 +291,7 @@ static MACHINE_CONFIG_START( circus, circus_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(circus_state, screen_update_circus)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", circus)
@@ -323,6 +324,7 @@ static MACHINE_CONFIG_START( robotbwl, circus_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(circus_state, screen_update_robotbwl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", robotbwl)
@@ -362,6 +364,7 @@ static MACHINE_CONFIG_START( crash, circus_state )
MCFG_SCREEN_SIZE(40*8, 40*8) //TODO
MCFG_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(circus_state, screen_update_crash)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", circus)
@@ -393,6 +396,7 @@ static MACHINE_CONFIG_START( ripcord, circus_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(circus_state, screen_update_ripcord)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", circus)
diff --git a/src/mame/drivers/circusc.c b/src/mame/drivers/circusc.c
index 59f2327acf9..3d0564036f5 100644
--- a/src/mame/drivers/circusc.c
+++ b/src/mame/drivers/circusc.c
@@ -346,6 +346,7 @@ static MACHINE_CONFIG_START( circusc, circusc_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(circusc_state, screen_update_circusc)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", circusc)
MCFG_PALETTE_ADD("palette", 16*16+16*16)
diff --git a/src/mame/drivers/cischeat.c b/src/mame/drivers/cischeat.c
index 7e9dd58a99e..57217383ea0 100644
--- a/src/mame/drivers/cischeat.c
+++ b/src/mame/drivers/cischeat.c
@@ -1500,6 +1500,7 @@ static MACHINE_CONFIG_START( bigrun, cischeat_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(cischeat_state, screen_update_bigrun)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bigrun)
MCFG_PALETTE_ADD("palette", 0x4000/2)
@@ -1640,6 +1641,7 @@ static MACHINE_CONFIG_START( scudhamm, cischeat_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0 +16, 256-1 -16)
MCFG_SCREEN_UPDATE_DRIVER(cischeat_state, screen_update_scudhamm)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", scudhamm)
MCFG_PALETTE_ADD("palette", 0x8000/2)
diff --git a/src/mame/drivers/citycon.c b/src/mame/drivers/citycon.c
index a7250f36083..c3e44cf76e6 100644
--- a/src/mame/drivers/citycon.c
+++ b/src/mame/drivers/citycon.c
@@ -213,6 +213,7 @@ static MACHINE_CONFIG_START( citycon, citycon_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(citycon_state, screen_update_citycon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", citycon)
MCFG_PALETTE_ADD_INIT_BLACK("palette", 640+1024) /* 640 real palette + 1024 virtual palette */
diff --git a/src/mame/drivers/cloak.c b/src/mame/drivers/cloak.c
index b0443ddcf00..9d0353ceb7b 100644
--- a/src/mame/drivers/cloak.c
+++ b/src/mame/drivers/cloak.c
@@ -350,6 +350,7 @@ static MACHINE_CONFIG_START( cloak, cloak_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 3*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cloak_state, screen_update_cloak)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cloak)
MCFG_PALETTE_ADD("palette", 64)
diff --git a/src/mame/drivers/cloud9.c b/src/mame/drivers/cloud9.c
index 74702fcb6e4..8e26212bd3d 100644
--- a/src/mame/drivers/cloud9.c
+++ b/src/mame/drivers/cloud9.c
@@ -434,7 +434,7 @@ static MACHINE_CONFIG_START( cloud9, cloud9_state )
MCFG_SCREEN_VBLANK_TIME(0) /* VBLANK is handled manually */
MCFG_SCREEN_VISIBLE_AREA(0, 255, 0, 231)
MCFG_SCREEN_UPDATE_DRIVER(cloud9_state, screen_update_cloud9)
-
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
diff --git a/src/mame/drivers/clshroad.c b/src/mame/drivers/clshroad.c
index b9aa98083f9..8ed84fbf078 100644
--- a/src/mame/drivers/clshroad.c
+++ b/src/mame/drivers/clshroad.c
@@ -245,6 +245,7 @@ static MACHINE_CONFIG_START( firebatl, clshroad_state )
MCFG_SCREEN_SIZE(0x120, 0x100)
MCFG_SCREEN_VISIBLE_AREA(0, 0x120-1, 0x0+16, 0x100-16-1)
MCFG_SCREEN_UPDATE_DRIVER(clshroad_state, screen_update_clshroad)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", firebatl)
MCFG_PALETTE_ADD("palette", 512+64*4)
@@ -279,6 +280,7 @@ static MACHINE_CONFIG_START( clshroad, clshroad_state )
MCFG_SCREEN_SIZE(0x120, 0x100)
MCFG_SCREEN_VISIBLE_AREA(0, 0x120-1, 0x0+16, 0x100-16-1)
MCFG_SCREEN_UPDATE_DRIVER(clshroad_state, screen_update_clshroad)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", clshroad)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/cmmb.c b/src/mame/drivers/cmmb.c
index d3358af85e6..c33640aa126 100644
--- a/src/mame/drivers/cmmb.c
+++ b/src/mame/drivers/cmmb.c
@@ -335,6 +335,7 @@ static MACHINE_CONFIG_START( cmmb, cmmb_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cmmb_state, screen_update_cmmb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cmmb)
diff --git a/src/mame/drivers/cninja.c b/src/mame/drivers/cninja.c
index e731d16a06f..6e8b77f0352 100644
--- a/src/mame/drivers/cninja.c
+++ b/src/mame/drivers/cninja.c
@@ -947,6 +947,7 @@ static MACHINE_CONFIG_START( cninja, cninja_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cninja_state, screen_update_cninja)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cninja)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1012,6 +1013,7 @@ static MACHINE_CONFIG_START( stoneage, cninja_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cninja_state, screen_update_cninja)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cninja)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1076,6 +1078,7 @@ static MACHINE_CONFIG_START( cninjabl, cninja_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cninja_state, screen_update_cninjabl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cninjabl)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1125,6 +1128,7 @@ static MACHINE_CONFIG_START( edrandy, cninja_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cninja_state, screen_update_edrandy)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cninja)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1189,6 +1193,7 @@ static MACHINE_CONFIG_START( robocop2, cninja_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cninja_state, screen_update_robocop2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", robocop2)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/cntsteer.c b/src/mame/drivers/cntsteer.c
index 36d69d95b6a..05737d9f6ae 100644
--- a/src/mame/drivers/cntsteer.c
+++ b/src/mame/drivers/cntsteer.c
@@ -903,6 +903,7 @@ static MACHINE_CONFIG_START( cntsteer, cntsteer_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cntsteer_state, screen_update_cntsteer)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
@@ -952,6 +953,7 @@ static MACHINE_CONFIG_START( zerotrgt, cntsteer_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cntsteer_state, screen_update_zerotrgt)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", zerotrgt)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/coinmstr.c b/src/mame/drivers/coinmstr.c
index 96f5a65f72b..0fc7dd834d0 100644
--- a/src/mame/drivers/coinmstr.c
+++ b/src/mame/drivers/coinmstr.c
@@ -1169,6 +1169,7 @@ static MACHINE_CONFIG_START( coinmstr, coinmstr_state )
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 46*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(coinmstr_state, screen_update_coinmstr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", coinmstr)
MCFG_PALETTE_ADD("palette", 46*32*4)
diff --git a/src/mame/drivers/coinmvga.c b/src/mame/drivers/coinmvga.c
index be9ffa0cdb5..f883cd63fa1 100644
--- a/src/mame/drivers/coinmvga.c
+++ b/src/mame/drivers/coinmvga.c
@@ -687,6 +687,7 @@ static MACHINE_CONFIG_START( coinmvga, coinmvga_state )
MCFG_SCREEN_SIZE(640,480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(coinmvga_state, screen_update_coinmvga)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", coinmvga)
diff --git a/src/mame/drivers/combatsc.c b/src/mame/drivers/combatsc.c
index 6d53685226a..a3be55dcc3a 100644
--- a/src/mame/drivers/combatsc.c
+++ b/src/mame/drivers/combatsc.c
@@ -729,6 +729,7 @@ static MACHINE_CONFIG_START( combatsc, combatsc_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(combatsc_state, screen_update_combatsc)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", combatsc)
MCFG_PALETTE_ADD("palette", 8*16*16)
@@ -782,6 +783,7 @@ static MACHINE_CONFIG_START( combatscb, combatsc_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(combatsc_state, screen_update_combatscb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", combatscb)
MCFG_PALETTE_ADD("palette", 8*16*16)
diff --git a/src/mame/drivers/comebaby.c b/src/mame/drivers/comebaby.c
index 94fb1e58386..344fe155cf6 100644
--- a/src/mame/drivers/comebaby.c
+++ b/src/mame/drivers/comebaby.c
@@ -113,6 +113,7 @@ static MACHINE_CONFIG_START( comebaby, comebaby_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/commando.c b/src/mame/drivers/commando.c
index c14e6f89154..8d841f42c87 100644
--- a/src/mame/drivers/commando.c
+++ b/src/mame/drivers/commando.c
@@ -258,6 +258,7 @@ static MACHINE_CONFIG_START( commando, commando_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(commando_state, screen_update_commando)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", commando)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
diff --git a/src/mame/drivers/compgolf.c b/src/mame/drivers/compgolf.c
index 63c2743a9ed..2bd7e53b950 100644
--- a/src/mame/drivers/compgolf.c
+++ b/src/mame/drivers/compgolf.c
@@ -254,6 +254,7 @@ static MACHINE_CONFIG_START( compgolf, compgolf_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(1*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(compgolf_state, screen_update_compgolf)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
MCFG_PALETTE_INIT_OWNER(compgolf_state, compgolf)
diff --git a/src/mame/drivers/contra.c b/src/mame/drivers/contra.c
index 01bbaa6120e..8cc0abd818c 100644
--- a/src/mame/drivers/contra.c
+++ b/src/mame/drivers/contra.c
@@ -201,6 +201,7 @@ static MACHINE_CONFIG_START( contra, contra_state )
MCFG_SCREEN_SIZE(37*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 35*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(contra_state, screen_update_contra)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", contra)
MCFG_PALETTE_ADD("palette", 2*8*16*16)
diff --git a/src/mame/drivers/coolridr.c b/src/mame/drivers/coolridr.c
index ccddd292b52..0de7bfc88af 100644
--- a/src/mame/drivers/coolridr.c
+++ b/src/mame/drivers/coolridr.c
@@ -3612,12 +3612,14 @@ static MACHINE_CONFIG_START( coolridr, coolridr_state )
MCFG_SCREEN_SIZE(640, 512)
MCFG_SCREEN_VISIBLE_AREA(CLIPMINX_FULL,CLIPMAXX_FULL, CLIPMINY_FULL, CLIPMAXY_FULL)
MCFG_SCREEN_UPDATE_DRIVER(coolridr_state, screen_update_coolridr1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("screen2", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_SIZE(640, 512)
MCFG_SCREEN_VISIBLE_AREA(CLIPMINX_FULL,CLIPMAXX_FULL, CLIPMINY_FULL, CLIPMAXY_FULL)
MCFG_SCREEN_UPDATE_DRIVER(coolridr_state, screen_update_coolridr2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_RRRRRGGGGGBBBBB("palette")
diff --git a/src/mame/drivers/cop01.c b/src/mame/drivers/cop01.c
index a9832bc5866..ac733ed2b2c 100644
--- a/src/mame/drivers/cop01.c
+++ b/src/mame/drivers/cop01.c
@@ -461,6 +461,7 @@ static MACHINE_CONFIG_START( cop01, cop01_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cop01_state, screen_update_cop01)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cop01)
MCFG_PALETTE_ADD("palette", 16+8*16+16*16)
@@ -500,6 +501,7 @@ static MACHINE_CONFIG_START( mightguy, cop01_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cop01_state, screen_update_cop01)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cop01)
MCFG_PALETTE_ADD("palette", 16+8*16+16*16)
diff --git a/src/mame/drivers/cops.c b/src/mame/drivers/cops.c
index ca9c665a69c..e3ad207af97 100644
--- a/src/mame/drivers/cops.c
+++ b/src/mame/drivers/cops.c
@@ -600,6 +600,7 @@ static MACHINE_CONFIG_START( cops, cops_state )
MCFG_SCREEN_UPDATE_DRIVER(cops_state, screen_update)
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(cops_state,cops)
diff --git a/src/mame/drivers/copsnrob.c b/src/mame/drivers/copsnrob.c
index 54447caacfe..d588908125a 100644
--- a/src/mame/drivers/copsnrob.c
+++ b/src/mame/drivers/copsnrob.c
@@ -255,6 +255,7 @@ static MACHINE_CONFIG_START( copsnrob, copsnrob_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 26*8-1)
MCFG_SCREEN_UPDATE_DRIVER(copsnrob_state, screen_update_copsnrob)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", copsnrob)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mame/drivers/corona.c b/src/mame/drivers/corona.c
index 31ec8eaae30..cfbafe535d6 100644
--- a/src/mame/drivers/corona.c
+++ b/src/mame/drivers/corona.c
@@ -1381,6 +1381,7 @@ static MACHINE_CONFIG_START( winner81, corona_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(corona_state, screen_update_winner)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
MCFG_PALETTE_INIT_OWNER(corona_state, corona)
@@ -1412,6 +1413,7 @@ static MACHINE_CONFIG_START( winner82, corona_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(corona_state, screen_update_winner)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
MCFG_PALETTE_INIT_OWNER(corona_state, corona)
@@ -1443,6 +1445,7 @@ static MACHINE_CONFIG_START( re800, corona_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(corona_state, screen_update_winner)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
MCFG_PALETTE_INIT_OWNER(corona_state, corona)
@@ -1473,6 +1476,7 @@ static MACHINE_CONFIG_START( rcirulet, corona_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(corona_state, screen_update_winner)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
MCFG_PALETTE_INIT_OWNER(corona_state, corona)
@@ -1504,6 +1508,7 @@ static MACHINE_CONFIG_START( luckyrlt, corona_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(corona_state, screen_update_luckyrlt)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
MCFG_PALETTE_INIT_OWNER(corona_state, corona)
diff --git a/src/mame/drivers/cosmic.c b/src/mame/drivers/cosmic.c
index 1c4ac8b3023..f557bd0c92f 100644
--- a/src/mame/drivers/cosmic.c
+++ b/src/mame/drivers/cosmic.c
@@ -1004,6 +1004,7 @@ static MACHINE_CONFIG_START( cosmic, cosmic_state )
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
TIMER_DEVICE_CALLBACK_MEMBER(cosmic_state::panic_scanline)
@@ -1098,6 +1099,7 @@ static MACHINE_CONFIG_START( cosmicg, cosmic_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cosmic_state, screen_update_cosmicg)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(cosmic_state,cosmicg)
diff --git a/src/mame/drivers/cps1.c b/src/mame/drivers/cps1.c
index f85ecbbf0b8..ace5adafa59 100644
--- a/src/mame/drivers/cps1.c
+++ b/src/mame/drivers/cps1.c
@@ -3190,6 +3190,7 @@ static MACHINE_CONFIG_START( cps1_10MHz, cps_state )
MCFG_SCREEN_RAW_PARAMS(XTAL_16MHz/2, 518, 64, 448, 259, 16, 240) /* guess: assume that CPS-1 uses the same exact timings as CPS-2 */
MCFG_SCREEN_UPDATE_DRIVER(cps_state, screen_update_cps1)
MCFG_SCREEN_VBLANK_DRIVER(cps_state, screen_eof_cps1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cps1)
MCFG_PALETTE_ADD("palette", 0xc00)
diff --git a/src/mame/drivers/cps2.c b/src/mame/drivers/cps2.c
index 6caf02448c2..d71d301970b 100644
--- a/src/mame/drivers/cps2.c
+++ b/src/mame/drivers/cps2.c
@@ -1257,6 +1257,7 @@ static MACHINE_CONFIG_START( cps2, cps_state )
MCFG_SCREEN_RAW_PARAMS(XTAL_8MHz, 518, 64, 448, 259, 16, 240)
MCFG_SCREEN_UPDATE_DRIVER(cps_state, screen_update_cps1)
MCFG_SCREEN_VBLANK_DRIVER(cps_state, screen_eof_cps1)
+ MCFG_SCREEN_PALETTE("palette")
/*
Measured clocks:
V = 59.6376Hz
diff --git a/src/mame/drivers/crbaloon.c b/src/mame/drivers/crbaloon.c
index 8d5b0e71d48..73da5e13d91 100644
--- a/src/mame/drivers/crbaloon.c
+++ b/src/mame/drivers/crbaloon.c
@@ -378,6 +378,7 @@ static MACHINE_CONFIG_START( crbaloon, crbaloon_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(crbaloon_state, screen_update_crbaloon)
+ MCFG_SCREEN_PALETTE("palette")
/* audio hardware */
MCFG_FRAGMENT_ADD(crbaloon_audio)
diff --git a/src/mame/drivers/crimfght.c b/src/mame/drivers/crimfght.c
index 104c13cb12d..8faedb94fa4 100644
--- a/src/mame/drivers/crimfght.c
+++ b/src/mame/drivers/crimfght.c
@@ -272,6 +272,7 @@ static MACHINE_CONFIG_START( crimfght, crimfght_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(crimfght_state, screen_update_crimfght)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 512)
MCFG_PALETTE_ENABLE_SHADOWS()
diff --git a/src/mame/drivers/crospang.c b/src/mame/drivers/crospang.c
index 9653b60e866..76e96807e3e 100644
--- a/src/mame/drivers/crospang.c
+++ b/src/mame/drivers/crospang.c
@@ -353,6 +353,7 @@ static MACHINE_CONFIG_START( crospang, crospang_state )
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(crospang_state, screen_update_crospang)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x300)
MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
diff --git a/src/mame/drivers/crshrace.c b/src/mame/drivers/crshrace.c
index eca0ef2122a..859ef1e7885 100644
--- a/src/mame/drivers/crshrace.c
+++ b/src/mame/drivers/crshrace.c
@@ -449,6 +449,7 @@ static MACHINE_CONFIG_START( crshrace, crshrace_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(crshrace_state, screen_update_crshrace)
MCFG_SCREEN_VBLANK_DRIVER(crshrace_state, screen_eof_crshrace)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", crshrace)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/crystal.c b/src/mame/drivers/crystal.c
index d82b63e4829..dcad22be4d0 100644
--- a/src/mame/drivers/crystal.c
+++ b/src/mame/drivers/crystal.c
@@ -921,6 +921,7 @@ static MACHINE_CONFIG_START( crystal, crystal_state )
MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(crystal_state, screen_update_crystal)
MCFG_SCREEN_VBLANK_DRIVER(crystal_state, screen_eof_crystal)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_VRENDER0_ADD("vr0", vr0video_config)
diff --git a/src/mame/drivers/cshooter.c b/src/mame/drivers/cshooter.c
index 54050b0b800..72a302b6033 100644
--- a/src/mame/drivers/cshooter.c
+++ b/src/mame/drivers/cshooter.c
@@ -450,6 +450,7 @@ static MACHINE_CONFIG_START( airraid, cshooter_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-1-16)
MCFG_SCREEN_UPDATE_DRIVER(cshooter_state, screen_update_airraid)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cshooter)
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/cswat.c b/src/mame/drivers/cswat.c
index 53dd244ddcd..b34778c3e7b 100644
--- a/src/mame/drivers/cswat.c
+++ b/src/mame/drivers/cswat.c
@@ -263,6 +263,7 @@ static MACHINE_CONFIG_START( cswat, cswat_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
MCFG_SCREEN_SIZE(36*8, 28*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_UPDATE_DRIVER(cswat_state, screen_update_cswat)
diff --git a/src/mame/drivers/cultures.c b/src/mame/drivers/cultures.c
index b5c1c824bf2..89e79ec5ed8 100644
--- a/src/mame/drivers/cultures.c
+++ b/src/mame/drivers/cultures.c
@@ -414,6 +414,7 @@ static MACHINE_CONFIG_START( cultures, cultures_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cultures_state, screen_update_cultures)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", culture)
MCFG_PALETTE_ADD("palette", 0x2000)
diff --git a/src/mame/drivers/cupidon.c b/src/mame/drivers/cupidon.c
index fc6e0e3c25b..720b09305c3 100644
--- a/src/mame/drivers/cupidon.c
+++ b/src/mame/drivers/cupidon.c
@@ -106,6 +106,7 @@ static MACHINE_CONFIG_START( cupidon, cupidon_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cupidon_state, screen_update_cupidon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x10000)
diff --git a/src/mame/drivers/cvs.c b/src/mame/drivers/cvs.c
index 44f1d547db7..c95bfa995cf 100644
--- a/src/mame/drivers/cvs.c
+++ b/src/mame/drivers/cvs.c
@@ -1039,6 +1039,7 @@ static MACHINE_CONFIG_START( cvs, cvs_state )
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1000))
MCFG_SCREEN_UPDATE_DRIVER(cvs_state, screen_update_cvs)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_S2636_ADD("s2636_0", s2636_0_config)
MCFG_S2636_ADD("s2636_1", s2636_1_config)
diff --git a/src/mame/drivers/cyberbal.c b/src/mame/drivers/cyberbal.c
index a4d1c4a2c1c..9f58582e842 100644
--- a/src/mame/drivers/cyberbal.c
+++ b/src/mame/drivers/cyberbal.c
@@ -428,6 +428,7 @@ static MACHINE_CONFIG_START( cyberbal, cyberbal_state )
/* the board uses an SOS-2 chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz, 456*2, 0, 336*2, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(cyberbal_state, screen_update_cyberbal_left)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("rscreen", RASTER)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
@@ -435,6 +436,7 @@ static MACHINE_CONFIG_START( cyberbal, cyberbal_state )
/* the board uses an SOS-2 chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz, 456*2, 0, 336*2, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(cyberbal_state, screen_update_cyberbal_right)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(cyberbal_state,cyberbal)
@@ -488,6 +490,7 @@ static MACHINE_CONFIG_START( cyberbal2p, cyberbal_state )
/* the board uses an SOS-2 chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz, 456*2, 0, 336*2, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(cyberbal_state, screen_update_cyberbal2p)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(cyberbal_state,cyberbal2p)
diff --git a/src/mame/drivers/cybertnk.c b/src/mame/drivers/cybertnk.c
index bdab94422ac..c8e5ed2dd14 100644
--- a/src/mame/drivers/cybertnk.c
+++ b/src/mame/drivers/cybertnk.c
@@ -851,6 +851,7 @@ static MACHINE_CONFIG_START( cybertnk, cybertnk_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cybertnk_state, screen_update_cybertnk_left)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("rscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -858,6 +859,7 @@ static MACHINE_CONFIG_START( cybertnk, cybertnk_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cybertnk_state, screen_update_cybertnk_right)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cybertnk)
MCFG_PALETTE_ADD("palette", 0x4000)
diff --git a/src/mame/drivers/cyclemb.c b/src/mame/drivers/cyclemb.c
index 4b053ac1278..1ef2382e9a6 100644
--- a/src/mame/drivers/cyclemb.c
+++ b/src/mame/drivers/cyclemb.c
@@ -917,6 +917,7 @@ static MACHINE_CONFIG_START( cyclemb, cyclemb_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cyclemb_state, screen_update_cyclemb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cyclemb)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/d9final.c b/src/mame/drivers/d9final.c
index b51bc303a2f..ddae9b5c018 100644
--- a/src/mame/drivers/d9final.c
+++ b/src/mame/drivers/d9final.c
@@ -297,8 +297,9 @@ static MACHINE_CONFIG_START( d9final, d9final_state )
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(512, 256)
- MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 16, 256-16-1)
+ MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(d9final_state, screen_update_d9final)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", d9final)
MCFG_PALETTE_ADD_INIT_BLACK("palette", 0x400)
diff --git a/src/mame/drivers/dacholer.c b/src/mame/drivers/dacholer.c
index f50dbfc7a5e..07ab7fee560 100644
--- a/src/mame/drivers/dacholer.c
+++ b/src/mame/drivers/dacholer.c
@@ -671,6 +671,7 @@ static MACHINE_CONFIG_START( dacholer, dacholer_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-1-16)
MCFG_SCREEN_UPDATE_DRIVER(dacholer_state, screen_update_dacholer)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 32)
MCFG_PALETTE_INIT_OWNER(dacholer_state, dacholer)
diff --git a/src/mame/drivers/dambustr.c b/src/mame/drivers/dambustr.c
index 73b6ab92c60..c176de8c12d 100644
--- a/src/mame/drivers/dambustr.c
+++ b/src/mame/drivers/dambustr.c
@@ -266,6 +266,7 @@ static MACHINE_CONFIG_START( dambustr, dambustr_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dambustr_state, screen_update_dambustr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dambustr)
MCFG_PALETTE_ADD("palette", 32+2+64+8) /* 32 for the characters, 2 for the bullets, 64 for the stars, 8 for the background */
diff --git a/src/mame/drivers/darius.c b/src/mame/drivers/darius.c
index f14efda4435..1a0b6f248c1 100644
--- a/src/mame/drivers/darius.c
+++ b/src/mame/drivers/darius.c
@@ -884,6 +884,7 @@ static MACHINE_CONFIG_START( darius, darius_state )
MCFG_SCREEN_SIZE(36*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 29*8-1)
MCFG_SCREEN_UPDATE_DRIVER(darius_state, screen_update_darius_left)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("mscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -891,6 +892,7 @@ static MACHINE_CONFIG_START( darius, darius_state )
MCFG_SCREEN_SIZE(36*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 29*8-1)
MCFG_SCREEN_UPDATE_DRIVER(darius_state, screen_update_darius_middle)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("rscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -898,6 +900,7 @@ static MACHINE_CONFIG_START( darius, darius_state )
MCFG_SCREEN_SIZE(36*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 29*8-1)
MCFG_SCREEN_UPDATE_DRIVER(darius_state, screen_update_darius_right)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PC080SN_ADD("pc080sn", darius_pc080sn_intf)
diff --git a/src/mame/drivers/darkmist.c b/src/mame/drivers/darkmist.c
index 5ce73313a21..f145636cc69 100644
--- a/src/mame/drivers/darkmist.c
+++ b/src/mame/drivers/darkmist.c
@@ -241,6 +241,7 @@ static MACHINE_CONFIG_START( darkmist, darkmist_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(darkmist_state, screen_update_darkmist)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", darkmist)
MCFG_PALETTE_ADD("palette", 0x100*4)
diff --git a/src/mame/drivers/darkseal.c b/src/mame/drivers/darkseal.c
index 861cb7866a9..a89b60b545d 100644
--- a/src/mame/drivers/darkseal.c
+++ b/src/mame/drivers/darkseal.c
@@ -261,6 +261,7 @@ static MACHINE_CONFIG_START( darkseal, darkseal_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(darkseal_state, screen_update_darkseal)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", darkseal)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/dblcrown.c b/src/mame/drivers/dblcrown.c
index 0a5a6d0b06d..615d3d32b2a 100644
--- a/src/mame/drivers/dblcrown.c
+++ b/src/mame/drivers/dblcrown.c
@@ -573,6 +573,7 @@ static MACHINE_CONFIG_START( dblcrown, dblcrown_state )
MCFG_SCREEN_UPDATE_DRIVER(dblcrown_state, screen_update)
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dblcrown)
diff --git a/src/mame/drivers/dblewing.c b/src/mame/drivers/dblewing.c
index 47961e8dbf8..10eb1419bef 100644
--- a/src/mame/drivers/dblewing.c
+++ b/src/mame/drivers/dblewing.c
@@ -385,6 +385,7 @@ static MACHINE_CONFIG_START( dblewing, dblewing_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dblewing_state, screen_update_dblewing)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 4096)
MCFG_PALETTE_FORMAT(xxxxBBBBGGGGRRRR)
diff --git a/src/mame/drivers/dbz.c b/src/mame/drivers/dbz.c
index 96650cf5219..364cdf2cad4 100644
--- a/src/mame/drivers/dbz.c
+++ b/src/mame/drivers/dbz.c
@@ -369,6 +369,7 @@ static MACHINE_CONFIG_START( dbz, dbz_state )
MCFG_SCREEN_SIZE(64*8, 40*8)
MCFG_SCREEN_VISIBLE_AREA(0, 48*8-1, 0, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dbz_state, screen_update_dbz)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dbz)
diff --git a/src/mame/drivers/dcheese.c b/src/mame/drivers/dcheese.c
index 64a61c56779..2b2fb27b8db 100644
--- a/src/mame/drivers/dcheese.c
+++ b/src/mame/drivers/dcheese.c
@@ -416,6 +416,7 @@ static MACHINE_CONFIG_START( dcheese, dcheese_state )
MCFG_SCREEN_SIZE(360, 262) /* guess, need to see what the games write to the vid registers */
MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(dcheese_state, screen_update_dcheese)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 65534)
MCFG_PALETTE_INIT_OWNER(dcheese_state, dcheese)
diff --git a/src/mame/drivers/dcon.c b/src/mame/drivers/dcon.c
index 89c65f73739..60dfc05596c 100644
--- a/src/mame/drivers/dcon.c
+++ b/src/mame/drivers/dcon.c
@@ -273,6 +273,7 @@ static MACHINE_CONFIG_START( dcon, dcon_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dcon_state, screen_update_dcon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEVICE_ADD("crtc", SEIBU_CRTC, 0)
MCFG_SEIBU_CRTC_LAYER_EN_CB(WRITE16(dcon_state, layer_en_w))
@@ -302,6 +303,7 @@ static MACHINE_CONFIG_START( sdgndmps, dcon_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dcon_state, screen_update_sdgndmps)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEVICE_ADD("crtc", SEIBU_CRTC, 0)
MCFG_SEIBU_CRTC_LAYER_EN_CB(WRITE16(dcon_state, layer_en_w))
diff --git a/src/mame/drivers/dday.c b/src/mame/drivers/dday.c
index 919f4ebfbce..71e949025e8 100644
--- a/src/mame/drivers/dday.c
+++ b/src/mame/drivers/dday.c
@@ -266,6 +266,7 @@ static MACHINE_CONFIG_START( dday, dday_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dday_state, screen_update_dday)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dday)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/ddayjlc.c b/src/mame/drivers/ddayjlc.c
index c7e2787ad00..5e5d4161ea8 100644
--- a/src/mame/drivers/ddayjlc.c
+++ b/src/mame/drivers/ddayjlc.c
@@ -533,6 +533,7 @@ static MACHINE_CONFIG_START( ddayjlc, ddayjlc_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ddayjlc_state, screen_update_ddayjlc)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ddayjlc)
MCFG_PALETTE_ADD("palette", 0x200)
diff --git a/src/mame/drivers/ddealer.c b/src/mame/drivers/ddealer.c
index a719f3246bd..240dd630565 100644
--- a/src/mame/drivers/ddealer.c
+++ b/src/mame/drivers/ddealer.c
@@ -638,6 +638,7 @@ static MACHINE_CONFIG_START( ddealer, ddealer_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ddealer_state, screen_update_ddealer)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x400)
MCFG_PALETTE_FORMAT(RRRRGGGGBBBBRGBx)
diff --git a/src/mame/drivers/ddenlovr.c b/src/mame/drivers/ddenlovr.c
index 5afbaf4e4e0..477a633d25f 100644
--- a/src/mame/drivers/ddenlovr.c
+++ b/src/mame/drivers/ddenlovr.c
@@ -4221,6 +4221,7 @@ static MACHINE_CONFIG_START( htengoku, ddenlovr_state )
MCFG_SCREEN_VISIBLE_AREA(0, 336-1, 0+8, 256-1-8)
MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_htengoku)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16*256)
@@ -9433,6 +9434,7 @@ static MACHINE_CONFIG_START( ddenlovr, ddenlovr_state )
MCFG_SCREEN_VISIBLE_AREA(0, 336-1, 5, 256-16+5-1)
MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
@@ -9559,6 +9561,7 @@ static MACHINE_CONFIG_START( quizchq, ddenlovr_state )
MCFG_SCREEN_VISIBLE_AREA(0, 336-1, 5, 256-16+5-1)
MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
@@ -9642,6 +9645,7 @@ static MACHINE_CONFIG_START( mmpanic, ddenlovr_state )
MCFG_SCREEN_VISIBLE_AREA(0, 336-1, 5, 256-16+5-1)
MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
@@ -9718,6 +9722,7 @@ static MACHINE_CONFIG_START( hanakanz, ddenlovr_state )
MCFG_SCREEN_VISIBLE_AREA(0, 336-1, 5, 256-11-1)
MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x200)
@@ -9763,6 +9768,7 @@ static MACHINE_CONFIG_START( kotbinyo, ddenlovr_state )
MCFG_SCREEN_VISIBLE_AREA(0, 336-1-1, 1+4, 256-15-1+4)
MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x200)
@@ -10147,6 +10153,7 @@ static MACHINE_CONFIG_START( jongtei, ddenlovr_state )
MCFG_SCREEN_VISIBLE_AREA(0, 336-1, 5, 256-11-1)
MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x200)
@@ -10189,6 +10196,7 @@ static MACHINE_CONFIG_START( sryudens, ddenlovr_state )
MCFG_SCREEN_VISIBLE_AREA(0, 336-1, 0+5, 256-12-1)
MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
@@ -10235,6 +10243,7 @@ static MACHINE_CONFIG_START( janshinp, ddenlovr_state )
MCFG_SCREEN_VISIBLE_AREA(0, 336-1, 0+5, 256-12-1)
MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
@@ -10310,6 +10319,7 @@ static MACHINE_CONFIG_START( seljan2, ddenlovr_state )
MCFG_SCREEN_VISIBLE_AREA(0, 336-1, 0+5, 256-12-1)
MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
@@ -10358,6 +10368,7 @@ static MACHINE_CONFIG_START( daimyojn, ddenlovr_state )
MCFG_SCREEN_VISIBLE_AREA(0, 336-1-1, 1, 256-15-1)
MCFG_SCREEN_UPDATE_DRIVER(ddenlovr_state, screen_update_ddenlovr)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x200)
diff --git a/src/mame/drivers/ddragon.c b/src/mame/drivers/ddragon.c
index 487e4d318a5..3b2d0b0224f 100644
--- a/src/mame/drivers/ddragon.c
+++ b/src/mame/drivers/ddragon.c
@@ -989,6 +989,7 @@ static MACHINE_CONFIG_START( ddragon, ddragon_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 384, 0, 256, 272, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(ddragon_state, screen_update_ddragon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(ddragon_state,ddragon)
@@ -1053,6 +1054,7 @@ static MACHINE_CONFIG_START( ddragon6809, ddragon_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 384, 0, 256, 272, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(ddragon_state, screen_update_ddragon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(ddragon_state,ddragon)
@@ -1100,6 +1102,7 @@ static MACHINE_CONFIG_START( ddragon2, ddragon_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 384, 0, 256, 272, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(ddragon_state, screen_update_ddragon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(ddragon_state,ddragon)
diff --git a/src/mame/drivers/ddragon3.c b/src/mame/drivers/ddragon3.c
index 029270e6ab9..56f167c0a88 100644
--- a/src/mame/drivers/ddragon3.c
+++ b/src/mame/drivers/ddragon3.c
@@ -842,6 +842,7 @@ static MACHINE_CONFIG_START( ddragon3, ddragon3_state )
MCFG_SCREEN_RAW_PARAMS(XTAL_28MHz / 4, 448, 0, 320, 272, 8, 248) /* HTOTAL and VTOTAL are guessed */
MCFG_SCREEN_UPDATE_DRIVER(ddragon3_state, screen_update_ddragon3)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ddragon3)
MCFG_PALETTE_ADD("palette", 768)
@@ -911,6 +912,7 @@ static MACHINE_CONFIG_START( wwfwfest, wwfwfest_state )
MCFG_SCREEN_RAW_PARAMS(XTAL_28MHz / 4, 448, 0, 320, 272, 8, 248) /* HTOTAL and VTOTAL are guessed */
MCFG_SCREEN_UPDATE_DRIVER(wwfwfest_state, screen_update_wwfwfest)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", wwfwfest)
MCFG_PALETTE_ADD("palette", 8192)
diff --git a/src/mame/drivers/ddribble.c b/src/mame/drivers/ddribble.c
index f3de38305ee..4a757fc38cb 100644
--- a/src/mame/drivers/ddribble.c
+++ b/src/mame/drivers/ddribble.c
@@ -284,6 +284,7 @@ static MACHINE_CONFIG_START( ddribble, ddribble_state )
/* MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1) */
MCFG_SCREEN_UPDATE_DRIVER(ddribble_state, screen_update_ddribble)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ddribble)
MCFG_PALETTE_ADD("palette", 64 + 256)
diff --git a/src/mame/drivers/deadang.c b/src/mame/drivers/deadang.c
index 8190f7e861a..0fe4e89bbc3 100644
--- a/src/mame/drivers/deadang.c
+++ b/src/mame/drivers/deadang.c
@@ -252,6 +252,7 @@ static MACHINE_CONFIG_START( deadang, deadang_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(deadang_state, screen_update_deadang)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", deadang)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/dec0.c b/src/mame/drivers/dec0.c
index 0b72a0c40bf..736ccb30740 100644
--- a/src/mame/drivers/dec0.c
+++ b/src/mame/drivers/dec0.c
@@ -1416,6 +1416,7 @@ static MACHINE_CONFIG_START( automat, dec0_automat_state )
MCFG_SCREEN_RAW_PARAMS(DEC0_PIXEL_CLOCK,DEC0_HTOTAL,DEC0_HBEND,DEC0_HBSTART,DEC0_VTOTAL,DEC0_VBEND,DEC0_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dec0_automat_state, screen_update_automat)
MCFG_VIDEO_START_OVERRIDE(dec0_automat_state,automat)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEVICE_ADD("tilegen1", DECO_BAC06, 0)
deco_bac06_device::set_gfx_region_wide(*device,0,0,0);
@@ -1475,6 +1476,7 @@ static MACHINE_CONFIG_START( secretab, dec0_automat_state )
MCFG_SCREEN_RAW_PARAMS(DEC0_PIXEL_CLOCK,DEC0_HTOTAL,DEC0_HBEND,DEC0_HBSTART,DEC0_VTOTAL,DEC0_VBEND,DEC0_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dec0_automat_state, screen_update_secretab)
MCFG_VIDEO_START_OVERRIDE(dec0_automat_state,automat)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEVICE_ADD("tilegen1", DECO_BAC06, 0)
deco_bac06_device::set_gfx_region_wide(*device,0,0,0);
@@ -1539,6 +1541,7 @@ static MACHINE_CONFIG_DERIVED( hbarrel, dec0_base_sound )
//MCFG_SCREEN_SIZE(32*8, 32*8)
//MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dec0_state, screen_update_hbarrel)
+ MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( baddudes, dec0_base_sound )
@@ -1559,6 +1562,7 @@ static MACHINE_CONFIG_DERIVED( baddudes, dec0_base_sound )
// MCFG_SCREEN_SIZE(32*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dec0_state, screen_update_baddudes)
+ MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( birdtry, dec0_base_sound )
@@ -1579,6 +1583,7 @@ static MACHINE_CONFIG_DERIVED( birdtry, dec0_base_sound )
// MCFG_SCREEN_SIZE(32*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dec0_state, screen_update_birdtry)
+ MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( robocop, dec0_base_sound )
@@ -1604,6 +1609,7 @@ static MACHINE_CONFIG_DERIVED( robocop, dec0_base_sound )
// MCFG_SCREEN_SIZE(32*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dec0_state, screen_update_robocop)
+ MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( robocopb, dec0_base_sound )
@@ -1624,6 +1630,7 @@ static MACHINE_CONFIG_DERIVED( robocopb, dec0_base_sound )
// MCFG_SCREEN_SIZE(32*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dec0_state, screen_update_robocop)
+ MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( hippodrm, dec0_base_sound )
@@ -1649,6 +1656,7 @@ static MACHINE_CONFIG_DERIVED( hippodrm, dec0_base_sound )
// MCFG_SCREEN_SIZE(32*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dec0_state, screen_update_hippodrm)
+ MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( ffantasybl, dec0_base_sound )
@@ -1674,6 +1682,7 @@ static MACHINE_CONFIG_DERIVED( ffantasybl, dec0_base_sound )
// MCFG_SCREEN_SIZE(32*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dec0_state, screen_update_hippodrm)
+ MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
MACHINE_RESET_MEMBER(dec0_state,slyspy)
@@ -1700,6 +1709,7 @@ static MACHINE_CONFIG_DERIVED( slyspy, dec0_base_sound_alt )
// MCFG_SCREEN_SIZE(32*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dec0_state, screen_update_slyspy)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(dec0_state,dec0_nodma)
@@ -1727,6 +1737,7 @@ static MACHINE_CONFIG_DERIVED( midres, dec0_base_sound_alt )
// MCFG_SCREEN_SIZE(32*8, 32*8)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dec0_state, screen_update_midres)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_MODIFY("gfxdecode", midres)
MCFG_VIDEO_START_OVERRIDE(dec0_state,dec0_nodma)
diff --git a/src/mame/drivers/dec8.c b/src/mame/drivers/dec8.c
index e30906c87b9..1f82bacaa20 100644
--- a/src/mame/drivers/dec8.c
+++ b/src/mame/drivers/dec8.c
@@ -2025,6 +2025,7 @@ static MACHINE_CONFIG_START( lastmisn, dec8_state )
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(DEC8_PIXEL_CLOCK, DEC8_HTOTAL, DEC8_HBEND, DEC8_HBSTART, DEC8_VTOTAL, DEC8_VBEND, DEC8_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dec8_state, screen_update_lastmisn)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", shackled)
MCFG_PALETTE_ADD("palette", 1024)
@@ -2077,6 +2078,7 @@ static MACHINE_CONFIG_START( shackled, dec8_state )
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(DEC8_PIXEL_CLOCK, DEC8_HTOTAL, DEC8_HBEND, DEC8_HBSTART, DEC8_VTOTAL, DEC8_VBEND, DEC8_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dec8_state, screen_update_shackled)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", shackled)
MCFG_PALETTE_ADD("palette", 1024)
@@ -2129,6 +2131,7 @@ static MACHINE_CONFIG_START( gondo, dec8_state )
MCFG_SCREEN_RAW_PARAMS(DEC8_PIXEL_CLOCK, DEC8_HTOTAL, DEC8_HBEND, DEC8_HBSTART, DEC8_VTOTAL, DEC8_VBEND, DEC8_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dec8_state, screen_update_gondo)
MCFG_SCREEN_VBLANK_DRIVER(dec8_state, screen_eof_dec8)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gondo)
MCFG_PALETTE_ADD("palette", 1024)
@@ -2181,6 +2184,7 @@ static MACHINE_CONFIG_START( garyoret, dec8_state )
MCFG_SCREEN_RAW_PARAMS(DEC8_PIXEL_CLOCK, DEC8_HTOTAL, DEC8_HBEND, DEC8_HBSTART, DEC8_VTOTAL, DEC8_VBEND, DEC8_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dec8_state, screen_update_garyoret)
MCFG_SCREEN_VBLANK_DRIVER(dec8_state, screen_eof_dec8)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gondo)
MCFG_PALETTE_ADD("palette", 1024)
@@ -2237,6 +2241,7 @@ static MACHINE_CONFIG_START( ghostb, dec8_state )
MCFG_SCREEN_RAW_PARAMS(DEC8_PIXEL_CLOCK, DEC8_HTOTAL, DEC8_HBEND, DEC8_HBSTART, DEC8_VTOTAL, DEC8_VBEND, DEC8_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dec8_state, screen_update_ghostb)
MCFG_SCREEN_VBLANK_DRIVER(dec8_state, screen_eof_dec8)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ghostb)
MCFG_PALETTE_ADD("palette", 1024)
@@ -2295,6 +2300,7 @@ static MACHINE_CONFIG_START( csilver, dec8_state )
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(DEC8_PIXEL_CLOCK, DEC8_HTOTAL, DEC8_HBEND, DEC8_HBSTART, DEC8_VTOTAL, DEC8_VBEND, DEC8_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dec8_state, screen_update_lastmisn)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", shackled)
MCFG_PALETTE_ADD("palette", 1024)
@@ -2355,6 +2361,7 @@ static MACHINE_CONFIG_START( oscar, dec8_state )
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(DEC8_PIXEL_CLOCK, DEC8_HTOTAL, DEC8_HBEND, DEC8_HBSTART, DEC8_VTOTAL, DEC8_VBEND, DEC8_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dec8_state, screen_update_oscar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", oscar)
MCFG_PALETTE_ADD("palette", 512)
@@ -2398,6 +2405,7 @@ static MACHINE_CONFIG_START( srdarwin, dec8_state )
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(DEC8_PIXEL_CLOCK, DEC8_HTOTAL, DEC8_HBEND, DEC8_HBSTART, DEC8_VTOTAL, DEC8_VBEND, DEC8_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dec8_state, screen_update_srdarwin)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", srdarwin)
MCFG_PALETTE_ADD("palette", 144)
@@ -2454,6 +2462,7 @@ static MACHINE_CONFIG_START( cobracom, dec8_state )
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(DEC8_PIXEL_CLOCK, DEC8_HTOTAL, DEC8_HBEND, DEC8_HBSTART, DEC8_VTOTAL, DEC8_VBEND, DEC8_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dec8_state, screen_update_cobracom)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cobracom)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/deco32.c b/src/mame/drivers/deco32.c
index 6a286ad35b6..9d9cd198062 100644
--- a/src/mame/drivers/deco32.c
+++ b/src/mame/drivers/deco32.c
@@ -1751,6 +1751,7 @@ static MACHINE_CONFIG_START( captaven, deco32_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(deco32_state, screen_update_captaven)
MCFG_SCREEN_VBLANK_DRIVER(deco32_state, screen_eof_captaven)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", captaven)
MCFG_PALETTE_ADD("palette", 2048)
@@ -2013,6 +2014,7 @@ static MACHINE_CONFIG_START( dragngun, dragngun_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dragngun_state, screen_update_dragngun)
MCFG_SCREEN_VBLANK_DRIVER(dragngun_state, screen_eof_dragngun)
+ //MCFG_SCREEN_PALETTE("palette")
MCFG_BUFFERED_SPRITERAM32_ADD("spriteram")
@@ -2190,7 +2192,6 @@ static MACHINE_CONFIG_START( tattass, deco32_state )
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_SIZE(42*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
-
MCFG_SCREEN_UPDATE_DRIVER(deco32_state, screen_update_nslasher)
MCFG_DECO16IC_ADD("tilegen1", tattass_deco16ic_tilegen1_intf)
@@ -2244,7 +2245,7 @@ static MACHINE_CONFIG_START( nslasher, deco32_state )
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_SIZE(42*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
- MCFG_SCREEN_UPDATE_DRIVER(deco32_state, screen_update_nslasher)
+ MCFG_SCREEN_UPDATE_DRIVER(deco32_state, screen_update_nslasher)
MCFG_DECO16IC_ADD("tilegen1", tattass_deco16ic_tilegen1_intf)
MCFG_DECO16IC_GFXDECODE("gfxdecode")
diff --git a/src/mame/drivers/decocass.c b/src/mame/drivers/decocass.c
index f1a9a3001c3..71c1c245b0f 100644
--- a/src/mame/drivers/decocass.c
+++ b/src/mame/drivers/decocass.c
@@ -733,6 +733,7 @@ static MACHINE_CONFIG_START( decocass, decocass_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(HCLK, 384, 0*8, 256, 272, 1*8, 248)
MCFG_SCREEN_UPDATE_DRIVER(decocass_state, screen_update_decocass)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", decocass)
MCFG_PALETTE_ADD("palette", 32+2*8+2*4)
diff --git a/src/mame/drivers/deniam.c b/src/mame/drivers/deniam.c
index 3908653366b..ccb330da9ab 100644
--- a/src/mame/drivers/deniam.c
+++ b/src/mame/drivers/deniam.c
@@ -279,6 +279,7 @@ static MACHINE_CONFIG_START( deniam16b, deniam_state )
//MCFG_SCREEN_VISIBLE_AREA(24*8, 64*8-1, 0*8, 28*8-1) // looks better but doesn't match hardware
MCFG_SCREEN_VISIBLE_AREA(24*8-4, 64*8-5, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(deniam_state, screen_update_deniam)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", deniam)
MCFG_PALETTE_ADD("palette", 2048)
@@ -311,6 +312,7 @@ static MACHINE_CONFIG_START( deniam16c, deniam_state )
//MCFG_SCREEN_VISIBLE_AREA(24*8, 64*8-1, 0*8, 28*8-1) // looks better but doesn't match hardware
MCFG_SCREEN_VISIBLE_AREA(24*8-4, 64*8-5, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(deniam_state, screen_update_deniam)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", deniam)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/deshoros.c b/src/mame/drivers/deshoros.c
index 58e59133ca8..d411386955c 100644
--- a/src/mame/drivers/deshoros.c
+++ b/src/mame/drivers/deshoros.c
@@ -274,6 +274,8 @@ static MACHINE_CONFIG_START( destiny, destiny_state )
MCFG_SCREEN_SIZE(48*8, 16*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 0*8, 16*8-1)
MCFG_SCREEN_UPDATE_DRIVER(destiny_state, screen_update_destiny)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 16)
diff --git a/src/mame/drivers/destroyr.c b/src/mame/drivers/destroyr.c
index a0fe9f0d787..512ae0634c7 100644
--- a/src/mame/drivers/destroyr.c
+++ b/src/mame/drivers/destroyr.c
@@ -490,6 +490,7 @@ static MACHINE_CONFIG_START( destroyr, destroyr_state )
MCFG_SCREEN_SIZE(256, 262)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(destroyr_state, screen_update_destroyr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", destroyr)
MCFG_PALETTE_ADD("palette", 8)
diff --git a/src/mame/drivers/dfruit.c b/src/mame/drivers/dfruit.c
index db12a6a2028..bf5d4578057 100644
--- a/src/mame/drivers/dfruit.c
+++ b/src/mame/drivers/dfruit.c
@@ -399,6 +399,7 @@ static MACHINE_CONFIG_START( dfruit, dfruit_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dfruit_state, screen_update)
MCFG_SCREEN_VBLANK_DRIVER(dfruit_state, screen_eof)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dfruit )
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/dgpix.c b/src/mame/drivers/dgpix.c
index d24994e6361..2bf5db88330 100644
--- a/src/mame/drivers/dgpix.c
+++ b/src/mame/drivers/dgpix.c
@@ -317,6 +317,7 @@ static MACHINE_CONFIG_START( dgpix, dgpix_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(dgpix_state, screen_update_dgpix)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BBBBBGGGGGRRRRR("palette")
diff --git a/src/mame/drivers/dietgo.c b/src/mame/drivers/dietgo.c
index bd33516a765..2a8689d92a8 100644
--- a/src/mame/drivers/dietgo.c
+++ b/src/mame/drivers/dietgo.c
@@ -228,6 +228,7 @@ static MACHINE_CONFIG_START( dietgo, dietgo_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dietgo_state, screen_update_dietgo)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 1024)
MCFG_GFXDECODE_ADD("gfxdecode", dietgo)
diff --git a/src/mame/drivers/discoboy.c b/src/mame/drivers/discoboy.c
index a560229fa95..35882162e39 100644
--- a/src/mame/drivers/discoboy.c
+++ b/src/mame/drivers/discoboy.c
@@ -510,6 +510,7 @@ static MACHINE_CONFIG_START( discoboy, discoboy_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(8*8, 512-1-8*8, 0+8, 256-1-8)
MCFG_SCREEN_UPDATE_DRIVER(discoboy_state, screen_update_discoboy)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", discoboy)
MCFG_PALETTE_ADD("palette", 0x1000)
diff --git a/src/mame/drivers/diverboy.c b/src/mame/drivers/diverboy.c
index 00f058fb556..0826ffbdb7e 100644
--- a/src/mame/drivers/diverboy.c
+++ b/src/mame/drivers/diverboy.c
@@ -276,6 +276,7 @@ static MACHINE_CONFIG_START( diverboy, diverboy_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8+4, 40*8+1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(diverboy_state, screen_update_diverboy)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x400)
MCFG_PALETTE_FORMAT(xxxxBBBBGGGGRRRR)
diff --git a/src/mame/drivers/djboy.c b/src/mame/drivers/djboy.c
index f81cada472d..b45f1107f66 100644
--- a/src/mame/drivers/djboy.c
+++ b/src/mame/drivers/djboy.c
@@ -579,6 +579,7 @@ static MACHINE_CONFIG_START( djboy, djboy_state )
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(djboy_state, screen_update_djboy)
MCFG_SCREEN_VBLANK_DRIVER(djboy_state, screen_eof_djboy)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", djboy)
MCFG_PALETTE_ADD("palette", 0x200)
diff --git a/src/mame/drivers/dkong.c b/src/mame/drivers/dkong.c
index a536f7d3268..3e0a99b039e 100644
--- a/src/mame/drivers/dkong.c
+++ b/src/mame/drivers/dkong.c
@@ -1666,6 +1666,7 @@ static MACHINE_CONFIG_START( dkong_base, dkong_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dkong_state, screen_update_dkong)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dkong)
MCFG_PALETTE_ADD("palette", DK2B_PALETTE_LENGTH)
@@ -1731,6 +1732,7 @@ static MACHINE_CONFIG_START( dkong3, dkong_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(dkong_state, screen_update_dkong)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dkong)
MCFG_PALETTE_ADD("palette", DK3_PALETTE_LENGTH)
diff --git a/src/mame/drivers/dlair2.c b/src/mame/drivers/dlair2.c
index e0d6ed00e67..8a63e1b1b2c 100644
--- a/src/mame/drivers/dlair2.c
+++ b/src/mame/drivers/dlair2.c
@@ -182,6 +182,7 @@ static MACHINE_CONFIG_START( dlair2, dlair2_state )
MCFG_SCREEN_UPDATE_DRIVER(dlair2_state, screen_update)
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+ MCFG_SCREEN_PALETTE("palette")
// MCFG_GFXDECODE_ADD("gfxdecode", dlair2)
diff --git a/src/mame/drivers/dmndrby.c b/src/mame/drivers/dmndrby.c
index 89a57b67cd5..f80f87d525f 100644
--- a/src/mame/drivers/dmndrby.c
+++ b/src/mame/drivers/dmndrby.c
@@ -536,6 +536,7 @@ static MACHINE_CONFIG_START( dderby, dmndrby_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(dmndrby_state, screen_update_dderby)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dmndrby)
MCFG_PALETTE_ADD("palette", 0x300)
diff --git a/src/mame/drivers/docastle.c b/src/mame/drivers/docastle.c
index 3311d49133c..0b8688971f4 100644
--- a/src/mame/drivers/docastle.c
+++ b/src/mame/drivers/docastle.c
@@ -639,6 +639,7 @@ static MACHINE_CONFIG_START( docastle, docastle_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL_9_828MHz/2, 0x138, 8, 0x100-8, 0x108, 0, 0xc0) // from crtc
MCFG_SCREEN_UPDATE_DRIVER(docastle_state, screen_update_docastle)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", docastle)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/dogfgt.c b/src/mame/drivers/dogfgt.c
index 11afc6d7463..e28ab307546 100644
--- a/src/mame/drivers/dogfgt.c
+++ b/src/mame/drivers/dogfgt.c
@@ -252,6 +252,7 @@ static MACHINE_CONFIG_START( dogfgt, dogfgt_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dogfgt_state, screen_update_dogfgt)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dogfgt)
MCFG_PALETTE_ADD("palette", 16+64)
diff --git a/src/mame/drivers/dominob.c b/src/mame/drivers/dominob.c
index 97eccc1bdf1..80130d05977 100644
--- a/src/mame/drivers/dominob.c
+++ b/src/mame/drivers/dominob.c
@@ -314,6 +314,7 @@ static MACHINE_CONFIG_START( dominob, dominob_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dominob_state, screen_update_dominob)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dominob)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/dooyong.c b/src/mame/drivers/dooyong.c
index b29ae41444d..558cdd559bf 100644
--- a/src/mame/drivers/dooyong.c
+++ b/src/mame/drivers/dooyong.c
@@ -872,6 +872,7 @@ static MACHINE_CONFIG_START( lastday, dooyong_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_state, screen_update_lastday)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lastday)
MCFG_PALETTE_ADD("palette", 1024)
@@ -917,6 +918,7 @@ static MACHINE_CONFIG_START( gulfstrm, dooyong_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_state, screen_update_gulfstrm)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lastday)
MCFG_PALETTE_ADD("palette", 1024)
@@ -951,6 +953,7 @@ static MACHINE_CONFIG_START( pollux, dooyong_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_state, screen_update_pollux)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lastday)
MCFG_PALETTE_ADD("palette", 1024)
@@ -984,6 +987,7 @@ static MACHINE_CONFIG_START( bluehawk, dooyong_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_state, screen_update_bluehawk)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bluehawk)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1017,6 +1021,7 @@ static MACHINE_CONFIG_START( flytiger, dooyong_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_state, screen_update_flytiger)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", flytiger)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1047,6 +1052,7 @@ static MACHINE_CONFIG_START( primella, dooyong_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 0*8, 32*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_state, screen_update_primella)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", primella)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1090,6 +1096,7 @@ static MACHINE_CONFIG_START( rshark, dooyong_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_state, screen_update_rshark)
MCFG_SCREEN_VBLANK_DEVICE("spriteram16", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", rshark)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1121,6 +1128,7 @@ static MACHINE_CONFIG_START( superx, dooyong_state ) // dif mem map
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_state, screen_update_rshark)
MCFG_SCREEN_VBLANK_DEVICE("spriteram16", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", rshark)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1152,6 +1160,7 @@ static MACHINE_CONFIG_START( popbingo, dooyong_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_state, screen_update_popbingo)
MCFG_SCREEN_VBLANK_DEVICE("spriteram16", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", popbingo)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/dragrace.c b/src/mame/drivers/dragrace.c
index 1a231746aef..3b47c71a3ea 100644
--- a/src/mame/drivers/dragrace.c
+++ b/src/mame/drivers/dragrace.c
@@ -337,6 +337,7 @@ static MACHINE_CONFIG_START( dragrace, dragrace_state )
MCFG_SCREEN_SIZE(256, 262)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(dragrace_state, screen_update_dragrace)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dragrace)
MCFG_PALETTE_ADD("palette", 16)
diff --git a/src/mame/drivers/dreambal.c b/src/mame/drivers/dreambal.c
index 3e8c0ee196f..0551f74f8cd 100644
--- a/src/mame/drivers/dreambal.c
+++ b/src/mame/drivers/dreambal.c
@@ -324,6 +324,7 @@ static MACHINE_CONFIG_START( dreambal, dreambal_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dreambal_state, screen_update_dreambal)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x400/2)
MCFG_PALETTE_FORMAT(xxxxBBBBGGGGRRRR)
diff --git a/src/mame/drivers/dreamwld.c b/src/mame/drivers/dreamwld.c
index 4fbe5e855be..0136a919f29 100644
--- a/src/mame/drivers/dreamwld.c
+++ b/src/mame/drivers/dreamwld.c
@@ -582,6 +582,7 @@ static MACHINE_CONFIG_START( baryon, dreamwld_state )
MCFG_SCREEN_VISIBLE_AREA(0, 304-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(dreamwld_state, screen_update_dreamwld)
MCFG_SCREEN_VBLANK_DRIVER(dreamwld_state, screen_eof_dreamwld)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x1000)
MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
diff --git a/src/mame/drivers/drgnmst.c b/src/mame/drivers/drgnmst.c
index 5691560c22a..7ff0e4929ec 100644
--- a/src/mame/drivers/drgnmst.c
+++ b/src/mame/drivers/drgnmst.c
@@ -408,6 +408,7 @@ static MACHINE_CONFIG_START( drgnmst, drgnmst_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(8*8, 56*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(drgnmst_state, screen_update_drgnmst)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x2000)
MCFG_PALETTE_FORMAT(xxxxRRRRGGGGBBBB)
diff --git a/src/mame/drivers/dribling.c b/src/mame/drivers/dribling.c
index 73c7223a543..f1faf0fc8c7 100644
--- a/src/mame/drivers/dribling.c
+++ b/src/mame/drivers/dribling.c
@@ -312,6 +312,7 @@ static MACHINE_CONFIG_START( dribling, dribling_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 40, 255)
MCFG_SCREEN_UPDATE_DRIVER(dribling_state, screen_update_dribling)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(dribling_state, dribling)
diff --git a/src/mame/drivers/drmicro.c b/src/mame/drivers/drmicro.c
index d49613af38f..ca7d483429a 100644
--- a/src/mame/drivers/drmicro.c
+++ b/src/mame/drivers/drmicro.c
@@ -257,6 +257,7 @@ static MACHINE_CONFIG_START( drmicro, drmicro_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(drmicro_state, screen_update_drmicro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", drmicro)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/drtomy.c b/src/mame/drivers/drtomy.c
index 1eea73c4788..983b5d8fc4e 100644
--- a/src/mame/drivers/drtomy.c
+++ b/src/mame/drivers/drtomy.c
@@ -311,6 +311,7 @@ static MACHINE_CONFIG_START( drtomy, drtomy_state )
MCFG_SCREEN_SIZE(32*16, 32*16)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(drtomy_state, screen_update_drtomy)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", drtomy)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/drw80pkr.c b/src/mame/drivers/drw80pkr.c
index 0020489090b..303daa3bcb5 100644
--- a/src/mame/drivers/drw80pkr.c
+++ b/src/mame/drivers/drw80pkr.c
@@ -481,6 +481,7 @@ static MACHINE_CONFIG_START( drw80pkr, drw80pkr_state )
MCFG_SCREEN_SIZE((31+1)*8, (31+1)*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 24*8-1, 0*8, 27*8-1)
MCFG_SCREEN_UPDATE_DRIVER(drw80pkr_state, screen_update_drw80pkr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", drw80pkr)
MCFG_PALETTE_ADD("palette", 16*16)
diff --git a/src/mame/drivers/dunhuang.c b/src/mame/drivers/dunhuang.c
index 673622208a1..63e5b1d66df 100644
--- a/src/mame/drivers/dunhuang.c
+++ b/src/mame/drivers/dunhuang.c
@@ -837,6 +837,7 @@ static MACHINE_CONFIG_START( dunhuang, dunhuang_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0+8, 512-8-1, 0+16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(dunhuang_state, screen_update_dunhuang)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dunhuang)
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/dynadice.c b/src/mame/drivers/dynadice.c
index 1d09f5cec43..0eb3795089b 100644
--- a/src/mame/drivers/dynadice.c
+++ b/src/mame/drivers/dynadice.c
@@ -263,6 +263,7 @@ static MACHINE_CONFIG_START( dynadice, dynadice_state )
MCFG_SCREEN_SIZE(256+16, 256)
MCFG_SCREEN_VISIBLE_AREA(0*8, 34*8-1, 3*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dynadice_state, screen_update_dynadice)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dynadice)
MCFG_PALETTE_ADD("palette", 8)
diff --git a/src/mame/drivers/dynax.c b/src/mame/drivers/dynax.c
index 857911eadf1..edd2f59e894 100644
--- a/src/mame/drivers/dynax.c
+++ b/src/mame/drivers/dynax.c
@@ -4094,6 +4094,7 @@ static MACHINE_CONFIG_START( hanamai, dynax_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1-4, 16+8, 255-8)
MCFG_SCREEN_UPDATE_DRIVER(dynax_state, screen_update_hanamai)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 512)
@@ -4152,6 +4153,7 @@ static MACHINE_CONFIG_START( hnoridur, dynax_state )
MCFG_SCREEN_SIZE(512, 256+22)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1-4, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(dynax_state, screen_update_hnoridur)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16*256)
@@ -4197,6 +4199,7 @@ static MACHINE_CONFIG_START( hjingi, dynax_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1-4, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(dynax_state, screen_update_hnoridur)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16*256)
@@ -4252,6 +4255,7 @@ static MACHINE_CONFIG_START( sprtmtch, dynax_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(dynax_state, screen_update_sprtmtch)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 512)
@@ -4295,6 +4299,7 @@ static MACHINE_CONFIG_START( mjfriday, dynax_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(dynax_state, screen_update_mjdialq2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 512)
@@ -4446,6 +4451,7 @@ static MACHINE_CONFIG_START( jantouki, dynax_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(dynax_state, screen_update_jantouki_top)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("bottom", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -4453,6 +4459,7 @@ static MACHINE_CONFIG_START( jantouki, dynax_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(dynax_state, screen_update_jantouki_bottom)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(dynax_state,jantouki)
@@ -4638,6 +4645,7 @@ static MACHINE_CONFIG_START( tenkai, dynax_state )
MCFG_SCREEN_SIZE(512, 256+22)
MCFG_SCREEN_VISIBLE_AREA(4, 512-1, 4, 255-8-4) // hide first 4 horizontal pixels (see scroll of gal 4 in test mode)
MCFG_SCREEN_UPDATE_DRIVER(dynax_state, screen_update_hnoridur)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16*256)
@@ -4707,6 +4715,7 @@ static MACHINE_CONFIG_START( gekisha, dynax_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(2, 256-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(dynax_state, screen_update_mjdialq2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 512)
MCFG_PALETTE_INIT_OWNER(dynax_state,sprtmtch) // static palette
diff --git a/src/mame/drivers/dynduke.c b/src/mame/drivers/dynduke.c
index 041c4176969..7893e5bbef3 100644
--- a/src/mame/drivers/dynduke.c
+++ b/src/mame/drivers/dynduke.c
@@ -294,6 +294,7 @@ static MACHINE_CONFIG_START( dynduke, dynduke_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(dynduke_state, screen_update_dynduke)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dynduke)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/egghunt.c b/src/mame/drivers/egghunt.c
index 3fdd1ac4316..63628febcfe 100644
--- a/src/mame/drivers/egghunt.c
+++ b/src/mame/drivers/egghunt.c
@@ -429,6 +429,7 @@ static MACHINE_CONFIG_START( egghunt, egghunt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(8*8, 56*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(egghunt_state, screen_update_egghunt)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", egghunt)
diff --git a/src/mame/drivers/eolith.c b/src/mame/drivers/eolith.c
index 4c166abbdbd..0e57dfe145d 100644
--- a/src/mame/drivers/eolith.c
+++ b/src/mame/drivers/eolith.c
@@ -591,6 +591,7 @@ static MACHINE_CONFIG_START( eolith45, eolith_state )
MCFG_SCREEN_SIZE(512, 262)
MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(eolith_state, screen_update_eolith)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_RRRRRGGGGGBBBBB("palette")
diff --git a/src/mame/drivers/eolith16.c b/src/mame/drivers/eolith16.c
index ce511d71275..cdf4e2069e2 100644
--- a/src/mame/drivers/eolith16.c
+++ b/src/mame/drivers/eolith16.c
@@ -178,6 +178,7 @@ static MACHINE_CONFIG_START( eolith16, eolith16_state )
MCFG_SCREEN_SIZE(512, 262)
MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 199)
MCFG_SCREEN_UPDATE_DRIVER(eolith16_state, screen_update_eolith16)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/eprom.c b/src/mame/drivers/eprom.c
index 73ba384e9d0..cfdec536b0b 100644
--- a/src/mame/drivers/eprom.c
+++ b/src/mame/drivers/eprom.c
@@ -410,6 +410,7 @@ static MACHINE_CONFIG_START( eprom, eprom_state )
/* the board uses a SYNGEN chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(eprom_state, screen_update_eprom)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(eprom_state,eprom)
@@ -451,6 +452,7 @@ static MACHINE_CONFIG_START( klaxp, eprom_state )
/* the board uses a SYNGEN chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(eprom_state, screen_update_eprom)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(eprom_state,eprom)
@@ -491,6 +493,7 @@ static MACHINE_CONFIG_START( guts, eprom_state )
/* the board uses a SYNGEN chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(eprom_state, screen_update_guts)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(eprom_state,guts)
diff --git a/src/mame/drivers/equites.c b/src/mame/drivers/equites.c
index d718ffed06c..a3b1a44b849 100644
--- a/src/mame/drivers/equites.c
+++ b/src/mame/drivers/equites.c
@@ -1238,6 +1238,7 @@ static MACHINE_CONFIG_START( equites, equites_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 3*8, 29*8-1)
MCFG_SCREEN_UPDATE_DRIVER(equites_state, screen_update_equites)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", equites)
MCFG_PALETTE_ADD("palette", 0x180)
@@ -1277,6 +1278,7 @@ static MACHINE_CONFIG_START( splndrbt, equites_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(equites_state, screen_update_splndrbt)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", splndrbt)
MCFG_PALETTE_ADD("palette", 0x280)
diff --git a/src/mame/drivers/esd16.c b/src/mame/drivers/esd16.c
index 37b167fa9d8..b6f475644bc 100644
--- a/src/mame/drivers/esd16.c
+++ b/src/mame/drivers/esd16.c
@@ -620,6 +620,7 @@ static MACHINE_CONFIG_START( esd16, esd16_state )
MCFG_SCREEN_SIZE(0x140, 0x100)
MCFG_SCREEN_VISIBLE_AREA(0, 0x140-1, 0+8, 0x100-8-1)
MCFG_SCREEN_UPDATE_DRIVER(esd16_state, screen_update_hedpanic)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEVICE_ADD("spritegen", DECO_SPRITE, 0)
decospr_device::set_gfx_region(*device, 0);
diff --git a/src/mame/drivers/espial.c b/src/mame/drivers/espial.c
index 310e6bc30bc..d16a996c437 100644
--- a/src/mame/drivers/espial.c
+++ b/src/mame/drivers/espial.c
@@ -330,6 +330,7 @@ static MACHINE_CONFIG_START( espial, espial_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(espial_state, screen_update_espial)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", espial)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/ettrivia.c b/src/mame/drivers/ettrivia.c
index 1d093997c2f..0fbf26bac15 100644
--- a/src/mame/drivers/ettrivia.c
+++ b/src/mame/drivers/ettrivia.c
@@ -317,6 +317,7 @@ static MACHINE_CONFIG_START( ettrivia, ettrivia_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ettrivia_state, screen_update_ettrivia)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ettrivia)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/exedexes.c b/src/mame/drivers/exedexes.c
index ef272f650e6..ef65b6312ca 100644
--- a/src/mame/drivers/exedexes.c
+++ b/src/mame/drivers/exedexes.c
@@ -233,6 +233,7 @@ static MACHINE_CONFIG_START( exedexes, exedexes_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(exedexes_state, screen_update_exedexes)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", exedexes)
diff --git a/src/mame/drivers/exerion.c b/src/mame/drivers/exerion.c
index 11ab5ec66f0..0a6aeb81efa 100644
--- a/src/mame/drivers/exerion.c
+++ b/src/mame/drivers/exerion.c
@@ -399,7 +399,8 @@ static MACHINE_CONFIG_START( exerion, exerion_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(EXERION_PIXEL_CLOCK, EXERION_HTOTAL, EXERION_HBEND, EXERION_HBSTART, EXERION_VTOTAL, EXERION_VBEND, EXERION_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(exerion_state, screen_update_exerion)
-
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", exerion)
MCFG_PALETTE_ADD("palette", 256*3)
MCFG_PALETTE_INDIRECT_ENTRIES(32)
diff --git a/src/mame/drivers/exidy.c b/src/mame/drivers/exidy.c
index e7524db6355..78d6fa368e6 100644
--- a/src/mame/drivers/exidy.c
+++ b/src/mame/drivers/exidy.c
@@ -817,6 +817,7 @@ static MACHINE_CONFIG_START( base, exidy_state )
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
MCFG_SCREEN_RAW_PARAMS(EXIDY_PIXEL_CLOCK, EXIDY_HTOTAL, EXIDY_HBEND, EXIDY_HBSTART, EXIDY_VTOTAL, EXIDY_VBEND, EXIDY_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(exidy_state, screen_update_exidy)
+ MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/expro02.c b/src/mame/drivers/expro02.c
index ade25ce83f9..a149fbdd7de 100644
--- a/src/mame/drivers/expro02.c
+++ b/src/mame/drivers/expro02.c
@@ -560,6 +560,7 @@ static MACHINE_CONFIG_START( galsnew, expro02_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-32-1)
MCFG_SCREEN_UPDATE_DRIVER(expro02_state, screen_update_galsnew)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 1x4bit_1x4bit)
MCFG_PALETTE_ADD("palette", 2048 + 32768)
diff --git a/src/mame/drivers/exprraid.c b/src/mame/drivers/exprraid.c
index 25e29e99e99..e8afbd4e5d4 100644
--- a/src/mame/drivers/exprraid.c
+++ b/src/mame/drivers/exprraid.c
@@ -515,6 +515,7 @@ static MACHINE_CONFIG_START( exprraid, exprraid_state )
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_RAW_PARAMS(XTAL_12MHz/2, 384, 0, 256, 262, 8, 256-8) /* not accurate */
MCFG_SCREEN_UPDATE_DRIVER(exprraid_state, screen_update_exprraid)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", exprraid)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
diff --git a/src/mame/drivers/exterm.c b/src/mame/drivers/exterm.c
index 74c9187c379..7b070ab24fc 100644
--- a/src/mame/drivers/exterm.c
+++ b/src/mame/drivers/exterm.c
@@ -465,6 +465,7 @@ static MACHINE_CONFIG_START( exterm, exterm_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(40000000/8, 318, 0, 256, 264, 0, 240)
MCFG_SCREEN_UPDATE_DEVICE("maincpu", tms34010_device, tms340x0_ind16)
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
diff --git a/src/mame/drivers/exzisus.c b/src/mame/drivers/exzisus.c
index ecc6d286139..28ac7ff2413 100644
--- a/src/mame/drivers/exzisus.c
+++ b/src/mame/drivers/exzisus.c
@@ -285,6 +285,7 @@ static MACHINE_CONFIG_START( exzisus, exzisus_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(exzisus_state, screen_update_exzisus)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", exzisus)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 1024)
diff --git a/src/mame/drivers/f-32.c b/src/mame/drivers/f-32.c
index 600d872ad48..ba8d56c9989 100644
--- a/src/mame/drivers/f-32.c
+++ b/src/mame/drivers/f-32.c
@@ -148,6 +148,7 @@ static MACHINE_CONFIG_START( mosaicf2, mosaicf2_state )
MCFG_SCREEN_SIZE(512, 512)
MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 223)
MCFG_SCREEN_UPDATE_DRIVER(mosaicf2_state, screen_update_mosaicf2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_RRRRRGGGGGBBBBB("palette")
diff --git a/src/mame/drivers/f1gp.c b/src/mame/drivers/f1gp.c
index b297fd68ed4..155f412926a 100644
--- a/src/mame/drivers/f1gp.c
+++ b/src/mame/drivers/f1gp.c
@@ -430,6 +430,7 @@ static MACHINE_CONFIG_START( f1gp, f1gp_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(f1gp_state, screen_update_f1gp)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", f1gp)
MCFG_PALETTE_ADD("palette", 2048)
@@ -488,6 +489,7 @@ static MACHINE_CONFIG_START( f1gpb, f1gp_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(f1gp_state, screen_update_f1gpb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", f1gp)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/famibox.c b/src/mame/drivers/famibox.c
index e35eab57dd2..540b2ee71df 100644
--- a/src/mame/drivers/famibox.c
+++ b/src/mame/drivers/famibox.c
@@ -590,6 +590,7 @@ static MACHINE_CONFIG_START( famibox, famibox_state )
MCFG_SCREEN_SIZE(32*8, 262)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(famibox_state, screen_update_famibox)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", famibox)
MCFG_PALETTE_ADD("palette", 8*4*16)
diff --git a/src/mame/drivers/fantland.c b/src/mame/drivers/fantland.c
index 08591b89032..cca9f8e48a4 100644
--- a/src/mame/drivers/fantland.c
+++ b/src/mame/drivers/fantland.c
@@ -859,6 +859,7 @@ static MACHINE_CONFIG_START( fantland, fantland_state )
MCFG_SCREEN_SIZE(352,256)
MCFG_SCREEN_VISIBLE_AREA(0, 352-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(fantland_state, screen_update_fantland)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fantland)
MCFG_PALETTE_ADD("palette", 256)
@@ -903,6 +904,7 @@ static MACHINE_CONFIG_START( galaxygn, fantland_state )
MCFG_SCREEN_SIZE(352,256)
MCFG_SCREEN_VISIBLE_AREA(0, 352-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(fantland_state, screen_update_fantland)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fantland)
MCFG_PALETTE_ADD("palette", 256)
@@ -1002,6 +1004,7 @@ static MACHINE_CONFIG_START( borntofi, fantland_state )
MCFG_SCREEN_SIZE(352,256)
MCFG_SCREEN_VISIBLE_AREA(0, 352-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(fantland_state, screen_update_fantland)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fantland)
MCFG_PALETTE_ADD("palette", 256)
@@ -1038,6 +1041,7 @@ static MACHINE_CONFIG_START( wheelrun, fantland_state )
MCFG_SCREEN_SIZE(256,224)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(fantland_state, screen_update_fantland)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fantland)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/fastfred.c b/src/mame/drivers/fastfred.c
index 8362f1f9eda..562392be351 100644
--- a/src/mame/drivers/fastfred.c
+++ b/src/mame/drivers/fastfred.c
@@ -652,6 +652,7 @@ static MACHINE_CONFIG_START( fastfred, fastfred_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(fastfred_state, screen_update_fastfred)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fastfred)
diff --git a/src/mame/drivers/fastlane.c b/src/mame/drivers/fastlane.c
index eababee7751..2094ce48068 100644
--- a/src/mame/drivers/fastlane.c
+++ b/src/mame/drivers/fastlane.c
@@ -206,6 +206,7 @@ static MACHINE_CONFIG_START( fastlane, fastlane_state )
MCFG_SCREEN_SIZE(37*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 35*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(fastlane_state, screen_update_fastlane)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fastlane)
MCFG_PALETTE_ADD("palette", 1024*16)
diff --git a/src/mame/drivers/fcombat.c b/src/mame/drivers/fcombat.c
index 32c197fb557..6b3b1888db6 100644
--- a/src/mame/drivers/fcombat.c
+++ b/src/mame/drivers/fcombat.c
@@ -293,6 +293,7 @@ static MACHINE_CONFIG_START( fcombat, fcombat_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(FCOMBAT_PIXEL_CLOCK, FCOMBAT_HTOTAL, FCOMBAT_HBEND, FCOMBAT_HBSTART, FCOMBAT_VTOTAL, FCOMBAT_VBEND, FCOMBAT_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(fcombat_state, screen_update_fcombat)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fcombat)
MCFG_PALETTE_ADD("palette", 256*3)
diff --git a/src/mame/drivers/fcrash.c b/src/mame/drivers/fcrash.c
index cb68d823707..fcda3cca1ab 100644
--- a/src/mame/drivers/fcrash.c
+++ b/src/mame/drivers/fcrash.c
@@ -1488,6 +1488,7 @@ static MACHINE_CONFIG_START( fcrash, cps_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(cps_state, screen_update_fcrash)
MCFG_SCREEN_VBLANK_DRIVER(cps_state, screen_eof_cps1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cps1)
MCFG_PALETTE_ADD("palette", 4096)
@@ -1546,6 +1547,7 @@ static MACHINE_CONFIG_START( kodb, cps_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(cps_state, screen_update_fcrash)
MCFG_SCREEN_VBLANK_DRIVER(cps_state, screen_eof_cps1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cps1)
MCFG_PALETTE_ADD("palette", 0xc00)
@@ -1586,6 +1588,7 @@ static MACHINE_CONFIG_START( sf2mdt, cps_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(cps_state, screen_update_fcrash)
MCFG_SCREEN_VBLANK_DRIVER(cps_state, screen_eof_cps1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cps1)
MCFG_PALETTE_ADD("palette", 4096)
@@ -1629,6 +1632,7 @@ static MACHINE_CONFIG_START( knightsb, cps_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(cps_state, screen_update_fcrash)
MCFG_SCREEN_VBLANK_DRIVER(cps_state, screen_eof_cps1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cps1)
MCFG_PALETTE_ADD("palette", 0xc00)
@@ -1968,6 +1972,7 @@ static MACHINE_CONFIG_START( dinopic, cps_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(cps_state, screen_update_fcrash)
MCFG_SCREEN_VBLANK_DRIVER(cps_state, screen_eof_cps1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cps1)
MCFG_PALETTE_ADD("palette", 0xc00)
@@ -2121,6 +2126,7 @@ static MACHINE_CONFIG_START( sgyxz, cps_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(cps_state, screen_update_fcrash)
MCFG_SCREEN_VBLANK_DRIVER(cps_state, screen_eof_cps1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cps1)
MCFG_PALETTE_ADD("palette", 0xc00)
MCFG_VIDEO_START_OVERRIDE(cps_state,cps1)
@@ -2213,6 +2219,7 @@ static MACHINE_CONFIG_START( punipic, cps_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(cps_state, screen_update_fcrash)
MCFG_SCREEN_VBLANK_DRIVER(cps_state, screen_eof_cps1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cps1)
MCFG_PALETTE_ADD("palette", 0xc00)
@@ -2400,6 +2407,8 @@ static MACHINE_CONFIG_START( sf2m1, cps_state )
MCFG_SCREEN_RAW_PARAMS(XTAL_16MHz/2, 518, 64, 448, 259, 16, 240)
MCFG_SCREEN_UPDATE_DRIVER(cps_state, screen_update_fcrash)
MCFG_SCREEN_VBLANK_DRIVER(cps_state, screen_eof_cps1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", cps1)
MCFG_PALETTE_ADD("palette", 0xc00)
MCFG_VIDEO_START_OVERRIDE(cps_state,cps1)
@@ -2603,6 +2612,7 @@ static MACHINE_CONFIG_START( slampic, cps_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(cps_state, screen_update_fcrash)
MCFG_SCREEN_VBLANK_DRIVER(cps_state, screen_eof_cps1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cps1)
MCFG_PALETTE_ADD("palette", 0xc00)
diff --git a/src/mame/drivers/feversoc.c b/src/mame/drivers/feversoc.c
index 8f8f34c8d59..d6f853bfec9 100644
--- a/src/mame/drivers/feversoc.c
+++ b/src/mame/drivers/feversoc.c
@@ -256,8 +256,9 @@ static MACHINE_CONFIG_START( feversoc, feversoc_state )
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(40*8, 32*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1) //dynamic resolution?
+ MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1) //dynamic resolution?
MCFG_SCREEN_UPDATE_DRIVER(feversoc_state, screen_update_feversoc)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", feversoc)
MCFG_PALETTE_ADD("palette", 0x1000)
diff --git a/src/mame/drivers/fgoal.c b/src/mame/drivers/fgoal.c
index ba22042dc75..ebd510f78b5 100644
--- a/src/mame/drivers/fgoal.c
+++ b/src/mame/drivers/fgoal.c
@@ -376,6 +376,7 @@ static MACHINE_CONFIG_START( fgoal, fgoal_state )
MCFG_SCREEN_SIZE(256, 263)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 16, 255)
MCFG_SCREEN_UPDATE_DRIVER(fgoal_state, screen_update_fgoal)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fgoal)
MCFG_PALETTE_ADD("palette", 128 + 16 + 1)
diff --git a/src/mame/drivers/finalizr.c b/src/mame/drivers/finalizr.c
index c6c7783479c..9c9821b3f2c 100644
--- a/src/mame/drivers/finalizr.c
+++ b/src/mame/drivers/finalizr.c
@@ -269,6 +269,7 @@ static MACHINE_CONFIG_START( finalizr, finalizr_state )
MCFG_SCREEN_SIZE(36*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(1*8, 35*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(finalizr_state, screen_update_finalizr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", finalizr)
MCFG_PALETTE_ADD("palette", 2*16*16)
diff --git a/src/mame/drivers/firebeat.c b/src/mame/drivers/firebeat.c
index 079decc967e..3130a9b45ae 100644
--- a/src/mame/drivers/firebeat.c
+++ b/src/mame/drivers/firebeat.c
@@ -1770,6 +1770,7 @@ static MACHINE_CONFIG_START( firebeat, firebeat_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 479)
MCFG_SCREEN_UPDATE_DRIVER(firebeat_state, screen_update_firebeat_0)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(firebeat_state,firebeat)
@@ -1817,6 +1818,7 @@ static MACHINE_CONFIG_START( firebeat2, firebeat_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 479)
MCFG_SCREEN_UPDATE_DRIVER(firebeat_state, screen_update_firebeat_0)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("rscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -1824,6 +1826,7 @@ static MACHINE_CONFIG_START( firebeat2, firebeat_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 479)
MCFG_SCREEN_UPDATE_DRIVER(firebeat_state, screen_update_firebeat_1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(firebeat_state,firebeat)
diff --git a/src/mame/drivers/firetrap.c b/src/mame/drivers/firetrap.c
index f11e7ab1316..aef1f0b3f7e 100644
--- a/src/mame/drivers/firetrap.c
+++ b/src/mame/drivers/firetrap.c
@@ -649,6 +649,7 @@ static MACHINE_CONFIG_START( firetrap, firetrap_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(firetrap_state, screen_update_firetrap)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", firetrap)
MCFG_PALETTE_ADD("palette", 256)
@@ -685,6 +686,7 @@ static MACHINE_CONFIG_START( firetrapbl, firetrap_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(firetrap_state, screen_update_firetrap)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", firetrap)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/firetrk.c b/src/mame/drivers/firetrk.c
index e885bdb00e1..cfb2d3c355f 100644
--- a/src/mame/drivers/firetrk.c
+++ b/src/mame/drivers/firetrk.c
@@ -864,6 +864,7 @@ static MACHINE_CONFIG_START( firetrk, firetrk_state )
MCFG_SCREEN_SIZE(320, 262)
MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(firetrk_state, screen_update_firetrk)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 28)
MCFG_PALETTE_INIT_OWNER(firetrk_state, firetrk)
diff --git a/src/mame/drivers/fitfight.c b/src/mame/drivers/fitfight.c
index 590b0e0d585..242154b74c8 100644
--- a/src/mame/drivers/fitfight.c
+++ b/src/mame/drivers/fitfight.c
@@ -743,6 +743,7 @@ static MACHINE_CONFIG_START( fitfight, fitfight_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(2*8, 39*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(fitfight_state, screen_update_fitfight)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x800)
MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
@@ -769,6 +770,7 @@ static MACHINE_CONFIG_START( bbprot, fitfight_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(2*8, 39*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(fitfight_state, screen_update_fitfight)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x2000)
MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
diff --git a/src/mame/drivers/flkatck.c b/src/mame/drivers/flkatck.c
index 6c6ee4c19b3..696862e3804 100644
--- a/src/mame/drivers/flkatck.c
+++ b/src/mame/drivers/flkatck.c
@@ -222,6 +222,7 @@ static MACHINE_CONFIG_START( flkatck, flkatck_state )
MCFG_SCREEN_SIZE(37*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 35*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(flkatck_state, screen_update_flkatck)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", flkatck)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/flower.c b/src/mame/drivers/flower.c
index 60a657922e1..21630961b66 100644
--- a/src/mame/drivers/flower.c
+++ b/src/mame/drivers/flower.c
@@ -272,6 +272,7 @@ static MACHINE_CONFIG_START( flower, flower_state )
MCFG_SCREEN_SIZE(34*8, 33*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 34*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(flower_state, screen_update_flower)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", flower)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
diff --git a/src/mame/drivers/flstory.c b/src/mame/drivers/flstory.c
index 1418f406375..ef524f17992 100644
--- a/src/mame/drivers/flstory.c
+++ b/src/mame/drivers/flstory.c
@@ -1082,6 +1082,7 @@ static MACHINE_CONFIG_START( flstory, flstory_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(flstory_state, screen_update_flstory)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", flstory)
MCFG_PALETTE_ADD("palette", 512)
@@ -1140,6 +1141,7 @@ static MACHINE_CONFIG_START( onna34ro, flstory_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(flstory_state, screen_update_flstory)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", flstory)
MCFG_PALETTE_ADD("palette", 512)
@@ -1198,6 +1200,7 @@ static MACHINE_CONFIG_START( victnine, flstory_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(flstory_state, screen_update_victnine)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", flstory)
MCFG_PALETTE_ADD("palette", 512)
@@ -1262,6 +1265,7 @@ static MACHINE_CONFIG_START( rumba, flstory_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(flstory_state, screen_update_rumba)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", flstory)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/flyball.c b/src/mame/drivers/flyball.c
index b8facd822d0..9c678e81b92 100644
--- a/src/mame/drivers/flyball.c
+++ b/src/mame/drivers/flyball.c
@@ -454,6 +454,7 @@ static MACHINE_CONFIG_START( flyball, flyball_state )
MCFG_SCREEN_SIZE(256, 262)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(flyball_state, screen_update_flyball)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", flyball)
MCFG_PALETTE_ADD("palette", 4)
diff --git a/src/mame/drivers/foodf.c b/src/mame/drivers/foodf.c
index b70327da47b..f8eddd4b303 100644
--- a/src/mame/drivers/foodf.c
+++ b/src/mame/drivers/foodf.c
@@ -374,6 +374,7 @@ static MACHINE_CONFIG_START( foodf, foodf_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/2, 384, 0, 256, 259, 0, 224)
MCFG_SCREEN_UPDATE_DRIVER(foodf_state, screen_update_foodf)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(foodf_state,foodf)
diff --git a/src/mame/drivers/fortecar.c b/src/mame/drivers/fortecar.c
index 20067ee6240..c580ac79561 100644
--- a/src/mame/drivers/fortecar.c
+++ b/src/mame/drivers/fortecar.c
@@ -692,6 +692,7 @@ static MACHINE_CONFIG_START( fortecar, fortecar_state )
MCFG_SCREEN_SIZE(640, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 600-1, 0, 240-1) /* driven by CRTC */
MCFG_SCREEN_UPDATE_DRIVER(fortecar_state, screen_update_fortecar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_EEPROM_SERIAL_93C56_ADD("eeprom")
diff --git a/src/mame/drivers/freekick.c b/src/mame/drivers/freekick.c
index ead25abeb1b..fd87a2c8868 100644
--- a/src/mame/drivers/freekick.c
+++ b/src/mame/drivers/freekick.c
@@ -636,6 +636,7 @@ static MACHINE_CONFIG_START( base, freekick_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL_12MHz/2, 768/2, 0, 512/2, 263, 0+16, 224+16)
MCFG_SCREEN_UPDATE_DRIVER(freekick_state, screen_update_pbillrd)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", freekick)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 0x200)
diff --git a/src/mame/drivers/fresh.c b/src/mame/drivers/fresh.c
index e9ed6bc6fc9..c4676325fc6 100644
--- a/src/mame/drivers/fresh.c
+++ b/src/mame/drivers/fresh.c
@@ -599,6 +599,7 @@ static MACHINE_CONFIG_START( fresh, fresh_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(fresh_state, screen_update_fresh)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x1000) // or 0xc00
MCFG_PALETTE_FORMAT(XBGR)
diff --git a/src/mame/drivers/fromanc2.c b/src/mame/drivers/fromanc2.c
index fd1656aee74..d8a5d60b603 100644
--- a/src/mame/drivers/fromanc2.c
+++ b/src/mame/drivers/fromanc2.c
@@ -547,6 +547,7 @@ static MACHINE_CONFIG_START( fromanc2, fromanc2_state )
MCFG_SCREEN_SIZE(512, 512)
MCFG_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(fromanc2_state, screen_update_fromanc2_left)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("rscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -554,6 +555,7 @@ static MACHINE_CONFIG_START( fromanc2, fromanc2_state )
MCFG_SCREEN_SIZE(512, 512)
MCFG_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(fromanc2_state, screen_update_fromanc2_right)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(fromanc2_state,fromanc2)
@@ -597,6 +599,7 @@ static MACHINE_CONFIG_START( fromancr, fromanc2_state )
MCFG_SCREEN_SIZE(512, 512)
MCFG_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(fromanc2_state, screen_update_fromanc2_left)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("rscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -604,6 +607,7 @@ static MACHINE_CONFIG_START( fromancr, fromanc2_state )
MCFG_SCREEN_SIZE(512, 512)
MCFG_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(fromanc2_state, screen_update_fromanc2_right)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(fromanc2_state,fromancr)
@@ -644,6 +648,7 @@ static MACHINE_CONFIG_START( fromanc4, fromanc2_state )
MCFG_SCREEN_SIZE(2048, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(fromanc2_state, screen_update_fromanc2_left)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("rscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -651,6 +656,7 @@ static MACHINE_CONFIG_START( fromanc4, fromanc2_state )
MCFG_SCREEN_SIZE(512, 512)
MCFG_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(fromanc2_state, screen_update_fromanc2_right)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(fromanc2_state,fromanc4)
diff --git a/src/mame/drivers/fromance.c b/src/mame/drivers/fromance.c
index 842d5ef3bdc..8d40c06fd68 100644
--- a/src/mame/drivers/fromance.c
+++ b/src/mame/drivers/fromance.c
@@ -1041,6 +1041,7 @@ static MACHINE_CONFIG_START( nekkyoku, fromance_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(fromance_state, screen_update_fromance)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fromance)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1079,6 +1080,7 @@ static MACHINE_CONFIG_START( idolmj, fromance_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(fromance_state, screen_update_fromance)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fromance)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1117,6 +1119,7 @@ static MACHINE_CONFIG_START( fromance, fromance_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(fromance_state, screen_update_fromance)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fromance)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/funkybee.c b/src/mame/drivers/funkybee.c
index e124dbf777f..8bf54f67df5 100644
--- a/src/mame/drivers/funkybee.c
+++ b/src/mame/drivers/funkybee.c
@@ -304,6 +304,7 @@ static MACHINE_CONFIG_START( funkybee, funkybee_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(12, 32*8-8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(funkybee_state, screen_update_funkybee)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", funkybee)
MCFG_PALETTE_ADD("palette", 32)
diff --git a/src/mame/drivers/funkyjet.c b/src/mame/drivers/funkyjet.c
index 1da2c73740b..749a2b9a0bb 100644
--- a/src/mame/drivers/funkyjet.c
+++ b/src/mame/drivers/funkyjet.c
@@ -332,6 +332,7 @@ static MACHINE_CONFIG_START( funkyjet, funkyjet_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(funkyjet_state, screen_update_funkyjet)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DECO146_ADD("ioprot")
MCFG_DECO146_SET_INTERFACE_SCRAMBLE_INTERLEAVE
diff --git a/src/mame/drivers/funworld.c b/src/mame/drivers/funworld.c
index 9635ccfd4c8..8563170b2f1 100644
--- a/src/mame/drivers/funworld.c
+++ b/src/mame/drivers/funworld.c
@@ -2949,6 +2949,7 @@ static MACHINE_CONFIG_START( fw1stpal, funworld_state )
MCFG_SCREEN_SIZE((124+1)*4, (30+1)*8) /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1) */
MCFG_SCREEN_VISIBLE_AREA(0*4, 96*4-1, 0*8, 29*8-1) /* Taken from MC6845 init, registers 01 & 06 */
MCFG_SCREEN_UPDATE_DRIVER(funworld_state, screen_update_funworld)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fw1stpal)
diff --git a/src/mame/drivers/funybubl.c b/src/mame/drivers/funybubl.c
index 53c85fdc37c..a53d7d915b1 100644
--- a/src/mame/drivers/funybubl.c
+++ b/src/mame/drivers/funybubl.c
@@ -232,6 +232,7 @@ static MACHINE_CONFIG_START( funybubl, funybubl_state )
MCFG_SCREEN_VISIBLE_AREA(12*8, 512-12*8-1, 16, 256-16-1)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(funybubl_state, screen_update_funybubl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", funybubl)
MCFG_PALETTE_ADD("palette", 0x400)
diff --git a/src/mame/drivers/fuukifg2.c b/src/mame/drivers/fuukifg2.c
index 5d37389987d..8e4b78d52bb 100644
--- a/src/mame/drivers/fuukifg2.c
+++ b/src/mame/drivers/fuukifg2.c
@@ -464,6 +464,7 @@ static MACHINE_CONFIG_START( fuuki16, fuuki16_state )
MCFG_SCREEN_SIZE(320, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(fuuki16_state, screen_update_fuuki16)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fuuki16)
MCFG_PALETTE_ADD("palette", 0x800*4)
diff --git a/src/mame/drivers/fuukifg3.c b/src/mame/drivers/fuukifg3.c
index 46f15fb0991..7573954385e 100644
--- a/src/mame/drivers/fuukifg3.c
+++ b/src/mame/drivers/fuukifg3.c
@@ -563,6 +563,7 @@ static MACHINE_CONFIG_START( fuuki32, fuuki32_state )
MCFG_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(fuuki32_state, screen_update_fuuki32)
MCFG_SCREEN_VBLANK_DRIVER(fuuki32_state, screen_eof_fuuki32)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fuuki32)
MCFG_PALETTE_ADD("palette", 0x4000/2)
diff --git a/src/mame/drivers/gaelco.c b/src/mame/drivers/gaelco.c
index 38b73625a68..5a0ad561993 100644
--- a/src/mame/drivers/gaelco.c
+++ b/src/mame/drivers/gaelco.c
@@ -514,6 +514,7 @@ static MACHINE_CONFIG_START( bigkarnk, gaelco_state )
MCFG_SCREEN_SIZE(32*16, 32*16)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(gaelco_state, screen_update_bigkarnk)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 0x100000)
MCFG_PALETTE_ADD("palette", 1024)
@@ -546,6 +547,7 @@ static MACHINE_CONFIG_START( maniacsq, gaelco_state )
MCFG_SCREEN_SIZE(32*16, 32*16)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(gaelco_state, screen_update_maniacsq)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 0x100000)
MCFG_PALETTE_ADD("palette", 1024)
@@ -577,6 +579,7 @@ static MACHINE_CONFIG_START( squash, gaelco_state )
MCFG_SCREEN_SIZE(32*16, 32*16)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(gaelco_state, screen_update_maniacsq)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 0x100000)
MCFG_PALETTE_ADD("palette", 1024)
@@ -608,6 +611,7 @@ static MACHINE_CONFIG_START( thoop, gaelco_state )
MCFG_SCREEN_SIZE(32*16, 32*16)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(gaelco_state, screen_update_maniacsq)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 0x100000)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/gaelco2.c b/src/mame/drivers/gaelco2.c
index 57483239bfe..e6f73b5d609 100644
--- a/src/mame/drivers/gaelco2.c
+++ b/src/mame/drivers/gaelco2.c
@@ -169,6 +169,7 @@ static MACHINE_CONFIG_START( maniacsq, gaelco2_state )
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(gaelco2_state, screen_update_gaelco2)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 0x0080000)
MCFG_PALETTE_ADD("palette", 4096*16 - 16) /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
@@ -289,6 +290,7 @@ static MACHINE_CONFIG_START( bang, gaelco2_state )
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(gaelco2_state, screen_update_gaelco2)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 0x0200000)
MCFG_PALETTE_ADD("palette", 4096*16 - 16) /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
@@ -530,6 +532,7 @@ static MACHINE_CONFIG_START( alighunt, gaelco2_state )
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(gaelco2_state, screen_update_gaelco2)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 0x0400000)
MCFG_PALETTE_ADD("palette", 4096*16 - 16) /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
@@ -774,6 +777,7 @@ static MACHINE_CONFIG_START( touchgo, gaelco2_state )
MCFG_SCREEN_SIZE(64*16, 32*16)
MCFG_SCREEN_VISIBLE_AREA(0, 480-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(gaelco2_state, screen_update_gaelco2_left)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("rscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(59.1)
@@ -782,6 +786,7 @@ static MACHINE_CONFIG_START( touchgo, gaelco2_state )
MCFG_SCREEN_VISIBLE_AREA(0, 480-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(gaelco2_state, screen_update_gaelco2_right)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(gaelco2_state,gaelco2_dual)
@@ -966,6 +971,7 @@ static MACHINE_CONFIG_START( snowboar, gaelco2_state )
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(gaelco2_state, screen_update_gaelco2)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 0x0400000)
MCFG_PALETTE_ADD("palette", 4096*16 - 16) /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
@@ -1209,6 +1215,7 @@ static MACHINE_CONFIG_START( wrally2, gaelco2_state )
MCFG_SCREEN_SIZE(384, 32*16)
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(gaelco2_state, screen_update_gaelco2_left)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD("rscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(59.1)
@@ -1217,6 +1224,7 @@ static MACHINE_CONFIG_START( wrally2, gaelco2_state )
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(gaelco2_state, screen_update_gaelco2_right)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(gaelco2_state,gaelco2_dual)
diff --git a/src/mame/drivers/gaelco3d.c b/src/mame/drivers/gaelco3d.c
index ee3f60a9709..1f0c5de0a26 100644
--- a/src/mame/drivers/gaelco3d.c
+++ b/src/mame/drivers/gaelco3d.c
@@ -1002,6 +1002,7 @@ static MACHINE_CONFIG_START( gaelco3d, gaelco3d_state )
MCFG_SCREEN_SIZE(576, 432)
MCFG_SCREEN_VISIBLE_AREA(0, 575, 0, 431)
MCFG_SCREEN_UPDATE_DRIVER(gaelco3d_state, screen_update_gaelco3d)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_RRRRRGGGGGBBBBB("palette")
diff --git a/src/mame/drivers/gaiden.c b/src/mame/drivers/gaiden.c
index e11806ec9cf..dd668bfdb2a 100644
--- a/src/mame/drivers/gaiden.c
+++ b/src/mame/drivers/gaiden.c
@@ -827,6 +827,7 @@ static MACHINE_CONFIG_START( drgnbowl, gaiden_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gaiden_state, screen_update_drgnbowl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", drgnbowl)
MCFG_PALETTE_ADD("palette", 4096)
diff --git a/src/mame/drivers/galaga.c b/src/mame/drivers/galaga.c
index e4eddbaada6..b6c716a3ee6 100644
--- a/src/mame/drivers/galaga.c
+++ b/src/mame/drivers/galaga.c
@@ -1694,6 +1694,7 @@ static MACHINE_CONFIG_START( bosco, bosco_state )
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 0, 288, 264, 16, 224+16)
MCFG_SCREEN_UPDATE_DRIVER(bosco_state, screen_update_bosco)
MCFG_SCREEN_VBLANK_DRIVER(bosco_state, screen_eof_bosco)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bosco)
MCFG_PALETTE_ADD("palette", 64*4+64*4+4+64)
@@ -1750,6 +1751,7 @@ static MACHINE_CONFIG_START( galaga, galaga_state )
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 0, 288, 264, 0, 224)
MCFG_SCREEN_UPDATE_DRIVER(galaga_state, screen_update_galaga)
MCFG_SCREEN_VBLANK_DRIVER(galaga_state, screen_eof_galaga)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", galaga)
MCFG_PALETTE_ADD("palette", 64*4+64*4+64)
@@ -1827,6 +1829,7 @@ static MACHINE_CONFIG_START( xevious, xevious_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 0, 288, 264, 0, 224)
MCFG_SCREEN_UPDATE_DRIVER(xevious_state, screen_update_xevious)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", xevious)
MCFG_PALETTE_ADD("palette", 128*4+64*8+64*2)
@@ -1917,6 +1920,7 @@ static MACHINE_CONFIG_START( digdug, digdug_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 0, 288, 264, 0, 224)
MCFG_SCREEN_UPDATE_DRIVER(digdug_state, screen_update_digdug)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", digdug)
MCFG_PALETTE_ADD("palette", 16*2+64*4+64*4)
diff --git a/src/mame/drivers/galastrm.c b/src/mame/drivers/galastrm.c
index fd25c40ebda..1773a3395e6 100644
--- a/src/mame/drivers/galastrm.c
+++ b/src/mame/drivers/galastrm.c
@@ -311,6 +311,7 @@ static MACHINE_CONFIG_START( galastrm, galastrm_state )
MCFG_SCREEN_SIZE(64*8, 50*8)
MCFG_SCREEN_VISIBLE_AREA(0+96, 40*8-1+96, 3*8+60, 32*8-1+60)
MCFG_SCREEN_UPDATE_DRIVER(galastrm_state, screen_update_galastrm)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", galastrm)
MCFG_PALETTE_ADD("palette", 4096)
diff --git a/src/mame/drivers/galaxi.c b/src/mame/drivers/galaxi.c
index a1fbf61ee8d..9971d06b37e 100644
--- a/src/mame/drivers/galaxi.c
+++ b/src/mame/drivers/galaxi.c
@@ -421,6 +421,7 @@ static MACHINE_CONFIG_START( galaxi, galaxi_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(16*5, 512-16*2-1, 16*1, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(galaxi_state, screen_update_galaxi)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", galaxi)
MCFG_PALETTE_ADD("palette", 0x400)
diff --git a/src/mame/drivers/galaxia.c b/src/mame/drivers/galaxia.c
index da7a144a299..95e85631bf3 100644
--- a/src/mame/drivers/galaxia.c
+++ b/src/mame/drivers/galaxia.c
@@ -303,6 +303,7 @@ static MACHINE_CONFIG_START( galaxia, galaxia_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0*8, 30*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(galaxia_state, screen_update_galaxia)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", galaxia)
MCFG_PALETTE_ADD("palette", 0x18+2)
@@ -339,6 +340,7 @@ static MACHINE_CONFIG_START( astrowar, galaxia_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(galaxia_state, screen_update_astrowar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", astrowar)
MCFG_PALETTE_ADD("palette", 0x18+2)
diff --git a/src/mame/drivers/galaxold.c b/src/mame/drivers/galaxold.c
index fede945e0b0..c0ea25f10f2 100644
--- a/src/mame/drivers/galaxold.c
+++ b/src/mame/drivers/galaxold.c
@@ -2352,6 +2352,7 @@ static MACHINE_CONFIG_START( galaxold_base, galaxold_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(galaxold_state, screen_update_galaxold)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(galaxold_state,galaxold)
@@ -2548,6 +2549,7 @@ static MACHINE_CONFIG_START( drivfrcg, galaxold_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(galaxold_state, screen_update_galaxold)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 64)
MCFG_PALETTE_INIT_OWNER(galaxold_state,rockclim)
@@ -2624,6 +2626,7 @@ static MACHINE_CONFIG_START( racknrol, galaxold_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(galaxold_state, screen_update_galaxold)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(galaxold_state,racknrol)
@@ -2649,6 +2652,7 @@ static MACHINE_CONFIG_START( hexpoola, galaxold_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(galaxold_state, screen_update_galaxold)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(galaxold_state,racknrol)
diff --git a/src/mame/drivers/galgame.c b/src/mame/drivers/galgame.c
index e575588f709..37ba899f6ee 100644
--- a/src/mame/drivers/galgame.c
+++ b/src/mame/drivers/galgame.c
@@ -331,6 +331,7 @@ static MACHINE_CONFIG_START( galaxygame, galaxygame_state )
MCFG_SCREEN_SIZE(512, 512)
MCFG_SCREEN_VISIBLE_AREA(0, 511, 0, 511)
MCFG_SCREEN_UPDATE_DRIVER(galaxygame_state, screen_update_galaxygame)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mame/drivers/galivan.c b/src/mame/drivers/galivan.c
index f6a9287a42c..b2d2534be37 100644
--- a/src/mame/drivers/galivan.c
+++ b/src/mame/drivers/galivan.c
@@ -435,6 +435,7 @@ static MACHINE_CONFIG_START( galivan, galivan_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(galivan_state, screen_update_galivan)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", galivan)
MCFG_PALETTE_ADD("palette", 8*16+16*16+256*16)
@@ -482,6 +483,7 @@ static MACHINE_CONFIG_START( ninjemak, galivan_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(galivan_state, screen_update_ninjemak)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", galivan)
MCFG_PALETTE_ADD("palette", 8*16+16*16+256*16)
diff --git a/src/mame/drivers/galpani2.c b/src/mame/drivers/galpani2.c
index 04e2a37f5e1..b39fde93455 100644
--- a/src/mame/drivers/galpani2.c
+++ b/src/mame/drivers/galpani2.c
@@ -626,6 +626,7 @@ static MACHINE_CONFIG_START( galpani2, galpani2_state )
MCFG_SCREEN_SIZE(320, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-1-16)
MCFG_SCREEN_UPDATE_DRIVER(galpani2_state, screen_update_galpani2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", galpani2)
MCFG_PALETTE_ADD("palette", 0x4000 + 0x200 + 0x8000) // sprites, bg8, bg15
diff --git a/src/mame/drivers/galpanic.c b/src/mame/drivers/galpanic.c
index bb7f59e9305..c9a88993dfa 100644
--- a/src/mame/drivers/galpanic.c
+++ b/src/mame/drivers/galpanic.c
@@ -567,6 +567,7 @@ static MACHINE_CONFIG_START( galpanic, galpanic_state )
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(galpanic_state, screen_update_galpanic)
MCFG_SCREEN_VBLANK_DRIVER(galpanic_state, screen_eof_galpanic)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", galpanic)
MCFG_PALETTE_ADD("palette", 1024 + 32768)
diff --git a/src/mame/drivers/galspnbl.c b/src/mame/drivers/galspnbl.c
index a176fb88609..386d607daa1 100644
--- a/src/mame/drivers/galspnbl.c
+++ b/src/mame/drivers/galspnbl.c
@@ -234,6 +234,8 @@ static MACHINE_CONFIG_START( galspnbl, galspnbl_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(galspnbl_state, screen_update_galspnbl)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", galspnbl)
diff --git a/src/mame/drivers/gamecstl.c b/src/mame/drivers/gamecstl.c
index 8e95083ddc8..6bffd6a73ba 100644
--- a/src/mame/drivers/gamecstl.c
+++ b/src/mame/drivers/gamecstl.c
@@ -449,6 +449,7 @@ static MACHINE_CONFIG_START( gamecstl, gamecstl_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 199)
MCFG_SCREEN_UPDATE_DRIVER(gamecstl_state, screen_update_gamecstl)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", CGA)
MCFG_PALETTE_ADD("palette", 16)
diff --git a/src/mame/drivers/gaplus.c b/src/mame/drivers/gaplus.c
index 8adf9f12785..17dd2b7976e 100644
--- a/src/mame/drivers/gaplus.c
+++ b/src/mame/drivers/gaplus.c
@@ -594,6 +594,7 @@ static MACHINE_CONFIG_START( gaplus, gaplus_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gaplus_state, screen_update_gaplus)
MCFG_SCREEN_VBLANK_DRIVER(gaplus_state, screen_eof_gaplus)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gaplus)
MCFG_PALETTE_ADD("palette", 64*4+64*8)
diff --git a/src/mame/drivers/gatron.c b/src/mame/drivers/gatron.c
index ef94335ad88..48f438f97fd 100644
--- a/src/mame/drivers/gatron.c
+++ b/src/mame/drivers/gatron.c
@@ -568,6 +568,7 @@ static MACHINE_CONFIG_START( gat, gatron_state )
MCFG_SCREEN_SIZE(48*8, 16*16)
MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 0*8, 16*16-1)
MCFG_SCREEN_UPDATE_DRIVER(gatron_state, screen_update_gat)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gat)
MCFG_PALETTE_ADD("palette", 8)
diff --git a/src/mame/drivers/gauntlet.c b/src/mame/drivers/gauntlet.c
index 1aaeeade467..278baaf02dc 100644
--- a/src/mame/drivers/gauntlet.c
+++ b/src/mame/drivers/gauntlet.c
@@ -524,6 +524,7 @@ static MACHINE_CONFIG_START( gauntlet, gauntlet_state )
/* the board uses a SYNGEN chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(gauntlet_state, screen_update_gauntlet)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(gauntlet_state,gauntlet)
diff --git a/src/mame/drivers/gberet.c b/src/mame/drivers/gberet.c
index bbdbefe348e..c0b88610fde 100644
--- a/src/mame/drivers/gberet.c
+++ b/src/mame/drivers/gberet.c
@@ -414,6 +414,7 @@ static MACHINE_CONFIG_START( gberet, gberet_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gberet_state, screen_update_gberet)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gberet)
MCFG_PALETTE_ADD("palette", 2*16*16)
@@ -453,6 +454,7 @@ static MACHINE_CONFIG_START( gberetb, gberet_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gberet_state, screen_update_gberetb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gberetb)
MCFG_PALETTE_ADD("palette", 2*16*16)
diff --git a/src/mame/drivers/gbusters.c b/src/mame/drivers/gbusters.c
index 0809ead8b57..12d5c62d2ba 100644
--- a/src/mame/drivers/gbusters.c
+++ b/src/mame/drivers/gbusters.c
@@ -297,7 +297,8 @@ static MACHINE_CONFIG_START( gbusters, gbusters_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(gbusters_state, screen_update_gbusters)
-
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 1024)
MCFG_PALETTE_ENABLE_SHADOWS()
MCFG_PALETTE_FORMAT(xBBBBBGGGGGRRRRR)
diff --git a/src/mame/drivers/gcpinbal.c b/src/mame/drivers/gcpinbal.c
index 67c131935c3..3cb4e28049c 100644
--- a/src/mame/drivers/gcpinbal.c
+++ b/src/mame/drivers/gcpinbal.c
@@ -445,6 +445,7 @@ static MACHINE_CONFIG_START( gcpinbal, gcpinbal_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gcpinbal_state, screen_update_gcpinbal)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gcpinbal)
diff --git a/src/mame/drivers/gei.c b/src/mame/drivers/gei.c
index e2fe669fe1b..654e90bcc44 100644
--- a/src/mame/drivers/gei.c
+++ b/src/mame/drivers/gei.c
@@ -1165,6 +1165,7 @@ static MACHINE_CONFIG_START( getrivia, gei_state )
MCFG_SCREEN_UPDATE_DRIVER(gei_state, screen_update)
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(48, 511-48, 16, 255-16)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(gei_state, gei)
diff --git a/src/mame/drivers/gijoe.c b/src/mame/drivers/gijoe.c
index 4668ec25a9c..6d50c3b401d 100644
--- a/src/mame/drivers/gijoe.c
+++ b/src/mame/drivers/gijoe.c
@@ -345,6 +345,7 @@ static MACHINE_CONFIG_START( gijoe, gijoe_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(24, 24+288-1, 16, 16+224-1)
MCFG_SCREEN_UPDATE_DRIVER(gijoe_state, screen_update_gijoe)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2048)
MCFG_PALETTE_FORMAT(xBBBBBGGGGGRRRRR)
diff --git a/src/mame/drivers/ginganin.c b/src/mame/drivers/ginganin.c
index fbf4b6773d5..8dda4e92f23 100644
--- a/src/mame/drivers/ginganin.c
+++ b/src/mame/drivers/ginganin.c
@@ -272,6 +272,7 @@ static MACHINE_CONFIG_START( ginganin, ginganin_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 0 + 16 , 255 - 16)
MCFG_SCREEN_UPDATE_DRIVER(ginganin_state, screen_update_ginganin)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ginganin)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/gladiatr.c b/src/mame/drivers/gladiatr.c
index 80a749fbe87..cf7a799c908 100644
--- a/src/mame/drivers/gladiatr.c
+++ b/src/mame/drivers/gladiatr.c
@@ -681,6 +681,7 @@ static MACHINE_CONFIG_START( ppking, gladiatr_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gladiatr_state, screen_update_ppking)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ppking)
MCFG_PALETTE_ADD("palette", 1024)
@@ -729,6 +730,7 @@ static MACHINE_CONFIG_START( gladiatr, gladiatr_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gladiatr_state, screen_update_gladiatr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gladiatr)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/glass.c b/src/mame/drivers/glass.c
index 323f2fdcfc1..63b1e142bde 100644
--- a/src/mame/drivers/glass.c
+++ b/src/mame/drivers/glass.c
@@ -203,6 +203,7 @@ static MACHINE_CONFIG_START( glass, glass_state )
MCFG_SCREEN_SIZE(32*16, 32*16)
MCFG_SCREEN_VISIBLE_AREA(0, 368-1, 16, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(glass_state, screen_update_glass)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", glass)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/gluck2.c b/src/mame/drivers/gluck2.c
index c15c8b92c16..3f67cb78021 100644
--- a/src/mame/drivers/gluck2.c
+++ b/src/mame/drivers/gluck2.c
@@ -566,6 +566,7 @@ static MACHINE_CONFIG_START( gluck2, gluck2_state )
MCFG_SCREEN_SIZE((39+1)*8, (38+1)*8) /* from MC6845 init, registers 00 & 04. (value - 1) */
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1) /* from MC6845 init, registers 01 & 06. */
MCFG_SCREEN_UPDATE_DRIVER(gluck2_state, screen_update_gluck2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gluck2)
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/gng.c b/src/mame/drivers/gng.c
index 646c372418f..11356f6bf2e 100644
--- a/src/mame/drivers/gng.c
+++ b/src/mame/drivers/gng.c
@@ -358,6 +358,7 @@ static MACHINE_CONFIG_START( gng, gng_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gng_state, screen_update_gng)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gng)
diff --git a/src/mame/drivers/go2000.c b/src/mame/drivers/go2000.c
index 25c8876389c..1d542e12a9f 100644
--- a/src/mame/drivers/go2000.c
+++ b/src/mame/drivers/go2000.c
@@ -343,6 +343,7 @@ static MACHINE_CONFIG_START( go2000, go2000_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(go2000_state, screen_update_go2000)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x800)
MCFG_PALETTE_FORMAT(xBBBBBGGGGGRRRRR)
diff --git a/src/mame/drivers/goal92.c b/src/mame/drivers/goal92.c
index cf828ab9c53..43c450bf3d3 100644
--- a/src/mame/drivers/goal92.c
+++ b/src/mame/drivers/goal92.c
@@ -322,6 +322,7 @@ static MACHINE_CONFIG_START( goal92, goal92_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1) // black border at bottom is a game bug...
MCFG_SCREEN_UPDATE_DRIVER(goal92_state, screen_update_goal92)
MCFG_SCREEN_VBLANK_DRIVER(goal92_state, screen_eof_goal92)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", goal92)
MCFG_PALETTE_ADD("palette", 128*16)
diff --git a/src/mame/drivers/goindol.c b/src/mame/drivers/goindol.c
index 35a596bfdd4..1b7a3228bc2 100644
--- a/src/mame/drivers/goindol.c
+++ b/src/mame/drivers/goindol.c
@@ -246,6 +246,7 @@ static MACHINE_CONFIG_START( goindol, goindol_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goindol_state, screen_update_goindol)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", goindol)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
diff --git a/src/mame/drivers/goldngam.c b/src/mame/drivers/goldngam.c
index 1cb7fe5c2ca..6a5131e2061 100644
--- a/src/mame/drivers/goldngam.c
+++ b/src/mame/drivers/goldngam.c
@@ -568,6 +568,7 @@ static MACHINE_CONFIG_START( swisspkr, goldngam_state )
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(4*8, 43*8-1, 1*8, 37*8-1) // 312x288
MCFG_SCREEN_UPDATE_DRIVER(goldngam_state, screen_update_goldngam)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", goldngam)
diff --git a/src/mame/drivers/goldnpkr.c b/src/mame/drivers/goldnpkr.c
index 06e87a2d4a5..d0c543e6589 100644
--- a/src/mame/drivers/goldnpkr.c
+++ b/src/mame/drivers/goldnpkr.c
@@ -3744,6 +3744,7 @@ static MACHINE_CONFIG_START( goldnpkr_base, goldnpkr_state )
MCFG_SCREEN_SIZE((39+1)*8, (31+1)*8) /* From MC6845 init, registers 00 & 04 (programmed with value-1). */
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 29*8-1) /* From MC6845 init, registers 01 & 06. */
MCFG_SCREEN_UPDATE_DRIVER(goldnpkr_state, screen_update_goldnpkr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD("crtc", MC6845, "screen", CPU_CLOCK, mc6845_intf) /* 68B45 or 6845s @ CPU clock */
diff --git a/src/mame/drivers/goldstar.c b/src/mame/drivers/goldstar.c
index 06532a73993..b7a87caee3a 100644
--- a/src/mame/drivers/goldstar.c
+++ b/src/mame/drivers/goldstar.c
@@ -6375,6 +6375,7 @@ static MACHINE_CONFIG_START( goldstar, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", goldstar)
MCFG_PALETTE_ADD("palette", 256)
@@ -6410,6 +6411,7 @@ static MACHINE_CONFIG_START( goldstbl, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bl)
MCFG_PALETTE_ADD("palette", 256)
@@ -6444,6 +6446,7 @@ static MACHINE_CONFIG_START( moonlght, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ml)
MCFG_PALETTE_ADD("palette", 256)
@@ -6478,6 +6481,7 @@ static MACHINE_CONFIG_START( goldfrui, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", goldfrui)
MCFG_PALETTE_ADD("palette", 256)
@@ -6515,6 +6519,7 @@ static MACHINE_CONFIG_START( super9, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", goldstar)
MCFG_PALETTE_ADD("palette", 256)
@@ -6614,6 +6619,7 @@ static MACHINE_CONFIG_START( chrygld, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", chry10)
MCFG_PALETTE_ADD("palette", 256)
@@ -6655,6 +6661,7 @@ static MACHINE_CONFIG_START( cb3e, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cb3e)
MCFG_PALETTE_ADD("palette", 256)
@@ -6696,6 +6703,7 @@ static MACHINE_CONFIG_START( cb3c, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cb3c)
MCFG_PALETTE_ADD("palette", 256)
@@ -6736,6 +6744,7 @@ static MACHINE_CONFIG_START( ncb3, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ncb3)
MCFG_PALETTE_ADD("palette", 256)
@@ -6777,6 +6786,7 @@ static MACHINE_CONFIG_START( wcherry, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cb3e)
MCFG_PALETTE_ADD("palette", 256)
@@ -6817,6 +6827,7 @@ static MACHINE_CONFIG_START( cm, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cmbitmap)
MCFG_PALETTE_ADD("palette", 256)
@@ -6857,6 +6868,7 @@ static MACHINE_CONFIG_START( cmnobmp, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cm)
MCFG_PALETTE_ADD("palette", 256)
@@ -6892,6 +6904,7 @@ static MACHINE_CONFIG_START( cmast91, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_cmast91)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cmast91)
MCFG_PALETTE_ADD("palette", 256)
@@ -6933,6 +6946,7 @@ static MACHINE_CONFIG_START( lucky8, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ncb3)
MCFG_PALETTE_ADD("palette", 256)
@@ -6973,6 +6987,7 @@ static MACHINE_CONFIG_START( bingowng, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_bingowng)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ncb3)
MCFG_PALETTE_ADD("palette", 256)
@@ -7012,6 +7027,7 @@ static MACHINE_CONFIG_START( bingownga, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_bingowng)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", bingownga) /* GFX Decode is the only difference with the parent machine */
MCFG_PALETTE_ADD("palette", 256)
@@ -7068,6 +7084,7 @@ static MACHINE_CONFIG_START( magodds, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_magical)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", magodds)
MCFG_PALETTE_ADD("palette", 256)
@@ -7109,6 +7126,7 @@ static MACHINE_CONFIG_START( kkotnoli, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ncb3)
MCFG_PALETTE_ADD("palette", 256)
@@ -7144,6 +7162,7 @@ static MACHINE_CONFIG_START( ladylinr, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ncb3)
MCFG_PALETTE_ADD("palette", 256)
@@ -7184,6 +7203,7 @@ static MACHINE_CONFIG_START( wcat3, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ncb3)
MCFG_PALETTE_ADD("palette", 256)
@@ -7225,6 +7245,7 @@ static MACHINE_CONFIG_START( amcoe1, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cm)
MCFG_PALETTE_ADD("palette", 256)
@@ -7264,6 +7285,7 @@ static MACHINE_CONFIG_START( amcoe1a, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_amcoe1a)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cm)
MCFG_PALETTE_ADD("palette", 256)
@@ -7303,6 +7325,7 @@ static MACHINE_CONFIG_START( amcoe2, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cm)
MCFG_PALETTE_ADD("palette", 256)
@@ -7337,6 +7360,7 @@ static MACHINE_CONFIG_START( nfm, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", nfm)
MCFG_PALETTE_ADD("palette", 256)
@@ -7368,6 +7392,7 @@ static MACHINE_CONFIG_START( unkch, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_unkch)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", unkch)
MCFG_PALETTE_ADD("palette", 512)
@@ -7417,6 +7442,7 @@ static MACHINE_CONFIG_START( pkrmast, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", pkrmast)
MCFG_PALETTE_ADD("palette", 256)
@@ -7453,6 +7479,7 @@ static MACHINE_CONFIG_START( megaline, goldstar_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(goldstar_state, screen_update_goldstar)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", megaline)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/gomoku.c b/src/mame/drivers/gomoku.c
index 16b8fb624b1..2dfc99a5999 100644
--- a/src/mame/drivers/gomoku.c
+++ b/src/mame/drivers/gomoku.c
@@ -132,6 +132,7 @@ static MACHINE_CONFIG_START( gomoku, gomoku_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(gomoku_state, screen_update_gomoku)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gomoku)
MCFG_PALETTE_ADD("palette", 64)
diff --git a/src/mame/drivers/good.c b/src/mame/drivers/good.c
index 862a3cd7541..a700f12b97a 100644
--- a/src/mame/drivers/good.c
+++ b/src/mame/drivers/good.c
@@ -293,6 +293,7 @@ static MACHINE_CONFIG_START( good, good_state )
MCFG_SCREEN_SIZE(32*16, 32*16)
MCFG_SCREEN_VISIBLE_AREA(1*16, 23*16-1, 0*16, 14*16-1)
MCFG_SCREEN_UPDATE_DRIVER(good_state, screen_update_good)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x400)
MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
diff --git a/src/mame/drivers/goodejan.c b/src/mame/drivers/goodejan.c
index 7f880c81c7b..7873bc80278 100644
--- a/src/mame/drivers/goodejan.c
+++ b/src/mame/drivers/goodejan.c
@@ -654,6 +654,7 @@ static MACHINE_CONFIG_START( goodejan, goodejan_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1) //TODO: dynamic resolution
MCFG_SCREEN_UPDATE_DRIVER(goodejan_state, screen_update_goodejan)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEVICE_ADD("crtc", SEIBU_CRTC, 0)
MCFG_SEIBU_CRTC_LAYER_EN_CB(WRITE16(goodejan_state, layer_en_w))
diff --git a/src/mame/drivers/gotcha.c b/src/mame/drivers/gotcha.c
index d55ce88244f..d51e8a724bd 100644
--- a/src/mame/drivers/gotcha.c
+++ b/src/mame/drivers/gotcha.c
@@ -273,6 +273,7 @@ static MACHINE_CONFIG_START( gotcha, gotcha_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gotcha_state, screen_update_gotcha)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gotcha)
MCFG_PALETTE_ADD("palette", 768)
diff --git a/src/mame/drivers/gotya.c b/src/mame/drivers/gotya.c
index d815fc23f6f..9acfce9c693 100644
--- a/src/mame/drivers/gotya.c
+++ b/src/mame/drivers/gotya.c
@@ -201,6 +201,7 @@ static MACHINE_CONFIG_START( gotya, gotya_state )
MCFG_SCREEN_SIZE(36*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 36*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gotya_state, screen_update_gotya)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gotya)
MCFG_PALETTE_ADD("palette", 16*4)
diff --git a/src/mame/drivers/gradius3.c b/src/mame/drivers/gradius3.c
index d47e2850c2a..186e8872531 100644
--- a/src/mame/drivers/gradius3.c
+++ b/src/mame/drivers/gradius3.c
@@ -307,6 +307,7 @@ static MACHINE_CONFIG_START( gradius3, gradius3_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(gradius3_state, screen_update_gradius3)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2048)
MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
diff --git a/src/mame/drivers/gridlee.c b/src/mame/drivers/gridlee.c
index a356823bc6a..31f74fb8b52 100644
--- a/src/mame/drivers/gridlee.c
+++ b/src/mame/drivers/gridlee.c
@@ -426,6 +426,7 @@ static MACHINE_CONFIG_START( gridlee, gridlee_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(GRIDLEE_PIXEL_CLOCK, GRIDLEE_HTOTAL, GRIDLEE_HBEND, GRIDLEE_HBSTART, GRIDLEE_VTOTAL, GRIDLEE_VBEND, GRIDLEE_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(gridlee_state, screen_update_gridlee)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2048)
MCFG_PALETTE_INIT_OWNER(gridlee_state,gridlee)
diff --git a/src/mame/drivers/groundfx.c b/src/mame/drivers/groundfx.c
index 7ef54623ceb..aef0ce02dfa 100644
--- a/src/mame/drivers/groundfx.c
+++ b/src/mame/drivers/groundfx.c
@@ -365,6 +365,7 @@ static MACHINE_CONFIG_START( groundfx, groundfx_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 40*8-1, 3*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(groundfx_state, screen_update_groundfx)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", groundfx)
MCFG_PALETTE_ADD("palette", 16384)
diff --git a/src/mame/drivers/gstriker.c b/src/mame/drivers/gstriker.c
index 860f896f55d..bca38bf6904 100644
--- a/src/mame/drivers/gstriker.c
+++ b/src/mame/drivers/gstriker.c
@@ -550,6 +550,7 @@ static MACHINE_CONFIG_START( gstriker, gstriker_state )
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gstriker_state, screen_update_gstriker)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gstriker)
MCFG_PALETTE_ADD("palette", 0x800)
@@ -600,6 +601,7 @@ static MACHINE_CONFIG_START( vgoal, gstriker_state )
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gstriker_state, screen_update_gstriker)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gstriker)
MCFG_PALETTE_ADD("palette", 0x2000)
diff --git a/src/mame/drivers/gsword.c b/src/mame/drivers/gsword.c
index 2d4ac0557a0..92d5be14bfd 100644
--- a/src/mame/drivers/gsword.c
+++ b/src/mame/drivers/gsword.c
@@ -684,6 +684,7 @@ static MACHINE_CONFIG_START( gsword, gsword_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gsword_state, screen_update_gsword)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gsword)
MCFG_PALETTE_ADD("palette", 64*4+64*4)
@@ -727,6 +728,7 @@ static MACHINE_CONFIG_START( josvolly, gsword_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gsword_state, screen_update_gsword)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gsword)
MCFG_PALETTE_ADD("palette", 64*4+64*4)
diff --git a/src/mame/drivers/guab.c b/src/mame/drivers/guab.c
index 129db5480bd..9b657fe6eeb 100644
--- a/src/mame/drivers/guab.c
+++ b/src/mame/drivers/guab.c
@@ -806,6 +806,7 @@ static MACHINE_CONFIG_START( guab, guab_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(guab_state, screen_update_guab)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
diff --git a/src/mame/drivers/gumbo.c b/src/mame/drivers/gumbo.c
index 55431d51644..45078f6f3f5 100644
--- a/src/mame/drivers/gumbo.c
+++ b/src/mame/drivers/gumbo.c
@@ -241,6 +241,7 @@ static MACHINE_CONFIG_START( gumbo, gumbo_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(8*8, 48*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gumbo_state, screen_update_gumbo)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x200)
MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
diff --git a/src/mame/drivers/gunbustr.c b/src/mame/drivers/gunbustr.c
index 2cbc9cb212d..25d163e4a75 100644
--- a/src/mame/drivers/gunbustr.c
+++ b/src/mame/drivers/gunbustr.c
@@ -310,6 +310,7 @@ static MACHINE_CONFIG_START( gunbustr, gunbustr_state )
MCFG_SCREEN_SIZE(40*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 40*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gunbustr_state, screen_update_gunbustr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gunbustr)
MCFG_PALETTE_ADD("palette", 8192)
diff --git a/src/mame/drivers/gundealr.c b/src/mame/drivers/gundealr.c
index c5a6a0ba1f9..7ae9fe06bcb 100644
--- a/src/mame/drivers/gundealr.c
+++ b/src/mame/drivers/gundealr.c
@@ -416,6 +416,7 @@ static MACHINE_CONFIG_START( gundealr, gundealr_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gundealr_state, screen_update_gundealr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gundealr)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/gunpey.c b/src/mame/drivers/gunpey.c
index 3be78ec4bf7..28e68c6d28c 100644
--- a/src/mame/drivers/gunpey.c
+++ b/src/mame/drivers/gunpey.c
@@ -1455,6 +1455,7 @@ static MACHINE_CONFIG_START( gunpey, gunpey_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(57242400/8, 442, 0, 320, 264, 0, 240) /* just to get ~60 Hz */
MCFG_SCREEN_UPDATE_DRIVER(gunpey_state, screen_update_gunpey)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_RRRRRGGGGGBBBBB("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gunpey)
diff --git a/src/mame/drivers/gunsmoke.c b/src/mame/drivers/gunsmoke.c
index 0e9ef6485a7..fe1707ebe36 100644
--- a/src/mame/drivers/gunsmoke.c
+++ b/src/mame/drivers/gunsmoke.c
@@ -310,6 +310,7 @@ static MACHINE_CONFIG_START( gunsmoke, gunsmoke_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(gunsmoke_state, screen_update_gunsmoke)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gunsmoke)
diff --git a/src/mame/drivers/gyruss.c b/src/mame/drivers/gyruss.c
index 76e098d57a4..4d106491838 100644
--- a/src/mame/drivers/gyruss.c
+++ b/src/mame/drivers/gyruss.c
@@ -533,6 +533,7 @@ static MACHINE_CONFIG_START( gyruss, gyruss_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(gyruss_state, screen_update_gyruss)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gyruss)
MCFG_PALETTE_ADD("palette", 16*4+16*16)
diff --git a/src/mame/drivers/halleys.c b/src/mame/drivers/halleys.c
index 625fd966359..8a58f802db0 100644
--- a/src/mame/drivers/halleys.c
+++ b/src/mame/drivers/halleys.c
@@ -1990,6 +1990,7 @@ static MACHINE_CONFIG_START( halleys, halleys_state )
MCFG_SCREEN_SIZE(SCREEN_WIDTH, SCREEN_HEIGHT)
MCFG_SCREEN_VISIBLE_AREA(VIS_MINX, VIS_MAXX, VIS_MINY, VIS_MAXY)
MCFG_SCREEN_UPDATE_DRIVER(halleys_state, screen_update_halleys)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", PALETTE_SIZE)
MCFG_PALETTE_INIT_OWNER(halleys_state, halleys)
diff --git a/src/mame/drivers/hanaawas.c b/src/mame/drivers/hanaawas.c
index b8fd0767c03..181b473a0b1 100644
--- a/src/mame/drivers/hanaawas.c
+++ b/src/mame/drivers/hanaawas.c
@@ -208,6 +208,7 @@ static MACHINE_CONFIG_START( hanaawas, hanaawas_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(hanaawas_state, screen_update_hanaawas)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", hanaawas)
MCFG_PALETTE_ADD("palette", 32*8)
diff --git a/src/mame/drivers/harddriv.c b/src/mame/drivers/harddriv.c
index a4ea38e0bab..933b167b4c1 100644
--- a/src/mame/drivers/harddriv.c
+++ b/src/mame/drivers/harddriv.c
@@ -1345,6 +1345,7 @@ static MACHINE_CONFIG_START( driver_nomsp, harddriv_state )
MCFG_SCREEN_RAW_PARAMS(HARDDRIV_GSP_CLOCK/12*4, 160*4, 0, 127*4, 417, 0, 384)
MCFG_SCREEN_UPDATE_DEVICE("gsp", tms34010_device, tms340x0_ind16)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(harddriv_state,harddriv)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/hcastle.c b/src/mame/drivers/hcastle.c
index 58cbeade7e4..7097d6bb185 100644
--- a/src/mame/drivers/hcastle.c
+++ b/src/mame/drivers/hcastle.c
@@ -207,6 +207,7 @@ static MACHINE_CONFIG_START( hcastle, hcastle_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(hcastle_state, screen_update_hcastle)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", hcastle)
MCFG_PALETTE_ADD("palette", 2*8*16*16)
diff --git a/src/mame/drivers/headonb.c b/src/mame/drivers/headonb.c
index 65d60c2dabb..5e1cf9d592e 100644
--- a/src/mame/drivers/headonb.c
+++ b/src/mame/drivers/headonb.c
@@ -167,8 +167,8 @@ static MACHINE_CONFIG_START( headonb, headonb_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
-
MCFG_SCREEN_UPDATE_DRIVER(headonb_state, screen_update_headonb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", headonb)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mame/drivers/hexion.c b/src/mame/drivers/hexion.c
index e1f80244179..5fad98ce6de 100644
--- a/src/mame/drivers/hexion.c
+++ b/src/mame/drivers/hexion.c
@@ -233,6 +233,7 @@ static MACHINE_CONFIG_START( hexion, hexion_state )
MCFG_SCREEN_SIZE(64*8, 36*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(hexion_state, screen_update_hexion)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", hexion)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
diff --git a/src/mame/drivers/hideseek.c b/src/mame/drivers/hideseek.c
index 042b64d3fec..f96d79a696f 100644
--- a/src/mame/drivers/hideseek.c
+++ b/src/mame/drivers/hideseek.c
@@ -106,6 +106,7 @@ static MACHINE_CONFIG_START( hideseek, hideseek_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(hideseek_state, screen_update_hideseek)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x10000)
MCFG_PALETTE_INIT_OWNER(hideseek_state, hideseek)
diff --git a/src/mame/drivers/higemaru.c b/src/mame/drivers/higemaru.c
index 4f30eafaf33..6d1c482d37e 100644
--- a/src/mame/drivers/higemaru.c
+++ b/src/mame/drivers/higemaru.c
@@ -171,6 +171,7 @@ static MACHINE_CONFIG_START( higemaru, higemaru_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(higemaru_state, screen_update_higemaru)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", higemaru)
diff --git a/src/mame/drivers/himesiki.c b/src/mame/drivers/himesiki.c
index 4a11ffda16c..98492fc6fb4 100644
--- a/src/mame/drivers/himesiki.c
+++ b/src/mame/drivers/himesiki.c
@@ -304,6 +304,7 @@ static MACHINE_CONFIG_START( himesiki, himesiki_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 24*8-1)
MCFG_SCREEN_UPDATE_DRIVER(himesiki_state, screen_update_himesiki)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", himesiki)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/hitme.c b/src/mame/drivers/hitme.c
index 76b9b983414..10ec205def3 100644
--- a/src/mame/drivers/hitme.c
+++ b/src/mame/drivers/hitme.c
@@ -321,6 +321,7 @@ static MACHINE_CONFIG_START( hitme, hitme_state )
MCFG_SCREEN_SIZE(40*8, 19*10)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 19*10-1)
MCFG_SCREEN_UPDATE_DRIVER(hitme_state, screen_update_hitme)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", hitme)
diff --git a/src/mame/drivers/hitpoker.c b/src/mame/drivers/hitpoker.c
index 3efc5316098..2062410c317 100644
--- a/src/mame/drivers/hitpoker.c
+++ b/src/mame/drivers/hitpoker.c
@@ -509,6 +509,7 @@ static MACHINE_CONFIG_START( hitpoker, hitpoker_state )
MCFG_SCREEN_SIZE(648, 480) //setted by the CRTC
MCFG_SCREEN_VISIBLE_AREA(0, 648-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(hitpoker_state, screen_update_hitpoker)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD("crtc", H46505, "screen", CRTC_CLOCK/2, mc6845_intf) /* hand tuned to get ~60 fps */
diff --git a/src/mame/drivers/hnayayoi.c b/src/mame/drivers/hnayayoi.c
index 8ac847bd948..4c71f19b3fd 100644
--- a/src/mame/drivers/hnayayoi.c
+++ b/src/mame/drivers/hnayayoi.c
@@ -564,6 +564,7 @@ static MACHINE_CONFIG_START( hnayayoi, hnayayoi_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(hnayayoi_state, screen_update_hnayayoi)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
diff --git a/src/mame/drivers/holeland.c b/src/mame/drivers/holeland.c
index 32668afdbc7..5bdeefbd8b3 100644
--- a/src/mame/drivers/holeland.c
+++ b/src/mame/drivers/holeland.c
@@ -289,6 +289,7 @@ static MACHINE_CONFIG_START( holeland, holeland_state )
MCFG_SCREEN_SIZE(32*16, 32*16)
MCFG_SCREEN_VISIBLE_AREA(0*16, 32*16-1, 2*16, 30*16-1)
MCFG_SCREEN_UPDATE_DRIVER(holeland_state, screen_update_holeland)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", holeland)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
@@ -357,6 +358,7 @@ static MACHINE_CONFIG_START( crzrally, holeland_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(holeland_state, screen_update_crzrally)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", crzrally)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
diff --git a/src/mame/drivers/homedata.c b/src/mame/drivers/homedata.c
index 97148393b47..b62211c5107 100644
--- a/src/mame/drivers/homedata.c
+++ b/src/mame/drivers/homedata.c
@@ -1239,6 +1239,7 @@ static MACHINE_CONFIG_START( mrokumei, homedata_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 54*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(homedata_state, screen_update_mrokumei)
MCFG_SCREEN_VBLANK_DRIVER(homedata_state, screen_eof_homedata)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mrokumei)
MCFG_PALETTE_ADD("palette", 0x8000)
@@ -1296,6 +1297,7 @@ static MACHINE_CONFIG_START( reikaids, homedata_state )
MCFG_SCREEN_VISIBLE_AREA(0, 255, 16, 256-1-16)
MCFG_SCREEN_UPDATE_DRIVER(homedata_state, screen_update_reikaids)
MCFG_SCREEN_VBLANK_DRIVER(homedata_state, screen_eof_homedata)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", reikaids)
MCFG_PALETTE_ADD("palette", 0x8000)
@@ -1346,6 +1348,7 @@ static MACHINE_CONFIG_START( pteacher, homedata_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 54*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(homedata_state, screen_update_pteacher)
MCFG_SCREEN_VBLANK_DRIVER(homedata_state, screen_eof_homedata)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", pteacher)
MCFG_PALETTE_ADD("palette", 0x8000)
@@ -1508,6 +1511,7 @@ static MACHINE_CONFIG_START( mirderby, homedata_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 54*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(homedata_state, screen_update_mirderby)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mirderby)
MCFG_PALETTE_ADD("palette", 0x8000)
diff --git a/src/mame/drivers/homerun.c b/src/mame/drivers/homerun.c
index 4b1374d5349..64059908775 100644
--- a/src/mame/drivers/homerun.c
+++ b/src/mame/drivers/homerun.c
@@ -388,6 +388,7 @@ static MACHINE_CONFIG_START( dynashot, homerun_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(homerun_state, screen_update_homerun)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", homerun)
MCFG_PALETTE_ADD("palette", 16*4)
diff --git a/src/mame/drivers/hotblock.c b/src/mame/drivers/hotblock.c
index 3038280c80b..8f58a3b1214 100644
--- a/src/mame/drivers/hotblock.c
+++ b/src/mame/drivers/hotblock.c
@@ -231,6 +231,7 @@ static MACHINE_CONFIG_START( hotblock, hotblock_state )
MCFG_SCREEN_SIZE(1024,1024)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 200-1)
MCFG_SCREEN_UPDATE_DRIVER(hotblock_state, screen_update_hotblock)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/hvyunit.c b/src/mame/drivers/hvyunit.c
index 19cba1ba59b..c945ba7b953 100644
--- a/src/mame/drivers/hvyunit.c
+++ b/src/mame/drivers/hvyunit.c
@@ -668,6 +668,7 @@ static MACHINE_CONFIG_START( hvyunit, hvyunit_state )
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(hvyunit_state, screen_update_hvyunit)
MCFG_SCREEN_VBLANK_DRIVER(hvyunit_state, screen_eof_hvyunit)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", hvyunit)
MCFG_PALETTE_ADD("palette", 0x800)
diff --git a/src/mame/drivers/hyperspt.c b/src/mame/drivers/hyperspt.c
index dae16b2d19c..8e590bb07ad 100644
--- a/src/mame/drivers/hyperspt.c
+++ b/src/mame/drivers/hyperspt.c
@@ -306,6 +306,7 @@ static MACHINE_CONFIG_START( hyperspt, hyperspt_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(hyperspt_state, screen_update_hyperspt)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", hyperspt)
MCFG_PALETTE_ADD("palette", 16*16+16*16)
diff --git a/src/mame/drivers/hyprduel.c b/src/mame/drivers/hyprduel.c
index 1886042d79a..5fb4247db8d 100644
--- a/src/mame/drivers/hyprduel.c
+++ b/src/mame/drivers/hyprduel.c
@@ -660,6 +660,7 @@ static MACHINE_CONFIG_START( hyprduel, hyprduel_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, FIRST_VISIBLE_LINE, LAST_VISIBLE_LINE)
MCFG_SCREEN_UPDATE_DRIVER(hyprduel_state, screen_update_hyprduel)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 14220)
MCFG_PALETTE_ADD("palette", 8192)
@@ -700,6 +701,7 @@ static MACHINE_CONFIG_START( magerror, hyprduel_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, FIRST_VISIBLE_LINE, LAST_VISIBLE_LINE)
MCFG_SCREEN_UPDATE_DRIVER(hyprduel_state, screen_update_hyprduel)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 14220)
MCFG_PALETTE_ADD("palette", 8192)
diff --git a/src/mame/drivers/ichiban.c b/src/mame/drivers/ichiban.c
index d69cebcb0cf..7bd3eeb74e1 100644
--- a/src/mame/drivers/ichiban.c
+++ b/src/mame/drivers/ichiban.c
@@ -127,6 +127,7 @@ static MACHINE_CONFIG_START( ichibanjyan, ichibanjyan_state )
MCFG_SCREEN_UPDATE_DRIVER(ichibanjyan_state, screen_update)
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ichibanjyan)
diff --git a/src/mame/drivers/igs009.c b/src/mame/drivers/igs009.c
index 4aa63aaf15d..701f76a3f2e 100644
--- a/src/mame/drivers/igs009.c
+++ b/src/mame/drivers/igs009.c
@@ -757,6 +757,7 @@ static MACHINE_CONFIG_START( jingbell, igs009_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(igs009_state, screen_update_jingbell)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jingbell)
MCFG_PALETTE_ADD("palette", 0x400)
diff --git a/src/mame/drivers/igs011.c b/src/mame/drivers/igs011.c
index 892721a5cb7..225a3f742a8 100644
--- a/src/mame/drivers/igs011.c
+++ b/src/mame/drivers/igs011.c
@@ -3936,6 +3936,7 @@ static MACHINE_CONFIG_START( igs011_base, igs011_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(igs011_state, screen_update_igs011)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x800)
// MCFG_GFXDECODE_ADD("gfxdecode", igs011)
diff --git a/src/mame/drivers/igs017.c b/src/mame/drivers/igs017.c
index 43addeaa1d7..381748c6b58 100644
--- a/src/mame/drivers/igs017.c
+++ b/src/mame/drivers/igs017.c
@@ -3494,6 +3494,7 @@ static MACHINE_CONFIG_START( iqblocka, igs017_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(igs017_state, screen_update_igs017)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", igs017)
MCFG_PALETTE_ADD("palette", 0x100*2)
@@ -3559,6 +3560,7 @@ static MACHINE_CONFIG_START( mgcs, igs017_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(igs017_state, screen_update_igs017)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", igs017_flipped)
MCFG_PALETTE_ADD("palette", 0x100*2)
@@ -3601,6 +3603,7 @@ static MACHINE_CONFIG_START( lhzb2, igs017_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(igs017_state, screen_update_igs017)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", igs017_swapped)
MCFG_PALETTE_ADD("palette", 0x100*2)
@@ -3645,6 +3648,7 @@ static MACHINE_CONFIG_START( lhzb2a, igs017_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(igs017_state, screen_update_igs017)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", igs017_swapped)
MCFG_PALETTE_ADD("palette", 0x100*2)
@@ -3677,6 +3681,7 @@ static MACHINE_CONFIG_START( slqz2, igs017_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(igs017_state, screen_update_igs017)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", igs017)
MCFG_PALETTE_ADD("palette", 0x100*2)
@@ -3724,6 +3729,7 @@ static MACHINE_CONFIG_START( sdmg2, igs017_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(igs017_state, screen_update_igs017)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", igs017)
MCFG_PALETTE_ADD("palette", 0x100*2)
@@ -3776,6 +3782,7 @@ static MACHINE_CONFIG_START( mgdha, igs017_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(igs017_state, screen_update_igs017)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", igs017_swapped)
MCFG_PALETTE_ADD("palette", 0x100*2)
@@ -3808,6 +3815,7 @@ static MACHINE_CONFIG_START( tjsb, igs017_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(igs017_state, screen_update_igs017)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", igs017)
MCFG_PALETTE_ADD("palette", 0x100*2)
@@ -3843,6 +3851,7 @@ static MACHINE_CONFIG_START( spkrform, igs017_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(igs017_state, screen_update_igs017)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", igs017)
MCFG_PALETTE_ADD("palette", 0x100*2)
diff --git a/src/mame/drivers/igs_m027.c b/src/mame/drivers/igs_m027.c
index 67921004005..7ae4f0c7abb 100644
--- a/src/mame/drivers/igs_m027.c
+++ b/src/mame/drivers/igs_m027.c
@@ -414,6 +414,7 @@ static MACHINE_CONFIG_START( igs_majhong, igs_m027_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(igs_m027_state, screen_update_igs_majhong)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x200)
@@ -442,6 +443,7 @@ static MACHINE_CONFIG_START( fearless, igs_m027_state )
MCFG_VIDEO_START_OVERRIDE(igs_m027_state, fearless)
MCFG_SCREEN_UPDATE_DRIVER(igs_m027_state, screen_update_fearless)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x200)
diff --git a/src/mame/drivers/igs_m036.c b/src/mame/drivers/igs_m036.c
index c1b605b4fd0..de89a2c52ce 100644
--- a/src/mame/drivers/igs_m036.c
+++ b/src/mame/drivers/igs_m036.c
@@ -254,6 +254,7 @@ static MACHINE_CONFIG_START( igs_m036, igs_m036_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(igs_m036_state, screen_update_igs_m036)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x200)
/* sound hardware (OKI) */
@@ -272,6 +273,7 @@ static MACHINE_CONFIG_START( igs_m036_tt, igs_m036_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(igs_m036_state, screen_update_igs_m036)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x200)
/* sound hardware (TT5665) */
diff --git a/src/mame/drivers/igspoker.c b/src/mame/drivers/igspoker.c
index 54aaab01f89..93463ef094e 100644
--- a/src/mame/drivers/igspoker.c
+++ b/src/mame/drivers/igspoker.c
@@ -1787,6 +1787,7 @@ static MACHINE_CONFIG_START( igspoker, igspoker_state )
MCFG_SCREEN_SIZE(64*8, 32*8) // TODO: wrong screen size!
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(igspoker_state, screen_update_igs_video)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", igspoker)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/ikki.c b/src/mame/drivers/ikki.c
index 5bcdb771cda..2b49156b200 100644
--- a/src/mame/drivers/ikki.c
+++ b/src/mame/drivers/ikki.c
@@ -254,8 +254,9 @@ static MACHINE_CONFIG_START( ikki, ikki_state )
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MCFG_SCREEN_SIZE(32*8, 32*8+3*8)
- MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
+ MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ikki_state, screen_update_ikki)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ikki)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/imolagp.c b/src/mame/drivers/imolagp.c
index 4e7397bf1d5..18b4d0c99c8 100644
--- a/src/mame/drivers/imolagp.c
+++ b/src/mame/drivers/imolagp.c
@@ -517,6 +517,7 @@ static MACHINE_CONFIG_START( imolagp, imolagp_state )
MCFG_SCREEN_VISIBLE_AREA(0+48,255,0+16,255)
MCFG_SCREEN_UPDATE_DRIVER(imolagp_state, screen_update_imolagp)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_SCANLINE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x20)
MCFG_PALETTE_INIT_OWNER(imolagp_state, imolagp)
diff --git a/src/mame/drivers/intrscti.c b/src/mame/drivers/intrscti.c
index c7bebe82f17..e6b8542995d 100644
--- a/src/mame/drivers/intrscti.c
+++ b/src/mame/drivers/intrscti.c
@@ -192,6 +192,7 @@ static MACHINE_CONFIG_START( intrscti, intrscti_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(intrscti_state, screen_update_intrscti)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", intrscti)
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/inufuku.c b/src/mame/drivers/inufuku.c
index 8c117525e24..68e95e61629 100644
--- a/src/mame/drivers/inufuku.c
+++ b/src/mame/drivers/inufuku.c
@@ -385,6 +385,7 @@ static MACHINE_CONFIG_START( inufuku, inufuku_state )
MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 223)
MCFG_SCREEN_UPDATE_DRIVER(inufuku_state, screen_update_inufuku)
MCFG_SCREEN_VBLANK_DRIVER(inufuku_state, screen_eof_inufuku)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEVICE_ADD("vsystem_spr", VSYSTEM_SPR, 0)
vsystem_spr_device::set_offsets(*device, 0,1); // reference videos confirm at least the +1 against tilemaps in 3on3dunk (the highscore header text and black box are meant to be 1 pixel misaligned, although there is currently a priority bug there too)
diff --git a/src/mame/drivers/iqblock.c b/src/mame/drivers/iqblock.c
index 45cb42e981b..4590366d40f 100644
--- a/src/mame/drivers/iqblock.c
+++ b/src/mame/drivers/iqblock.c
@@ -287,6 +287,7 @@ static MACHINE_CONFIG_START( iqblock, iqblock_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(iqblock_state, screen_update_iqblock)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", iqblock)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/irobot.c b/src/mame/drivers/irobot.c
index 8c402a17331..62e6b7dfc13 100644
--- a/src/mame/drivers/irobot.c
+++ b/src/mame/drivers/irobot.c
@@ -325,6 +325,7 @@ static MACHINE_CONFIG_START( irobot, irobot_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 29*8-1)
MCFG_SCREEN_UPDATE_DRIVER(irobot_state, screen_update_irobot)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", irobot)
MCFG_PALETTE_ADD("palette", 64 + 32) /* 64 for polygons, 32 for text */
diff --git a/src/mame/drivers/ironhors.c b/src/mame/drivers/ironhors.c
index 5a30f9a75f9..45cdba1fc44 100644
--- a/src/mame/drivers/ironhors.c
+++ b/src/mame/drivers/ironhors.c
@@ -384,6 +384,7 @@ static MACHINE_CONFIG_START( ironhors, ironhors_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ironhors_state, screen_update_ironhors)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ironhors)
MCFG_PALETTE_ADD("palette", 16*8*16+16*8*16)
diff --git a/src/mame/drivers/itech32.c b/src/mame/drivers/itech32.c
index 0a63207a4fc..9bcc71f9d20 100644
--- a/src/mame/drivers/itech32.c
+++ b/src/mame/drivers/itech32.c
@@ -1684,6 +1684,7 @@ static MACHINE_CONFIG_START( timekill, itech32_state )
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_SCREEN_RAW_PARAMS(VIDEO_CLOCK, 508, 0, 384, 262, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(itech32_state, screen_update_itech32)
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
diff --git a/src/mame/drivers/itgamble.c b/src/mame/drivers/itgamble.c
index 62cec511613..a1d9b399283 100644
--- a/src/mame/drivers/itgamble.c
+++ b/src/mame/drivers/itgamble.c
@@ -217,6 +217,7 @@ static MACHINE_CONFIG_START( itgamble, itgamble_state )
MCFG_SCREEN_UPDATE_DRIVER(itgamble_state, screen_update)
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", itgamble)
MCFG_PALETTE_ADD("palette", 0x200)
diff --git a/src/mame/drivers/jack.c b/src/mame/drivers/jack.c
index ae9d9127c7b..1fcb6c6da9a 100644
--- a/src/mame/drivers/jack.c
+++ b/src/mame/drivers/jack.c
@@ -921,6 +921,7 @@ static MACHINE_CONFIG_START( jack, jack_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(jack_state, screen_update_jack)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jack)
diff --git a/src/mame/drivers/jackal.c b/src/mame/drivers/jackal.c
index c6ea36f1779..02fe45d4ce1 100644
--- a/src/mame/drivers/jackal.c
+++ b/src/mame/drivers/jackal.c
@@ -367,6 +367,7 @@ static MACHINE_CONFIG_START( jackal, jackal_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(jackal_state, screen_update_jackal)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jackal)
MCFG_PALETTE_ADD("palette", 0x300)
diff --git a/src/mame/drivers/jackie.c b/src/mame/drivers/jackie.c
index 745f60d1f93..7dc1b79ea9c 100644
--- a/src/mame/drivers/jackie.c
+++ b/src/mame/drivers/jackie.c
@@ -593,6 +593,7 @@ static MACHINE_CONFIG_START( jackie, jackie_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(jackie_state, screen_update_jackie)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jackie)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/jackpool.c b/src/mame/drivers/jackpool.c
index 1d8b9cd1f19..cfd2c39acb4 100644
--- a/src/mame/drivers/jackpool.c
+++ b/src/mame/drivers/jackpool.c
@@ -278,6 +278,7 @@ static MACHINE_CONFIG_START( jackpool, jackpool_state )
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(jackpool_state, screen_update_jackpool)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
diff --git a/src/mame/drivers/jailbrek.c b/src/mame/drivers/jailbrek.c
index dda1a497aa8..b9a4c4ebe53 100644
--- a/src/mame/drivers/jailbrek.c
+++ b/src/mame/drivers/jailbrek.c
@@ -259,7 +259,7 @@ static MACHINE_CONFIG_START( jailbrek, jailbrek_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 396, 8, 248, 256, 16, 240)
MCFG_SCREEN_UPDATE_DRIVER(jailbrek_state, screen_update_jailbrek)
-
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
diff --git a/src/mame/drivers/jalmah.c b/src/mame/drivers/jalmah.c
index d6383aa23fb..9446184c620 100644
--- a/src/mame/drivers/jalmah.c
+++ b/src/mame/drivers/jalmah.c
@@ -1422,6 +1422,7 @@ static MACHINE_CONFIG_START( jalmah, jalmah_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(jalmah_state, screen_update_jalmah)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x400)
MCFG_PALETTE_FORMAT(RRRRGGGGBBBBRGBx)
diff --git a/src/mame/drivers/jangou.c b/src/mame/drivers/jangou.c
index 646e49e198d..a4728088b7b 100644
--- a/src/mame/drivers/jangou.c
+++ b/src/mame/drivers/jangou.c
@@ -998,6 +998,7 @@ static MACHINE_CONFIG_START( jangou, jangou_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(jangou_state, screen_update_jangou)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 32)
MCFG_PALETTE_INIT_OWNER(jangou_state, jangou)
diff --git a/src/mame/drivers/jchan.c b/src/mame/drivers/jchan.c
index 17919c2ad58..3bf525293bd 100644
--- a/src/mame/drivers/jchan.c
+++ b/src/mame/drivers/jchan.c
@@ -599,6 +599,7 @@ static MACHINE_CONFIG_START( jchan, jchan_state )
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(jchan_state, screen_update_jchan)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x10000)
MCFG_PALETTE_FORMAT(xGGGGGRRRRRBBBBB)
diff --git a/src/mame/drivers/jclub2.c b/src/mame/drivers/jclub2.c
index 53aa7906cbe..0ea1cfa9db5 100644
--- a/src/mame/drivers/jclub2.c
+++ b/src/mame/drivers/jclub2.c
@@ -691,6 +691,7 @@ static MACHINE_CONFIG_START( darkhors, darkhors_state )
MCFG_SCREEN_SIZE(0x190, 0x100+16)
MCFG_SCREEN_VISIBLE_AREA(0, 0x190-1, 8, 0x100-8-1)
MCFG_SCREEN_UPDATE_DRIVER(darkhors_state, screen_update_darkhors)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", darkhors)
MCFG_PALETTE_ADD("palette", 0x10000)
@@ -733,6 +734,7 @@ static MACHINE_CONFIG_START( jclub2, darkhors_state )
MCFG_SCREEN_SIZE(0x190, 0x100+16)
MCFG_SCREEN_VISIBLE_AREA(0, 0x190-1, 8, 0x100-8-1)
MCFG_SCREEN_UPDATE_DRIVER(darkhors_state, screen_update_jclub2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", empty)
@@ -804,6 +806,7 @@ static MACHINE_CONFIG_START( jclub2o, darkhors_state )
MCFG_SCREEN_SIZE(0x190, 0x100)
MCFG_SCREEN_VISIBLE_AREA(0, 0x190-1, 8, 0x100-8-1)
MCFG_SCREEN_UPDATE_DRIVER(darkhors_state, screen_update_jclub2o)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x10000)
MCFG_PALETTE_FORMAT(xBBBBBGGGGGRRRRR)
diff --git a/src/mame/drivers/jokrwild.c b/src/mame/drivers/jokrwild.c
index e933a0d0cef..666c3f678f1 100644
--- a/src/mame/drivers/jokrwild.c
+++ b/src/mame/drivers/jokrwild.c
@@ -473,6 +473,7 @@ static MACHINE_CONFIG_START( jokrwild, jokrwild_state )
MCFG_SCREEN_SIZE((32+1)*8, (32+1)*8) /* From MC6845, registers 00 & 04. (value-1) */
MCFG_SCREEN_VISIBLE_AREA(0*8, 24*8-1, 0*8, 26*8-1) /* From MC6845, registers 01 & 06 */
MCFG_SCREEN_UPDATE_DRIVER(jokrwild_state, screen_update_jokrwild)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jokrwild)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/jollyjgr.c b/src/mame/drivers/jollyjgr.c
index 4dda51d8cc0..383cb9e110e 100644
--- a/src/mame/drivers/jollyjgr.c
+++ b/src/mame/drivers/jollyjgr.c
@@ -665,6 +665,7 @@ static MACHINE_CONFIG_START( jollyjgr, jollyjgr_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(jollyjgr_state, screen_update_jollyjgr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jollyjgr)
MCFG_PALETTE_ADD("palette", 32+8) /* 32 for tilemap and sprites + 8 for the bitmap */
diff --git a/src/mame/drivers/jongkyo.c b/src/mame/drivers/jongkyo.c
index 2865995fb66..5a58e1282f7 100644
--- a/src/mame/drivers/jongkyo.c
+++ b/src/mame/drivers/jongkyo.c
@@ -512,6 +512,7 @@ static MACHINE_CONFIG_START( jongkyo, jongkyo_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 8, 256-8-1)
MCFG_SCREEN_UPDATE_DRIVER(jongkyo_state, screen_update_jongkyo)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
MCFG_PALETTE_INIT_OWNER(jongkyo_state, jongkyo)
diff --git a/src/mame/drivers/jrpacman.c b/src/mame/drivers/jrpacman.c
index 2e2b8871604..172e71294b6 100644
--- a/src/mame/drivers/jrpacman.c
+++ b/src/mame/drivers/jrpacman.c
@@ -299,6 +299,7 @@ static MACHINE_CONFIG_START( jrpacman, jrpacman_state )
MCFG_SCREEN_SIZE(36*8, 28*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(jrpacman_state, screen_update_pacman)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jrpacman)
MCFG_PALETTE_ADD("palette", 128*4)
diff --git a/src/mame/drivers/jubilee.c b/src/mame/drivers/jubilee.c
index 6a5b4de5dcd..0d138f42519 100644
--- a/src/mame/drivers/jubilee.c
+++ b/src/mame/drivers/jubilee.c
@@ -697,6 +697,7 @@ static MACHINE_CONFIG_START( jubileep, jubilee_state )
MCFG_SCREEN_SIZE(32*8, 32*8) /* (47+1*8, 38+1*8) from CRTC settings */
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1) /* (32*8, 32*8) from CRTC settings */
MCFG_SCREEN_UPDATE_DRIVER(jubilee_state, screen_update_jubileep)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jubileep)
MCFG_PALETTE_ADD("palette",8)
diff --git a/src/mame/drivers/kaneko16.c b/src/mame/drivers/kaneko16.c
index 310f5d96fb8..1c77717f74e 100644
--- a/src/mame/drivers/kaneko16.c
+++ b/src/mame/drivers/kaneko16.c
@@ -1630,6 +1630,7 @@ static MACHINE_CONFIG_START( berlwall, kaneko16_berlwall_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(kaneko16_berlwall_state, screen_update_berlwall)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 1x4bit_1x4bit)
MCFG_PALETTE_ADD("palette", 2048 + 32768) /* 32768 static colors for the bg */
@@ -1685,6 +1686,7 @@ static MACHINE_CONFIG_START( bakubrkr, kaneko16_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(kaneko16_berlwall_state, screen_update_kaneko16)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 1x4bit_2x4bit)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1757,6 +1759,7 @@ static MACHINE_CONFIG_START( blazeon, kaneko16_state )
MCFG_SCREEN_SIZE(320, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1 -8)
MCFG_SCREEN_UPDATE_DRIVER(kaneko16_berlwall_state, screen_update_kaneko16)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 1x4bit_1x4bit)
MCFG_PALETTE_ADD("palette", 2048)
@@ -1819,6 +1822,7 @@ static MACHINE_CONFIG_START( gtmr, kaneko16_gtmr_state )
MCFG_SCREEN_SIZE(320, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(kaneko16_berlwall_state, screen_update_kaneko16)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 1x8bit_2x4bit)
MCFG_PALETTE_ADD("palette", 32768)
@@ -1940,6 +1944,7 @@ static MACHINE_CONFIG_START( mgcrystl, kaneko16_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(kaneko16_berlwall_state, screen_update_kaneko16)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", 1x4bit_2x4bit)
MCFG_PALETTE_ADD("palette", 2048)
@@ -2066,6 +2071,7 @@ static MACHINE_CONFIG_START( shogwarr, kaneko16_shogwarr_state )
MCFG_SCREEN_SIZE(320, 240)
MCFG_SCREEN_VISIBLE_AREA(40, 296-1, 16, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(kaneko16_berlwall_state, screen_update_kaneko16)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
MCFG_GFXDECODE_ADD("gfxdecode", 1x4bit_1x4bit)
diff --git a/src/mame/drivers/karnov.c b/src/mame/drivers/karnov.c
index 8da0b1846ed..7636213ce4e 100644
--- a/src/mame/drivers/karnov.c
+++ b/src/mame/drivers/karnov.c
@@ -801,6 +801,7 @@ static MACHINE_CONFIG_START( karnov, karnov_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(karnov_state, screen_update_karnov)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", karnov)
MCFG_PALETTE_ADD("palette", 1024)
@@ -845,6 +846,7 @@ static MACHINE_CONFIG_START( wndrplnt, karnov_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(karnov_state, screen_update_karnov)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", karnov)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/kchamp.c b/src/mame/drivers/kchamp.c
index bf321563589..02876bc205c 100644
--- a/src/mame/drivers/kchamp.c
+++ b/src/mame/drivers/kchamp.c
@@ -420,6 +420,7 @@ static MACHINE_CONFIG_START( kchampvs, kchamp_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(kchamp_state, screen_update_kchampvs)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", kchamp)
MCFG_PALETTE_ADD("palette", 256)
@@ -468,6 +469,7 @@ static MACHINE_CONFIG_START( kchamp, kchamp_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(kchamp_state, screen_update_kchamp)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", kchamp)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/kickgoal.c b/src/mame/drivers/kickgoal.c
index 9e85a3539e0..c958e332e86 100644
--- a/src/mame/drivers/kickgoal.c
+++ b/src/mame/drivers/kickgoal.c
@@ -659,6 +659,7 @@ static MACHINE_CONFIG_START( kickgoal, kickgoal_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(9*8, 55*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(kickgoal_state, screen_update_kickgoal)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", kickgoal)
MCFG_PALETTE_ADD("palette", 1024)
@@ -695,6 +696,7 @@ static MACHINE_CONFIG_START( actionhw, kickgoal_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(10*8+2, 54*8-1+2, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(kickgoal_state, screen_update_kickgoal)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", actionhw)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/kingdrby.c b/src/mame/drivers/kingdrby.c
index ccd21ba0dee..8ea468d8fb2 100644
--- a/src/mame/drivers/kingdrby.c
+++ b/src/mame/drivers/kingdrby.c
@@ -1049,6 +1049,7 @@ static MACHINE_CONFIG_START( kingdrby, kingdrby_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 224-1) /* controlled by CRTC */
MCFG_SCREEN_UPDATE_DRIVER(kingdrby_state, screen_update_kingdrby)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD("crtc", MC6845, "screen", CLK_1/32, mc6845_intf) /* 53.333 Hz. guess */
diff --git a/src/mame/drivers/kingobox.c b/src/mame/drivers/kingobox.c
index 61bd6af11df..cbe054fd591 100644
--- a/src/mame/drivers/kingobox.c
+++ b/src/mame/drivers/kingobox.c
@@ -490,6 +490,7 @@ static MACHINE_CONFIG_START( kingofb, kingofb_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(kingofb_state, screen_update_kingofb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", kingobox)
MCFG_PALETTE_ADD("palette", 256+8*2)
@@ -540,6 +541,7 @@ static MACHINE_CONFIG_START( ringking, kingofb_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(kingofb_state, screen_update_ringking)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", rk)
MCFG_PALETTE_ADD("palette", 256+8*2)
diff --git a/src/mame/drivers/kinst.c b/src/mame/drivers/kinst.c
index 8a5a17c7f28..467b47b464a 100644
--- a/src/mame/drivers/kinst.c
+++ b/src/mame/drivers/kinst.c
@@ -694,6 +694,7 @@ static MACHINE_CONFIG_START( kinst, kinst_state )
MCFG_SCREEN_SIZE(320, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(kinst_state, screen_update_kinst)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BBBBBGGGGGRRRRR("palette")
diff --git a/src/mame/drivers/klax.c b/src/mame/drivers/klax.c
index 6c51359094d..9cd4f220f93 100644
--- a/src/mame/drivers/klax.c
+++ b/src/mame/drivers/klax.c
@@ -181,6 +181,7 @@ static MACHINE_CONFIG_START( klax, klax_state )
/* the board uses an SOS-2 chip to generate video signals */
MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(klax_state, screen_update_klax)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(klax_state,klax)
diff --git a/src/mame/drivers/kncljoe.c b/src/mame/drivers/kncljoe.c
index e5aaa04d0ef..54a9571d05a 100644
--- a/src/mame/drivers/kncljoe.c
+++ b/src/mame/drivers/kncljoe.c
@@ -283,6 +283,7 @@ static MACHINE_CONFIG_START( kncljoe, kncljoe_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(kncljoe_state, screen_update_kncljoe)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", kncljoe)
MCFG_PALETTE_ADD("palette", 16*8+16*8)
diff --git a/src/mame/drivers/koftball.c b/src/mame/drivers/koftball.c
index 15c8447aabd..ebb2c75dd90 100644
--- a/src/mame/drivers/koftball.c
+++ b/src/mame/drivers/koftball.c
@@ -253,6 +253,8 @@ static MACHINE_CONFIG_START( koftball, koftball_state )
MCFG_SCREEN_UPDATE_DRIVER(koftball_state, screen_update_koftball)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 30*8-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 256)
MCFG_GFXDECODE_ADD("gfxdecode", koftball)
diff --git a/src/mame/drivers/koikoi.c b/src/mame/drivers/koikoi.c
index 3f32d60e3be..e5d7f8ff6a5 100644
--- a/src/mame/drivers/koikoi.c
+++ b/src/mame/drivers/koikoi.c
@@ -374,6 +374,7 @@ static MACHINE_CONFIG_START( koikoi, koikoi_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(koikoi_state, screen_update_koikoi)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", koikoi)
MCFG_PALETTE_ADD("palette", 8*32)
diff --git a/src/mame/drivers/konamim2.c b/src/mame/drivers/konamim2.c
index 517e545ff8a..da68fe8624f 100644
--- a/src/mame/drivers/konamim2.c
+++ b/src/mame/drivers/konamim2.c
@@ -1189,6 +1189,7 @@ static MACHINE_CONFIG_START( m2, konamim2_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 511, 0, 383)
MCFG_SCREEN_UPDATE_DRIVER(konamim2_state, screen_update_m2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_RRRRRGGGGGBBBBB("palette")
diff --git a/src/mame/drivers/konendev.c b/src/mame/drivers/konendev.c
index e158a4e7ddc..94fcc4024ba 100644
--- a/src/mame/drivers/konendev.c
+++ b/src/mame/drivers/konendev.c
@@ -117,6 +117,7 @@ static MACHINE_CONFIG_START( konendev, konendev_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 479)
MCFG_SCREEN_UPDATE_DRIVER(konendev_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
diff --git a/src/mame/drivers/kopunch.c b/src/mame/drivers/kopunch.c
index 57c5b26e9af..3f524628a9f 100644
--- a/src/mame/drivers/kopunch.c
+++ b/src/mame/drivers/kopunch.c
@@ -193,6 +193,7 @@ static MACHINE_CONFIG_START( kopunch, kopunch_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(kopunch_state, screen_update_kopunch)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", kopunch)
MCFG_PALETTE_ADD("palette", 8)
diff --git a/src/mame/drivers/ksayakyu.c b/src/mame/drivers/ksayakyu.c
index f4eddb92690..dc0379edc71 100644
--- a/src/mame/drivers/ksayakyu.c
+++ b/src/mame/drivers/ksayakyu.c
@@ -286,6 +286,7 @@ static MACHINE_CONFIG_START( ksayakyu, ksayakyu_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ksayakyu_state, screen_update_ksayakyu)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ksayakyu)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/kyugo.c b/src/mame/drivers/kyugo.c
index 5af882ce5d5..a6fec2986b1 100644
--- a/src/mame/drivers/kyugo.c
+++ b/src/mame/drivers/kyugo.c
@@ -546,6 +546,7 @@ static MACHINE_CONFIG_START( gyrodine, kyugo_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(kyugo_state, screen_update_kyugo)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", kyugo)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
diff --git a/src/mame/drivers/labyrunr.c b/src/mame/drivers/labyrunr.c
index 8e9321c0e6f..f688fbdce3a 100644
--- a/src/mame/drivers/labyrunr.c
+++ b/src/mame/drivers/labyrunr.c
@@ -198,6 +198,7 @@ static MACHINE_CONFIG_START( labyrunr, labyrunr_state )
MCFG_SCREEN_SIZE(37*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 35*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(labyrunr_state, screen_update_labyrunr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", labyrunr)
MCFG_PALETTE_ADD("palette", 2*8*16*16)
diff --git a/src/mame/drivers/ladybug.c b/src/mame/drivers/ladybug.c
index 95c988a7846..43d34d4c0d0 100644
--- a/src/mame/drivers/ladybug.c
+++ b/src/mame/drivers/ladybug.c
@@ -765,6 +765,7 @@ static MACHINE_CONFIG_START( ladybug, ladybug_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 4*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ladybug_state, screen_update_ladybug)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ladybug)
MCFG_PALETTE_ADD("palette", 4*8+4*16)
@@ -807,6 +808,7 @@ static MACHINE_CONFIG_START( sraider, ladybug_state )
MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 4*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ladybug_state, screen_update_sraider)
MCFG_SCREEN_VBLANK_DRIVER(ladybug_state, screen_eof_sraider)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", sraider)
MCFG_PALETTE_ADD("palette", 4*8+4*16+32+2)
diff --git a/src/mame/drivers/ladyfrog.c b/src/mame/drivers/ladyfrog.c
index b262959f40d..ff521039c29 100644
--- a/src/mame/drivers/ladyfrog.c
+++ b/src/mame/drivers/ladyfrog.c
@@ -313,6 +313,7 @@ static MACHINE_CONFIG_START( ladyfrog, ladyfrog_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 29*8-1) // black borders in ladyfrog gameplay are correct
MCFG_SCREEN_UPDATE_DRIVER(ladyfrog_state, screen_update_ladyfrog)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ladyfrog)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/laserbas.c b/src/mame/drivers/laserbas.c
index 1459e8f8e74..fa56410a667 100644
--- a/src/mame/drivers/laserbas.c
+++ b/src/mame/drivers/laserbas.c
@@ -327,6 +327,7 @@ static MACHINE_CONFIG_START( laserbas, laserbas_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(laserbas_state, screen_update_laserbas)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD("crtc", H46505, "screen", 3000000/4, mc6845_intf) /* unknown clock, hand tuned to get ~60 fps */
diff --git a/src/mame/drivers/laserbat.c b/src/mame/drivers/laserbat.c
index 8f7bcfc0247..01822b3493b 100644
--- a/src/mame/drivers/laserbat.c
+++ b/src/mame/drivers/laserbat.c
@@ -721,6 +721,7 @@ static MACHINE_CONFIG_START( laserbat, laserbat_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(1*8, 29*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(laserbat_state, screen_update_laserbat)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", laserbat)
MCFG_PALETTE_ADD("palette", 1024)
@@ -769,6 +770,7 @@ static MACHINE_CONFIG_START( catnmous, laserbat_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(laserbat_state, screen_update_laserbat)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", laserbat)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/lasso.c b/src/mame/drivers/lasso.c
index 74050bc315d..fcf028b4b07 100644
--- a/src/mame/drivers/lasso.c
+++ b/src/mame/drivers/lasso.c
@@ -494,6 +494,7 @@ static MACHINE_CONFIG_START( base, lasso_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(lasso_state, screen_update_lasso)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lasso)
diff --git a/src/mame/drivers/lastbank.c b/src/mame/drivers/lastbank.c
index 3756dc00562..fdb12ccd338 100644
--- a/src/mame/drivers/lastbank.c
+++ b/src/mame/drivers/lastbank.c
@@ -476,6 +476,7 @@ static MACHINE_CONFIG_START( lastbank, lastbank_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(lastbank_state, screen_update)
MCFG_SCREEN_VBLANK_DRIVER(lastbank_state, screen_eof)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lastbank )
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/lastduel.c b/src/mame/drivers/lastduel.c
index f20e185f07c..ddb04537bc7 100644
--- a/src/mame/drivers/lastduel.c
+++ b/src/mame/drivers/lastduel.c
@@ -513,6 +513,7 @@ static MACHINE_CONFIG_START( lastduel, lastduel_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(lastduel_state, screen_update_lastduel)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_BUFFERED_SPRITERAM16_ADD("spriteram")
@@ -556,6 +557,7 @@ static MACHINE_CONFIG_START( madgear, lastduel_state )
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(lastduel_state, screen_update_madgear)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_BUFFERED_SPRITERAM16_ADD("spriteram")
diff --git a/src/mame/drivers/lastfght.c b/src/mame/drivers/lastfght.c
index 08b90d61187..80864aedb67 100644
--- a/src/mame/drivers/lastfght.c
+++ b/src/mame/drivers/lastfght.c
@@ -584,7 +584,7 @@ static MACHINE_CONFIG_START( lastfght, lastfght_state )
MCFG_SCREEN_VISIBLE_AREA( 0, 512-1, 0, 256-16-1 )
MCFG_SCREEN_REFRESH_RATE( 60 )
MCFG_SCREEN_UPDATE_DRIVER(lastfght_state, screen_update_lastfght)
-
+ MCFG_SCREEN_PALETTE("palette")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/lazercmd.c b/src/mame/drivers/lazercmd.c
index 8b552acce9b..554c6a6819a 100644
--- a/src/mame/drivers/lazercmd.c
+++ b/src/mame/drivers/lazercmd.c
@@ -645,6 +645,7 @@ static MACHINE_CONFIG_START( lazercmd, lazercmd_state )
MCFG_SCREEN_SIZE(HORZ_RES * HORZ_CHR, VERT_RES * VERT_CHR + 16)
MCFG_SCREEN_VISIBLE_AREA(0 * HORZ_CHR, HORZ_RES * HORZ_CHR - 1, 0 * VERT_CHR, (VERT_RES - 1) * VERT_CHR - 1)
MCFG_SCREEN_UPDATE_DRIVER(lazercmd_state, screen_update_lazercmd)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lazercmd)
MCFG_PALETTE_ADD("palette", 5)
@@ -677,6 +678,7 @@ static MACHINE_CONFIG_START( medlanes, lazercmd_state )
MCFG_SCREEN_SIZE(HORZ_RES * HORZ_CHR, VERT_RES * VERT_CHR)
MCFG_SCREEN_VISIBLE_AREA(0 * HORZ_CHR, HORZ_RES * HORZ_CHR - 1, 0 * VERT_CHR, VERT_RES * VERT_CHR - 1)
MCFG_SCREEN_UPDATE_DRIVER(lazercmd_state, screen_update_lazercmd)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lazercmd)
MCFG_PALETTE_ADD("palette", 5)
@@ -709,6 +711,7 @@ static MACHINE_CONFIG_START( bbonk, lazercmd_state )
MCFG_SCREEN_SIZE(HORZ_RES * HORZ_CHR, VERT_RES * VERT_CHR)
MCFG_SCREEN_VISIBLE_AREA(0 * HORZ_CHR, HORZ_RES * HORZ_CHR - 1, 0 * VERT_CHR, (VERT_RES - 1) * VERT_CHR - 1)
MCFG_SCREEN_UPDATE_DRIVER(lazercmd_state, screen_update_lazercmd)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lazercmd)
MCFG_PALETTE_ADD("palette", 5)
diff --git a/src/mame/drivers/lbeach.c b/src/mame/drivers/lbeach.c
index 54573be26aa..a4f70e46f31 100644
--- a/src/mame/drivers/lbeach.c
+++ b/src/mame/drivers/lbeach.c
@@ -339,6 +339,7 @@ static MACHINE_CONFIG_START( lbeach, lbeach_state )
MCFG_SCREEN_VISIBLE_AREA(0, 511-32, 0, 255-24)
MCFG_SCREEN_UPDATE_DRIVER(lbeach_state, screen_update_lbeach)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) // needed for collision detection
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lbeach)
MCFG_PALETTE_ADD("palette", 2+8+2)
diff --git a/src/mame/drivers/legionna.c b/src/mame/drivers/legionna.c
index f3bf710c39d..ed87c48df19 100644
--- a/src/mame/drivers/legionna.c
+++ b/src/mame/drivers/legionna.c
@@ -1073,6 +1073,7 @@ static MACHINE_CONFIG_START( legionna, legionna_state )
MCFG_SCREEN_SIZE(36*8, 36*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_legionna)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", legionna)
MCFG_PALETTE_ADD_INIT_BLACK("palette", 128*16)
@@ -1103,6 +1104,7 @@ static MACHINE_CONFIG_START( heatbrl, legionna_state )
MCFG_SCREEN_SIZE(36*8, 36*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_legionna)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", heatbrl)
@@ -1134,6 +1136,7 @@ static MACHINE_CONFIG_START( godzilla, legionna_state )
// MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
MCFG_SCREEN_RAW_PARAMS(14318180/2,442,0,320,262,0,224) // ~61 Hz
MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_godzilla)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", heatbrl)
@@ -1164,6 +1167,7 @@ static MACHINE_CONFIG_START( denjinmk, legionna_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_godzilla)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", heatbrl)
@@ -1194,6 +1198,7 @@ static MACHINE_CONFIG_START( grainbow, legionna_state )
MCFG_SCREEN_SIZE(64*8, 36*8)
MCFG_SCREEN_VISIBLE_AREA(2*8, 42*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_grainbow)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", grainbow)
@@ -1225,6 +1230,7 @@ static MACHINE_CONFIG_START( cupsoc, legionna_state )
MCFG_SCREEN_SIZE(42*8, 36*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_grainbow)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cupsoc)
@@ -1264,6 +1270,7 @@ static MACHINE_CONFIG_START( cupsocbl, legionna_state )
MCFG_SCREEN_SIZE(42*8, 36*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_grainbow)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", heatbrl_csb)
diff --git a/src/mame/drivers/lethal.c b/src/mame/drivers/lethal.c
index 0677b36a6da..dfc7f5d0f3c 100644
--- a/src/mame/drivers/lethal.c
+++ b/src/mame/drivers/lethal.c
@@ -564,6 +564,7 @@ static MACHINE_CONFIG_START( lethalen, lethal_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(216, 504-1, 16, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(lethal_state, screen_update_lethalen)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 7168+1)
MCFG_PALETTE_ENABLE_SHADOWS()
diff --git a/src/mame/drivers/lethalj.c b/src/mame/drivers/lethalj.c
index fc8cc84c807..74b9a708fca 100644
--- a/src/mame/drivers/lethalj.c
+++ b/src/mame/drivers/lethalj.c
@@ -674,7 +674,7 @@ static MACHINE_CONFIG_START( gameroom, lethalj_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(VIDEO_CLOCK, 701, 0, 512, 263, 0, 236)
MCFG_SCREEN_UPDATE_DEVICE("maincpu", tms34010_device, tms340x0_ind16)
-
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_RRRRRGGGGGBBBBB("palette")
diff --git a/src/mame/drivers/liberate.c b/src/mame/drivers/liberate.c
index dd89f7834fb..6e92df0a634 100644
--- a/src/mame/drivers/liberate.c
+++ b/src/mame/drivers/liberate.c
@@ -837,6 +837,7 @@ static MACHINE_CONFIG_START( liberate, liberate_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(liberate_state, screen_update_liberate)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", liberate)
MCFG_PALETTE_ADD("palette", 33)
@@ -916,6 +917,7 @@ static MACHINE_CONFIG_START( prosport, liberate_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(liberate_state, screen_update_prosport)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", prosport)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/limenko.c b/src/mame/drivers/limenko.c
index fa634b5c333..5568be25c70 100644
--- a/src/mame/drivers/limenko.c
+++ b/src/mame/drivers/limenko.c
@@ -750,6 +750,7 @@ static MACHINE_CONFIG_START( limenko, limenko_state )
MCFG_SCREEN_SIZE(384, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 383, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(limenko_state, screen_update_limenko)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", limenko)
MCFG_PALETTE_ADD("palette", 0x1000)
@@ -781,6 +782,7 @@ static MACHINE_CONFIG_START( spotty, limenko_state )
MCFG_SCREEN_SIZE(384, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 383, 0, 239)
MCFG_SCREEN_UPDATE_DRIVER(limenko_state, screen_update_limenko)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", limenko)
MCFG_PALETTE_ADD("palette", 0x1000)
diff --git a/src/mame/drivers/littlerb.c b/src/mame/drivers/littlerb.c
index ba2345690a4..adec3b8b503 100644
--- a/src/mame/drivers/littlerb.c
+++ b/src/mame/drivers/littlerb.c
@@ -949,6 +949,7 @@ static MACHINE_CONFIG_START( littlerb, littlerb_state )
MCFG_SCREEN_SIZE(512+22, 312)
MCFG_SCREEN_VISIBLE_AREA(0*8, 336-1, 0*8, 288-1)
MCFG_SCREEN_UPDATE_DRIVER(littlerb_state, screen_update_littlerb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEVICE_ADD("littlerbvdp", LITTLERBVDP, 0)
#endif
diff --git a/src/mame/drivers/lkage.c b/src/mame/drivers/lkage.c
index 83779441988..4bd11ce0088 100644
--- a/src/mame/drivers/lkage.c
+++ b/src/mame/drivers/lkage.c
@@ -561,6 +561,7 @@ static MACHINE_CONFIG_START( lkage, lkage_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(2*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(lkage_state, screen_update_lkage)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lkage)
MCFG_PALETTE_ADD("palette", 1024)
@@ -606,6 +607,7 @@ static MACHINE_CONFIG_START( lkageb, lkage_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(2*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(lkage_state, screen_update_lkage)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lkage)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/lockon.c b/src/mame/drivers/lockon.c
index ae2d6f04475..a9b82529251 100644
--- a/src/mame/drivers/lockon.c
+++ b/src/mame/drivers/lockon.c
@@ -510,6 +510,7 @@ static MACHINE_CONFIG_START( lockon, lockon_state )
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(lockon_state, screen_update_lockon)
MCFG_SCREEN_VBLANK_DRIVER(lockon_state, screen_eof_lockon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lockon)
MCFG_PALETTE_ADD("palette", 1024 + 2048)
diff --git a/src/mame/drivers/looping.c b/src/mame/drivers/looping.c
index f7d771fcc42..a5d37a9fc9a 100644
--- a/src/mame/drivers/looping.c
+++ b/src/mame/drivers/looping.c
@@ -684,6 +684,7 @@ static MACHINE_CONFIG_START( looping, looping_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(looping_state, screen_update_looping)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", looping)
diff --git a/src/mame/drivers/lordgun.c b/src/mame/drivers/lordgun.c
index bcae664bcb9..06436aa90e4 100644
--- a/src/mame/drivers/lordgun.c
+++ b/src/mame/drivers/lordgun.c
@@ -685,6 +685,7 @@ static MACHINE_CONFIG_START( lordgun, lordgun_state )
MCFG_SCREEN_SIZE(0x200, 0x100)
MCFG_SCREEN_VISIBLE_AREA(0,0x1c0-1, 0,0xe0-1)
MCFG_SCREEN_UPDATE_DRIVER(lordgun_state, screen_update_lordgun)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lordgun)
MCFG_PALETTE_ADD("palette", 0x800 * 8) // 0x800 real colors, repeated per priority level
@@ -721,6 +722,7 @@ static MACHINE_CONFIG_START( aliencha, lordgun_state )
MCFG_SCREEN_SIZE(0x200, 0x100)
MCFG_SCREEN_VISIBLE_AREA(0,0x1c0-1, 0,0xe0-1)
MCFG_SCREEN_UPDATE_DRIVER(lordgun_state, screen_update_lordgun)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lordgun)
MCFG_PALETTE_ADD("palette", 0x800 * 8) // 0x800 real colors, repeated per priority level
diff --git a/src/mame/drivers/lsasquad.c b/src/mame/drivers/lsasquad.c
index d6ffe6d6186..c363d0b7580 100644
--- a/src/mame/drivers/lsasquad.c
+++ b/src/mame/drivers/lsasquad.c
@@ -631,6 +631,7 @@ static MACHINE_CONFIG_START( lsasquad, lsasquad_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(lsasquad_state, screen_update_lsasquad)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lsasquad)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 512)
@@ -686,6 +687,7 @@ static MACHINE_CONFIG_START( daikaiju, lsasquad_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(lsasquad_state, screen_update_daikaiju)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lsasquad)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 512)
diff --git a/src/mame/drivers/ltcasino.c b/src/mame/drivers/ltcasino.c
index e5ab2f2f298..ef9b1824600 100644
--- a/src/mame/drivers/ltcasino.c
+++ b/src/mame/drivers/ltcasino.c
@@ -658,8 +658,9 @@ static MACHINE_CONFIG_START( ltcasino, ltcasino_state )
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(64*8, 32*8)
- MCFG_SCREEN_VISIBLE_AREA(6*8, 58*8-1, 0, 32*8-1)
+ MCFG_SCREEN_VISIBLE_AREA(6*8, 58*8-1, 0, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ltcasino_state, screen_update_ltcasino)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ltcasino)
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/luckgrln.c b/src/mame/drivers/luckgrln.c
index b8c8094404d..47988814449 100644
--- a/src/mame/drivers/luckgrln.c
+++ b/src/mame/drivers/luckgrln.c
@@ -1010,6 +1010,7 @@ static MACHINE_CONFIG_START( luckgrln, luckgrln_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(luckgrln_state, screen_update_luckgrln)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", luckgrln)
MCFG_PALETTE_ADD("palette", 0x8000)
diff --git a/src/mame/drivers/lucky74.c b/src/mame/drivers/lucky74.c
index 3c8da314782..0529917374f 100644
--- a/src/mame/drivers/lucky74.c
+++ b/src/mame/drivers/lucky74.c
@@ -1549,6 +1549,7 @@ static MACHINE_CONFIG_START( lucky74, lucky74_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 1*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(lucky74_state, screen_update_lucky74)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lucky74)
diff --git a/src/mame/drivers/lvcards.c b/src/mame/drivers/lvcards.c
index 13438c1ae9e..daed2e811d7 100644
--- a/src/mame/drivers/lvcards.c
+++ b/src/mame/drivers/lvcards.c
@@ -475,6 +475,7 @@ static MACHINE_CONFIG_START( lvcards, lvcards_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(8*0, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(lvcards_state, screen_update_lvcards)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lvcards)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/lwings.c b/src/mame/drivers/lwings.c
index 5d4dfcfa7ee..7d36b13113a 100644
--- a/src/mame/drivers/lwings.c
+++ b/src/mame/drivers/lwings.c
@@ -790,6 +790,7 @@ static MACHINE_CONFIG_START( lwings, lwings_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(lwings_state, screen_update_lwings)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", lwings)
diff --git a/src/mame/drivers/m10.c b/src/mame/drivers/m10.c
index fc282dbc370..7a6ee68b49a 100644
--- a/src/mame/drivers/m10.c
+++ b/src/mame/drivers/m10.c
@@ -853,6 +853,7 @@ static MACHINE_CONFIG_START( m10, m10_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(IREMM10_PIXEL_CLOCK, IREMM10_HTOTAL, IREMM10_HBEND, IREMM10_HBSTART, IREMM10_VTOTAL, IREMM10_VBEND, IREMM10_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(m10_state, screen_update_m10)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", m10)
MCFG_PALETTE_ADD("palette", 2*8)
@@ -898,6 +899,7 @@ static MACHINE_CONFIG_START( m15, m10_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(IREMM15_PIXEL_CLOCK, IREMM15_HTOTAL, IREMM15_HBEND, IREMM15_HBSTART, IREMM15_VTOTAL, IREMM15_VBEND, IREMM15_VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(m10_state, screen_update_m15)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", empty)
MCFG_PALETTE_ADD("palette", 2*8)
diff --git a/src/mame/drivers/m107.c b/src/mame/drivers/m107.c
index d5a4ae97eb2..34f6b9fdb6b 100644
--- a/src/mame/drivers/m107.c
+++ b/src/mame/drivers/m107.c
@@ -775,6 +775,7 @@ static MACHINE_CONFIG_START( firebarr, m107_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(80, 511-112, 8, 247) /* 320 x 240 */
MCFG_SCREEN_UPDATE_DRIVER(m107_state, screen_update_m107)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", firebarr)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/m14.c b/src/mame/drivers/m14.c
index 9a9a2d7787f..21af3ef59f6 100644
--- a/src/mame/drivers/m14.c
+++ b/src/mame/drivers/m14.c
@@ -345,6 +345,8 @@ static MACHINE_CONFIG_START( m14, m14_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(m14_state, screen_update_m14)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", m14)
MCFG_PALETTE_ADD("palette", 0x20)
MCFG_PALETTE_INIT_OWNER(m14_state, m14)
diff --git a/src/mame/drivers/m52.c b/src/mame/drivers/m52.c
index c2e1be3d083..ce0f2bc9530 100644
--- a/src/mame/drivers/m52.c
+++ b/src/mame/drivers/m52.c
@@ -406,6 +406,7 @@ static MACHINE_CONFIG_START( m52, m52_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 136, 376, 282, 22, 274)
MCFG_SCREEN_UPDATE_DRIVER(m52_state, screen_update_m52)
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
MCFG_FRAGMENT_ADD(m52_sound_c_audio)
diff --git a/src/mame/drivers/m57.c b/src/mame/drivers/m57.c
index c012d6d0e06..f0189259d1a 100644
--- a/src/mame/drivers/m57.c
+++ b/src/mame/drivers/m57.c
@@ -239,6 +239,7 @@ static MACHINE_CONFIG_START( m57, m57_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(m57_state, screen_update_m57)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", m57)
MCFG_PALETTE_ADD("palette", 32*8+32*8)
diff --git a/src/mame/drivers/m58.c b/src/mame/drivers/m58.c
index d94f6347c84..d03052caabd 100644
--- a/src/mame/drivers/m58.c
+++ b/src/mame/drivers/m58.c
@@ -204,7 +204,7 @@ static MACHINE_CONFIG_START( yard, m58_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 0, 256, 282, 42, 266)
MCFG_SCREEN_UPDATE_DRIVER(m58_state, screen_update_yard)
-
+ MCFG_SCREEN_PALETTE("palette")
/* sound hardware */
MCFG_FRAGMENT_ADD(m52_large_audio)
diff --git a/src/mame/drivers/m62.c b/src/mame/drivers/m62.c
index 127f561ca83..26929e32a1a 100644
--- a/src/mame/drivers/m62.c
+++ b/src/mame/drivers/m62.c
@@ -945,6 +945,7 @@ static MACHINE_CONFIG_START( ldrun, m62_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA((64*8-384)/2, 64*8-(64*8-384)/2-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(m62_state, screen_update_ldrun)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ldrun)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/m63.c b/src/mame/drivers/m63.c
index 2c821d0c5ff..b130dfaf086 100644
--- a/src/mame/drivers/m63.c
+++ b/src/mame/drivers/m63.c
@@ -775,6 +775,7 @@ static MACHINE_CONFIG_START( m63, m63_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(m63_state, screen_update_m63)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", m63)
MCFG_PALETTE_ADD("palette", 256+4)
@@ -819,6 +820,7 @@ static MACHINE_CONFIG_START( fghtbskt, m63_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(m63_state, screen_update_m63)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fghtbskt)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
diff --git a/src/mame/drivers/m72.c b/src/mame/drivers/m72.c
index 781c11e4900..dac2d938535 100644
--- a/src/mame/drivers/m72.c
+++ b/src/mame/drivers/m72.c
@@ -1807,6 +1807,7 @@ static MACHINE_CONFIG_START( m72_base, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_m72)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,m72)
@@ -1862,6 +1863,7 @@ static MACHINE_CONFIG_START( rtype, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_m72)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,m72)
@@ -1899,6 +1901,7 @@ static MACHINE_CONFIG_START( xmultipl, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_m72)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,xmultipl)
@@ -1940,6 +1943,7 @@ static MACHINE_CONFIG_START( xmultiplm72, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_m72)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,m72)
@@ -1981,6 +1985,7 @@ static MACHINE_CONFIG_START( dbreed, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_m72)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,hharry)
@@ -2022,6 +2027,7 @@ static MACHINE_CONFIG_START( dbreedm72, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_m72)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,m72)
@@ -2063,6 +2069,7 @@ static MACHINE_CONFIG_START( rtype2, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_m72)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,rtype2)
@@ -2104,6 +2111,7 @@ static MACHINE_CONFIG_START( majtitle, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_majtitle)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,majtitle)
@@ -2145,6 +2153,7 @@ static MACHINE_CONFIG_START( hharry, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_m72)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,hharry)
@@ -2186,6 +2195,7 @@ static MACHINE_CONFIG_START( hharryu, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_m72)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,hharryu)
@@ -2227,6 +2237,7 @@ static MACHINE_CONFIG_START( dkgenm72, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_m72)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,m72)
@@ -2268,6 +2279,7 @@ static MACHINE_CONFIG_START( poundfor, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_m72)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,poundfor)
@@ -2309,6 +2321,7 @@ static MACHINE_CONFIG_START( cosmccop, m72_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(m72_state, screen_update_m72)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(m72_state,poundfor)
diff --git a/src/mame/drivers/m90.c b/src/mame/drivers/m90.c
index 64ae18307ee..713bdd8379d 100644
--- a/src/mame/drivers/m90.c
+++ b/src/mame/drivers/m90.c
@@ -733,6 +733,7 @@ static MACHINE_CONFIG_START( m90, m90_state )
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(6*8, 54*8-1, 17*8, 47*8-1)
MCFG_SCREEN_UPDATE_DRIVER(m90_state, screen_update_m90)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", m90)
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mame/drivers/m92.c b/src/mame/drivers/m92.c
index 4c7bcbf4a92..b6bf4836c36 100644
--- a/src/mame/drivers/m92.c
+++ b/src/mame/drivers/m92.c
@@ -940,6 +940,7 @@ static MACHINE_CONFIG_START( m92, m92_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(80, 511-112, 8, 247) /* 320 x 240 */
MCFG_SCREEN_UPDATE_DRIVER(m92_state, screen_update_m92)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", m92)
MCFG_PALETTE_ADD("palette", 2048)
diff --git a/src/mame/drivers/macs.c b/src/mame/drivers/macs.c
index 649122902bd..2705af8bec9 100644
--- a/src/mame/drivers/macs.c
+++ b/src/mame/drivers/macs.c
@@ -492,6 +492,7 @@ static MACHINE_CONFIG_START( macs, macs_state )
MCFG_SCREEN_SIZE(128*8, 128*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 128*8-1, 0*8, 128*8-1)
MCFG_SCREEN_UPDATE_DRIVER(st0016_state, screen_update_st0016)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", macs)
MCFG_PALETTE_ADD("palette", 16*16*4+1)
diff --git a/src/mame/drivers/madmotor.c b/src/mame/drivers/madmotor.c
index f3236b126c9..a1b10ef0737 100644
--- a/src/mame/drivers/madmotor.c
+++ b/src/mame/drivers/madmotor.c
@@ -246,6 +246,7 @@ static MACHINE_CONFIG_START( madmotor, madmotor_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(madmotor_state, screen_update_madmotor)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", madmotor)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/magic10.c b/src/mame/drivers/magic10.c
index bcf47639d57..1d7077474bf 100644
--- a/src/mame/drivers/magic10.c
+++ b/src/mame/drivers/magic10.c
@@ -737,6 +737,7 @@ static MACHINE_CONFIG_START( magic10, magic10_state )
MCFG_SCREEN_SIZE(64*8, 64*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 44*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(magic10_state, screen_update_magic10)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x100)
MCFG_GFXDECODE_ADD("gfxdecode", magic10)
diff --git a/src/mame/drivers/magicfly.c b/src/mame/drivers/magicfly.c
index ac96e353a50..7c0eb8d0c71 100644
--- a/src/mame/drivers/magicfly.c
+++ b/src/mame/drivers/magicfly.c
@@ -957,6 +957,7 @@ static MACHINE_CONFIG_START( magicfly, magicfly_state )
MCFG_SCREEN_SIZE((39+1)*8, (31+1)*8) /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1). */
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 29*8-1) /* Taken from MC6845 init, registers 01 & 06. */
MCFG_SCREEN_UPDATE_DRIVER(magicfly_state, screen_update_magicfly)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", magicfly)
MCFG_PALETTE_ADD("palette", 32)
diff --git a/src/mame/drivers/magmax.c b/src/mame/drivers/magmax.c
index a6e5177797e..182987d5482 100644
--- a/src/mame/drivers/magmax.c
+++ b/src/mame/drivers/magmax.c
@@ -361,6 +361,7 @@ static MACHINE_CONFIG_START( magmax, magmax_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(magmax_state, screen_update_magmax)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", magmax)
MCFG_PALETTE_ADD("palette", 1*16 + 16*16 + 256)
diff --git a/src/mame/drivers/mainevt.c b/src/mame/drivers/mainevt.c
index 8ee42d580d1..4caadf5d2d9 100644
--- a/src/mame/drivers/mainevt.c
+++ b/src/mame/drivers/mainevt.c
@@ -437,6 +437,7 @@ static MACHINE_CONFIG_START( mainevt, mainevt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(mainevt_state, screen_update_mainevt)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_ENABLE_SHADOWS()
@@ -500,6 +501,7 @@ static MACHINE_CONFIG_START( devstors, mainevt_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(mainevt_state, screen_update_dv)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_ENABLE_SHADOWS()
diff --git a/src/mame/drivers/mainsnk.c b/src/mame/drivers/mainsnk.c
index 68058ddc58d..8156b12fd6b 100644
--- a/src/mame/drivers/mainsnk.c
+++ b/src/mame/drivers/mainsnk.c
@@ -400,6 +400,7 @@ static MACHINE_CONFIG_START( mainsnk, mainsnk_state )
MCFG_SCREEN_SIZE(36*8, 28*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(mainsnk_state, screen_update_mainsnk)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mainsnk)
MCFG_PALETTE_ADD("palette", 0x400)
diff --git a/src/mame/drivers/majorpkr.c b/src/mame/drivers/majorpkr.c
index 60ff32339ae..56d919354fc 100644
--- a/src/mame/drivers/majorpkr.c
+++ b/src/mame/drivers/majorpkr.c
@@ -1039,6 +1039,7 @@ static MACHINE_CONFIG_START( majorpkr, majorpkr_state )
MCFG_SCREEN_SIZE((47+1)*16, (36+1)*8) /* through CRTC registers: 768 x 296 */
MCFG_SCREEN_VISIBLE_AREA(0, (36*16)-1, 0, (28*8)-1) /* through CRTC registers: 560(+16) x 224 */
MCFG_SCREEN_UPDATE_DRIVER(majorpkr_state, screen_update_majorpkr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", majorpkr)
MCFG_PALETTE_ADD("palette", 0x100 * 16)
diff --git a/src/mame/drivers/mappy.c b/src/mame/drivers/mappy.c
index fc1a704e4d1..f2f7ce80762 100644
--- a/src/mame/drivers/mappy.c
+++ b/src/mame/drivers/mappy.c
@@ -1727,6 +1727,7 @@ static MACHINE_CONFIG_FRAGMENT( superpac_common )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(mappy_state, screen_update_superpac)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(mappy_state,superpac)
@@ -1808,6 +1809,7 @@ static MACHINE_CONFIG_START( phozon, mappy_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(mappy_state, screen_update_phozon)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(mappy_state,phozon)
@@ -1846,6 +1848,7 @@ static MACHINE_CONFIG_FRAGMENT( mappy_common )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(mappy_state, screen_update_mappy)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_VIDEO_START_OVERRIDE(mappy_state,mappy)
diff --git a/src/mame/drivers/marineb.c b/src/mame/drivers/marineb.c
index 572f1af1f70..2d3a1fa51d8 100644
--- a/src/mame/drivers/marineb.c
+++ b/src/mame/drivers/marineb.c
@@ -545,6 +545,7 @@ static MACHINE_CONFIG_START( marineb, marineb_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(marineb_state, screen_update_marineb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", marineb)
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/marinedt.c b/src/mame/drivers/marinedt.c
index d82823e7e22..2cb242e2a1e 100644
--- a/src/mame/drivers/marinedt.c
+++ b/src/mame/drivers/marinedt.c
@@ -685,6 +685,7 @@ static MACHINE_CONFIG_START( marinedt, marinedt_state )
MCFG_SCREEN_SIZE(4*8+32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(marinedt_state, screen_update_marinedt)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", marinedt)
MCFG_PALETTE_ADD("palette", 64)
diff --git a/src/mame/drivers/mario.c b/src/mame/drivers/mario.c
index 7e116c04eb7..a9378076b12 100644
--- a/src/mame/drivers/mario.c
+++ b/src/mame/drivers/mario.c
@@ -352,6 +352,7 @@ static MACHINE_CONFIG_START( mario_base, mario_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(mario_state, screen_update_mario)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mario)
MCFG_PALETTE_ADD("palette", 512)
MCFG_PALETTE_INIT_OWNER(mario_state, mario)
diff --git a/src/mame/drivers/markham.c b/src/mame/drivers/markham.c
index bc9cef675bb..2d213cd3040 100644
--- a/src/mame/drivers/markham.c
+++ b/src/mame/drivers/markham.c
@@ -192,6 +192,7 @@ static MACHINE_CONFIG_START( markham, markham_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(markham_state, screen_update_markham)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", markham)
MCFG_PALETTE_ADD("palette", 1024)
diff --git a/src/mame/drivers/mastboy.c b/src/mame/drivers/mastboy.c
index 0067c397065..7d6c9ac6fbd 100644
--- a/src/mame/drivers/mastboy.c
+++ b/src/mame/drivers/mastboy.c
@@ -903,6 +903,7 @@ static MACHINE_CONFIG_START( mastboy, mastboy_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(mastboy_state, screen_update_mastboy)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mastboy)
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/matmania.c b/src/mame/drivers/matmania.c
index fcb3f5242cb..cb679faf445 100644
--- a/src/mame/drivers/matmania.c
+++ b/src/mame/drivers/matmania.c
@@ -322,6 +322,7 @@ static MACHINE_CONFIG_START( matmania, matmania_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(matmania_state, screen_update_matmania)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", matmania)
MCFG_PALETTE_ADD("palette", 64+16)
@@ -403,6 +404,7 @@ static MACHINE_CONFIG_START( maniach, matmania_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(matmania_state, screen_update_maniach)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", maniach)
MCFG_PALETTE_ADD("palette", 64+16)
diff --git a/src/mame/drivers/maxaflex.c b/src/mame/drivers/maxaflex.c
index 9222b54af25..61c8fabc2e5 100644
--- a/src/mame/drivers/maxaflex.c
+++ b/src/mame/drivers/maxaflex.c
@@ -417,6 +417,7 @@ static MACHINE_CONFIG_START( a600xl, maxaflex_state )
MCFG_SCREEN_REFRESH_RATE(FRAME_RATE_60HZ)
MCFG_SCREEN_SIZE(HWIDTH*8, TOTAL_LINES_60HZ)
MCFG_SCREEN_UPDATE_STATIC(atari)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_LEGACY(atari)
diff --git a/src/mame/drivers/maygayv1.c b/src/mame/drivers/maygayv1.c
index 04b56895c3d..fd832f1c5e6 100644
--- a/src/mame/drivers/maygayv1.c
+++ b/src/mame/drivers/maygayv1.c
@@ -1033,6 +1033,7 @@ static MACHINE_CONFIG_START( maygayv1, maygayv1_state )
MCFG_SCREEN_VISIBLE_AREA(0, 640 - 1, 0, 300 - 1)
MCFG_SCREEN_UPDATE_DRIVER(maygayv1_state, screen_update_maygayv1)
MCFG_SCREEN_VBLANK_DRIVER(maygayv1_state, screen_eof_maygayv1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
diff --git a/src/mame/drivers/mayumi.c b/src/mame/drivers/mayumi.c
index 1a8f93c4610..43018a3caf4 100644
--- a/src/mame/drivers/mayumi.c
+++ b/src/mame/drivers/mayumi.c
@@ -409,6 +409,7 @@ static MACHINE_CONFIG_START( mayumi, mayumi_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(2*8, 62*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(mayumi_state, screen_update_mayumi)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mayumi)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
diff --git a/src/mame/drivers/mcatadv.c b/src/mame/drivers/mcatadv.c
index 35a9e150e49..e339a85a839 100644
--- a/src/mame/drivers/mcatadv.c
+++ b/src/mame/drivers/mcatadv.c
@@ -450,6 +450,7 @@ static MACHINE_CONFIG_START( mcatadv, mcatadv_state )
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(mcatadv_state, screen_update_mcatadv)
MCFG_SCREEN_VBLANK_DRIVER(mcatadv_state, screen_eof_mcatadv)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mcatadv)
MCFG_PALETTE_ADD("palette", 0x2000/2)
diff --git a/src/mame/drivers/mcr.c b/src/mame/drivers/mcr.c
index ef127898724..2fad2755c21 100644
--- a/src/mame/drivers/mcr.c
+++ b/src/mame/drivers/mcr.c
@@ -1849,6 +1849,7 @@ static MACHINE_CONFIG_START( mcr_90009, mcr_state )
MCFG_SCREEN_SIZE(32*16, 30*16)
MCFG_SCREEN_VISIBLE_AREA(0*16, 32*16-1, 0*16, 30*16-1)
MCFG_SCREEN_UPDATE_DRIVER(mcr_state, screen_update_mcr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mcr)
MCFG_PALETTE_ADD("palette", 32)
diff --git a/src/mame/drivers/mcr3.c b/src/mame/drivers/mcr3.c
index 622e4ea2731..480715d0027 100644
--- a/src/mame/drivers/mcr3.c
+++ b/src/mame/drivers/mcr3.c
@@ -1305,6 +1305,7 @@ static MACHINE_CONFIG_START( mcrmono, mcr3_state )
MCFG_SCREEN_SIZE(32*16, 30*16)
MCFG_SCREEN_VISIBLE_AREA(0*16, 32*16-1, 0*16, 30*16-1)
MCFG_SCREEN_UPDATE_DRIVER(mcr3_state, screen_update_mcr3)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mcr3)
MCFG_PALETTE_ADD("palette", 64)
@@ -1422,6 +1423,7 @@ static MACHINE_CONFIG_START( spyhuntpr, mcr3_state )
MCFG_SCREEN_SIZE(30*16, 30*8)
MCFG_SCREEN_VISIBLE_AREA(0, 30*16-1, 0, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(mcr3_state, screen_update_spyhuntpr)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", spyhuntpr)
MCFG_PALETTE_ADD("palette", 64+4)
diff --git a/src/mame/drivers/mcr68.c b/src/mame/drivers/mcr68.c
index 0920c6235b1..49824d266f1 100644
--- a/src/mame/drivers/mcr68.c
+++ b/src/mame/drivers/mcr68.c
@@ -1050,6 +1050,7 @@ static MACHINE_CONFIG_START( zwackery, mcr68_state )
MCFG_SCREEN_SIZE(32*16, 30*16)
MCFG_SCREEN_VISIBLE_AREA(0, 32*16-1, 0, 30*16-1)
MCFG_SCREEN_UPDATE_DRIVER(mcr68_state, screen_update_zwackery)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", zwackery)
MCFG_PALETTE_ADD("palette", 4096)
@@ -1081,6 +1082,7 @@ static MACHINE_CONFIG_START( mcr68, mcr68_state )
MCFG_SCREEN_SIZE(32*16, 30*16)
MCFG_SCREEN_VISIBLE_AREA(0, 32*16-1, 0, 30*16-1)
MCFG_SCREEN_UPDATE_DRIVER(mcr68_state, screen_update_mcr68)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mcr68)
MCFG_PALETTE_ADD("palette", 64)
diff --git a/src/mame/drivers/meadows.c b/src/mame/drivers/meadows.c
index 3bb8c43d84f..83100279066 100644
--- a/src/mame/drivers/meadows.c
+++ b/src/mame/drivers/meadows.c
@@ -640,6 +640,7 @@ static MACHINE_CONFIG_START( meadows, meadows_state )
MCFG_SCREEN_SIZE(32*8, 30*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(meadows_state, screen_update_meadows)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", meadows)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
@@ -669,6 +670,7 @@ static MACHINE_CONFIG_START( minferno, meadows_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 24*8-1)
MCFG_SCREEN_UPDATE_DRIVER(meadows_state, screen_update_meadows)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", minferno)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
@@ -697,6 +699,7 @@ static MACHINE_CONFIG_START( bowl3d, meadows_state )
MCFG_SCREEN_SIZE(32*8, 30*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(meadows_state, screen_update_meadows)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", meadows)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mame/drivers/megasys1.c b/src/mame/drivers/megasys1.c
index e420a224de9..0fad8c63ac1 100644
--- a/src/mame/drivers/megasys1.c
+++ b/src/mame/drivers/megasys1.c
@@ -1475,6 +1475,7 @@ static MACHINE_CONFIG_START( system_A, megasys1_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(megasys1_state, screen_update_megasys1)
MCFG_SCREEN_VBLANK_DRIVER(megasys1_state, screen_eof_megasys1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ABC)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1535,6 +1536,7 @@ static MACHINE_CONFIG_START( system_Bbl, megasys1_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(megasys1_state, screen_update_megasys1)
MCFG_SCREEN_VBLANK_DRIVER(megasys1_state, screen_eof_megasys1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ABC)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1607,6 +1609,7 @@ static MACHINE_CONFIG_START( system_D, megasys1_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(megasys1_state, screen_update_megasys1)
MCFG_SCREEN_VBLANK_DRIVER(megasys1_state, screen_eof_megasys1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ABC)
MCFG_PALETTE_ADD("palette", 1024)
@@ -1666,6 +1669,7 @@ static MACHINE_CONFIG_START( system_Z, megasys1_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(megasys1_state, screen_update_megasys1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", Z)
MCFG_PALETTE_ADD("palette", 768)
diff --git a/src/mame/drivers/megazone.c b/src/mame/drivers/megazone.c
index e25676efaae..f5b6c1ce15c 100644
--- a/src/mame/drivers/megazone.c
+++ b/src/mame/drivers/megazone.c
@@ -268,6 +268,7 @@ static MACHINE_CONFIG_START( megazone, megazone_state )
MCFG_SCREEN_SIZE(36*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(megazone_state, screen_update_megazone)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", megazone)
MCFG_PALETTE_ADD("palette", 16*16+16*16)
diff --git a/src/mame/drivers/meijinsn.c b/src/mame/drivers/meijinsn.c
index 54f770f7c43..1422a717845 100644
--- a/src/mame/drivers/meijinsn.c
+++ b/src/mame/drivers/meijinsn.c
@@ -370,6 +370,7 @@ static MACHINE_CONFIG_START( meijinsn, meijinsn_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(12, 243, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(meijinsn_state, screen_update_meijinsn)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 32)
MCFG_PALETTE_INIT_OWNER(meijinsn_state, meijinsn)
diff --git a/src/mame/drivers/mermaid.c b/src/mame/drivers/mermaid.c
index b0191894e79..c8c452a3675 100644
--- a/src/mame/drivers/mermaid.c
+++ b/src/mame/drivers/mermaid.c
@@ -448,6 +448,7 @@ static MACHINE_CONFIG_START( mermaid, mermaid_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(mermaid_state, screen_update_mermaid)
MCFG_SCREEN_VBLANK_DRIVER(mermaid_state, screen_eof_mermaid)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mermaid)
MCFG_PALETTE_ADD("palette", 4*16+2*2)
diff --git a/src/mame/drivers/metalmx.c b/src/mame/drivers/metalmx.c
index fe4b36e18f6..c6d97f11032 100644
--- a/src/mame/drivers/metalmx.c
+++ b/src/mame/drivers/metalmx.c
@@ -747,6 +747,7 @@ static MACHINE_CONFIG_START( metalmx, metalmx_state )
MCFG_SCREEN_SIZE(512, 384)
MCFG_SCREEN_VISIBLE_AREA(0, 511, 0, 383)
MCFG_SCREEN_UPDATE_DRIVER(metalmx_state, screen_update_metalmx)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_RRRRRGGGGGGBBBBB("palette")
diff --git a/src/mame/drivers/metlclsh.c b/src/mame/drivers/metlclsh.c
index 11bcc7ad03c..81d4af62de8 100644
--- a/src/mame/drivers/metlclsh.c
+++ b/src/mame/drivers/metlclsh.c
@@ -287,6 +287,7 @@ static MACHINE_CONFIG_START( metlclsh, metlclsh_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(metlclsh_state, screen_update_metlclsh)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", metlclsh)
MCFG_PALETTE_ADD("palette", 3 * 16)
diff --git a/src/mame/drivers/metro.c b/src/mame/drivers/metro.c
index 907960e9a7f..da67299bcaa 100644
--- a/src/mame/drivers/metro.c
+++ b/src/mame/drivers/metro.c
@@ -3568,6 +3568,7 @@ static MACHINE_CONFIG_START( balcube, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4220)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4220_dx_tmap)
@@ -3602,6 +3603,7 @@ static MACHINE_CONFIG_START( daitoa, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4220)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4220_dx_tmap)
@@ -3636,6 +3638,7 @@ static MACHINE_CONFIG_START( msgogo, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4220)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4220_dx_tmap)
@@ -3670,6 +3673,7 @@ static MACHINE_CONFIG_START( bangball, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4220)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4220_dx_tmap)
@@ -3704,6 +3708,7 @@ static MACHINE_CONFIG_START( batlbubl, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4220)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4220_dx_tmap)
@@ -3742,6 +3747,7 @@ static MACHINE_CONFIG_START( daitorid, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4220)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4220_dx_tmap)
@@ -3785,6 +3791,7 @@ static MACHINE_CONFIG_START( dharma, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4220)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4220)
@@ -3827,6 +3834,7 @@ static MACHINE_CONFIG_START( karatour, metro_state )
MCFG_SCREEN_SIZE(320, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4100)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4100)
@@ -3869,6 +3877,7 @@ static MACHINE_CONFIG_START( 3kokushi, metro_state )
MCFG_SCREEN_SIZE(320, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4220)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4220)
@@ -3911,6 +3920,7 @@ static MACHINE_CONFIG_START( lastfort, metro_state )
MCFG_SCREEN_SIZE(360, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 360-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4100)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4100)
@@ -3952,6 +3962,7 @@ static MACHINE_CONFIG_START( lastforg, metro_state )
MCFG_SCREEN_SIZE(360, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 360-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4100)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4100)
@@ -3987,6 +3998,7 @@ static MACHINE_CONFIG_START( dokyusei, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4300)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4300)
@@ -4023,6 +4035,7 @@ static MACHINE_CONFIG_START( dokyusp, metro_state )
MCFG_SCREEN_SIZE(384, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4300)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4300)
@@ -4060,6 +4073,7 @@ static MACHINE_CONFIG_START( gakusai, metro_state )
MCFG_SCREEN_SIZE(320, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4300)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4300)
@@ -4097,6 +4111,7 @@ static MACHINE_CONFIG_START( gakusai2, metro_state )
MCFG_SCREEN_SIZE(320, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4300)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4300)
@@ -4139,6 +4154,7 @@ static MACHINE_CONFIG_START( pangpoms, metro_state )
MCFG_SCREEN_SIZE(360, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 360-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4100)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4100)
@@ -4181,6 +4197,7 @@ static MACHINE_CONFIG_START( poitto, metro_state )
MCFG_SCREEN_SIZE(360, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 360-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4100)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4100)
@@ -4223,6 +4240,7 @@ static MACHINE_CONFIG_START( pururun, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4220)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4220)
@@ -4266,6 +4284,7 @@ static MACHINE_CONFIG_START( skyalert, metro_state )
MCFG_SCREEN_SIZE(360, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 360-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4100)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4100)
@@ -4308,6 +4327,7 @@ static MACHINE_CONFIG_START( toride2g, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4220)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4220)
@@ -4344,6 +4364,7 @@ static MACHINE_CONFIG_START( mouja, metro_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4300)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4300)
@@ -4380,6 +4401,7 @@ static MACHINE_CONFIG_START( vmetal, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4220)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4220_dx_sprite)
@@ -4428,6 +4450,7 @@ static MACHINE_CONFIG_START( blzntrnd, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(8, 320-8-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", blzntrnd)
MCFG_VIDEO_START_OVERRIDE(metro_state,blzntrnd)
@@ -4476,6 +4499,7 @@ static MACHINE_CONFIG_START( gstrik2, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(8, 320-8-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", gstrik2)
MCFG_VIDEO_START_OVERRIDE(metro_state,gstrik2)
@@ -4514,6 +4538,7 @@ static MACHINE_CONFIG_START( puzzlet, metro_state )
MCFG_SCREEN_SIZE(320, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
MCFG_SCREEN_UPDATE_DRIVER(metro_state, screen_update_metro)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", i4300)
MCFG_VIDEO_START_OVERRIDE(metro_state,metro_i4300)
diff --git a/src/mame/drivers/mexico86.c b/src/mame/drivers/mexico86.c
index a32790009ed..f0f5ff0f402 100644
--- a/src/mame/drivers/mexico86.c
+++ b/src/mame/drivers/mexico86.c
@@ -487,6 +487,7 @@ static MACHINE_CONFIG_START( mexico86, mexico86_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(mexico86_state, screen_update_mexico86)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mexico86)
MCFG_PALETTE_ADD_RRRRGGGGBBBB_PROMS("palette", 256)
diff --git a/src/mame/drivers/meyc8088.c b/src/mame/drivers/meyc8088.c
index 591b71324c5..f971df30bf2 100644
--- a/src/mame/drivers/meyc8088.c
+++ b/src/mame/drivers/meyc8088.c
@@ -390,6 +390,7 @@ static MACHINE_CONFIG_START( meyc8088, meyc8088_state )
MCFG_SCREEN_RAW_PARAMS(XTAL_15MHz/3, 320, 0, 256, 261, 0, 224)
MCFG_SCREEN_UPDATE_DRIVER(meyc8088_state, screen_update_meyc8088)
MCFG_SCREEN_VBLANK_DRIVER(meyc8088_state, screen_eof_meyc8088)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 32)
MCFG_PALETTE_INIT_OWNER(meyc8088_state, meyc8088)
diff --git a/src/mame/drivers/mgolf.c b/src/mame/drivers/mgolf.c
index 66d7204e3f6..2808a0cf99e 100644
--- a/src/mame/drivers/mgolf.c
+++ b/src/mame/drivers/mgolf.c
@@ -362,6 +362,7 @@ static MACHINE_CONFIG_START( mgolf, mgolf_state )
MCFG_SCREEN_SIZE(256, 262)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 0, 223)
MCFG_SCREEN_UPDATE_DRIVER(mgolf_state, screen_update_mgolf)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mgolf)
MCFG_PALETTE_ADD("palette", 4)
diff --git a/src/mame/drivers/micro3d.c b/src/mame/drivers/micro3d.c
index c8e85a7144f..cead351ec64 100644
--- a/src/mame/drivers/micro3d.c
+++ b/src/mame/drivers/micro3d.c
@@ -359,6 +359,7 @@ static MACHINE_CONFIG_START( micro3d, micro3d_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL_40MHz/8*4, 192*4, 0, 144*4, 434, 0, 400)
MCFG_SCREEN_UPDATE_DEVICE("vgb", tms34010_device, tms340x0_ind16)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
diff --git a/src/mame/drivers/midas.c b/src/mame/drivers/midas.c
index bed037c9a13..2870a717efa 100644
--- a/src/mame/drivers/midas.c
+++ b/src/mame/drivers/midas.c
@@ -714,6 +714,7 @@ static MACHINE_CONFIG_START( livequiz, midas_state )
MCFG_SCREEN_SIZE(320, 25