summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Aaron Giles <aaron@aarongiles.com>2008-02-21 08:50:36 +0000
committer Aaron Giles <aaron@aarongiles.com>2008-02-21 08:50:36 +0000
commitb7c4a537cd133cb0d7f07e3e99ea0d8a27a0531a (patch)
treeef0e28a8aa802b02eec9136e7d876781ed8700d3 /src
parent10d998271654018ae46208002d1b835930a978aa (diff)
Most important thing to note about this change:
ALL DRIVERS MUST NOW EXPLICITLY DECLARE THEIR SCREENS. Read on for more detail.... Added device tag as a parameter to the start function for devices. Updated MC6845 to accept this tag. Added new functions for iterating through the device list and counting devices of a given type. Updated search and iteration functions to accept DEVICE_TYPE_WILDCARD to work across all devices. Added new macro MDRV_DEVICE_CONFIG_DATA() which is used to set a single item in an inline data structure. Removed the per-screen palette_base. This was an idea that never really worked out, nor have we really needed it. Defined a new device type VIDEO_SCREEN. Currently this has no live functionality, but merely serves as a placeholder/identifier for video screens. Eventually some of the screen management code may move into the start/stop/reset functions. Changed MDRV_SCREEN_* macros to build up VIDEO_SCREEN devices rather than storing values in the screen[] array. Changed MDRV_SCREEN_ADD to specify a screen type (RASTER, VECTOR, LCD for the moment). Removed the older VIDEO_TYPE_RASTER and VIDEO_TYPE_VECTOR; this information is now determined by walking the screen list. Removed the screen[] array from machine_config. Modified all code referencing Machine->config->screen[] and changed it to iterate over the devices using the new video_screen_first() and video_screen_next() functions. (The next step will be to add video_* functions that accept a tag instead of screen index, and then move systems over to always referencing screens by tag instead of index.) Removed implicit screen #0. This means that ALL DRIVERS MUST EXPLICITLY DECLARE THEIR SCREENS. Updated all drivers to do so. While there, grouped all MDRV_SCREEN_* parameters together. Also removed unnecessary VIDEO_TYPE_RASTER and VIDEO_TYPE_VECTOR. Also removed VBLANK and bitmap format information from vector games. This was painful and very tedious. Changed game information to display info about all screens.
Diffstat (limited to 'src')
-rw-r--r--src/emu/devintrf.c155
-rw-r--r--src/emu/devintrf.h32
-rw-r--r--src/emu/drivers/empty.c4
-rw-r--r--src/emu/info.c100
-rw-r--r--src/emu/mame.c36
-rw-r--r--src/emu/mconfig.c70
-rw-r--r--src/emu/mconfig.h100
-rw-r--r--src/emu/render.c27
-rw-r--r--src/emu/rendlay.c20
-rw-r--r--src/emu/ui.c104
-rw-r--r--src/emu/validity.c63
-rw-r--r--src/emu/video.c165
-rw-r--r--src/emu/video.h34
-rw-r--r--src/emu/video/mc6845.c2
-rw-r--r--src/emu/video/tms9928a.c4
-rw-r--r--src/mame/drivers/1942.c3
-rw-r--r--src/mame/drivers/1943.c6
-rw-r--r--src/mame/drivers/1945kiii.c8
-rw-r--r--src/mame/drivers/2mindril.c5
-rw-r--r--src/mame/drivers/39in1.c5
-rw-r--r--src/mame/drivers/40love.c12
-rw-r--r--src/mame/drivers/4enraya.c5
-rw-r--r--src/mame/drivers/8080bw.c1
-rw-r--r--src/mame/drivers/88games.c9
-rw-r--r--src/mame/drivers/ace.c5
-rw-r--r--src/mame/drivers/acefruit.c5
-rw-r--r--src/mame/drivers/acommand.c5
-rw-r--r--src/mame/drivers/actfancr.c14
-rw-r--r--src/mame/drivers/adp.c5
-rw-r--r--src/mame/drivers/aeroboto.c10
-rw-r--r--src/mame/drivers/aerofgt.c67
-rw-r--r--src/mame/drivers/airbustr.c7
-rw-r--r--src/mame/drivers/ajax.c8
-rw-r--r--src/mame/drivers/aleck64.c3
-rw-r--r--src/mame/drivers/alg.c11
-rw-r--r--src/mame/drivers/aliens.c10
-rw-r--r--src/mame/drivers/alpha68k.c59
-rw-r--r--src/mame/drivers/ambush.c5
-rw-r--r--src/mame/drivers/amidar.c7
-rw-r--r--src/mame/drivers/ampoker2.c9
-rw-r--r--src/mame/drivers/amspdwy.c5
-rw-r--r--src/mame/drivers/angelkds.c6
-rw-r--r--src/mame/drivers/appoooh.c10
-rw-r--r--src/mame/drivers/aquarium.c7
-rw-r--r--src/mame/drivers/arabian.c5
-rw-r--r--src/mame/drivers/arcadecl.c4
-rw-r--r--src/mame/drivers/arcadia.c9
-rw-r--r--src/mame/drivers/argus.c24
-rw-r--r--src/mame/drivers/arkanoid.c7
-rw-r--r--src/mame/drivers/armedf.c42
-rw-r--r--src/mame/drivers/artmagic.c3
-rw-r--r--src/mame/drivers/ashnojoe.c5
-rw-r--r--src/mame/drivers/asterix.c9
-rw-r--r--src/mame/drivers/asteroid.c11
-rw-r--r--src/mame/drivers/astinvad.c6
-rw-r--r--src/mame/drivers/astrocde.c3
-rw-r--r--src/mame/drivers/astrof.c3
-rw-r--r--src/mame/drivers/asuka.c36
-rw-r--r--src/mame/drivers/atarifb.c6
-rw-r--r--src/mame/drivers/atarig1.c4
-rw-r--r--src/mame/drivers/atarig42.c4
-rw-r--r--src/mame/drivers/atarigt.c4
-rw-r--r--src/mame/drivers/atarigx2.c4
-rw-r--r--src/mame/drivers/atarisy1.c4
-rw-r--r--src/mame/drivers/atarisy2.c4
-rw-r--r--src/mame/drivers/atetris.c8
-rw-r--r--src/mame/drivers/attckufo.c9
-rw-r--r--src/mame/drivers/avalnche.c8
-rw-r--r--src/mame/drivers/aztarac.c8
-rw-r--r--src/mame/drivers/backfire.c7
-rw-r--r--src/mame/drivers/badlands.c4
-rw-r--r--src/mame/drivers/bagman.c21
-rw-r--r--src/mame/drivers/balsente.c4
-rw-r--r--src/mame/drivers/bankp.c5
-rw-r--r--src/mame/drivers/baraduke.c6
-rw-r--r--src/mame/drivers/batman.c4
-rw-r--r--src/mame/drivers/battlane.c6
-rw-r--r--src/mame/drivers/battlera.c5
-rw-r--r--src/mame/drivers/battlex.c5
-rw-r--r--src/mame/drivers/battlnts.c5
-rw-r--r--src/mame/drivers/bbusters.c14
-rw-r--r--src/mame/drivers/beaminv.c3
-rw-r--r--src/mame/drivers/beathead.c7
-rw-r--r--src/mame/drivers/beezer.c5
-rw-r--r--src/mame/drivers/berzerk.c3
-rw-r--r--src/mame/drivers/bestleag.c4
-rw-r--r--src/mame/drivers/bfcobra.c1
-rw-r--r--src/mame/drivers/bfm_sc2.c3
-rw-r--r--src/mame/drivers/bigevglf.c6
-rw-r--r--src/mame/drivers/bigfghtr.c7
-rw-r--r--src/mame/drivers/bigstrkb.c7
-rw-r--r--src/mame/drivers/bionicc.c7
-rw-r--r--src/mame/drivers/bishi.c9
-rw-r--r--src/mame/drivers/bishjan.c5
-rw-r--r--src/mame/drivers/bking.c5
-rw-r--r--src/mame/drivers/bladestl.c7
-rw-r--r--src/mame/drivers/blktiger.c9
-rw-r--r--src/mame/drivers/blmbycar.c12
-rw-r--r--src/mame/drivers/blockade.c6
-rw-r--r--src/mame/drivers/blockhl.c9
-rw-r--r--src/mame/drivers/blockout.c6
-rw-r--r--src/mame/drivers/bloodbro.c9
-rw-r--r--src/mame/drivers/blstroid.c4
-rw-r--r--src/mame/drivers/blueprnt.c7
-rw-r--r--src/mame/drivers/bmcbowl.c6
-rw-r--r--src/mame/drivers/bnstars.c5
-rw-r--r--src/mame/drivers/bogeyman.c7
-rw-r--r--src/mame/drivers/bombjack.c6
-rw-r--r--src/mame/drivers/boogwing.c7
-rw-r--r--src/mame/drivers/bottom9.c8
-rw-r--r--src/mame/drivers/boxer.c7
-rw-r--r--src/mame/drivers/brkthru.c6
-rw-r--r--src/mame/drivers/bsktball.c6
-rw-r--r--src/mame/drivers/btime.c6
-rw-r--r--src/mame/drivers/btoads.c3
-rw-r--r--src/mame/drivers/bublbobl.c16
-rw-r--r--src/mame/drivers/buggychl.c6
-rw-r--r--src/mame/drivers/bwidow.c17
-rw-r--r--src/mame/drivers/bwing.c11
-rw-r--r--src/mame/drivers/bzone.c11
-rw-r--r--src/mame/drivers/cabal.c15
-rw-r--r--src/mame/drivers/calorie.c6
-rw-r--r--src/mame/drivers/canyon.c6
-rw-r--r--src/mame/drivers/capbowl.c3
-rw-r--r--src/mame/drivers/cardline.c6
-rw-r--r--src/mame/drivers/carjmbre.c6
-rw-r--r--src/mame/drivers/carpolo.c8
-rw-r--r--src/mame/drivers/carrera.c8
-rw-r--r--src/mame/drivers/cave.c101
-rw-r--r--src/mame/drivers/cball.c5
-rw-r--r--src/mame/drivers/cbasebal.c10
-rw-r--r--src/mame/drivers/cbuster.c8
-rw-r--r--src/mame/drivers/ccastles.c3
-rw-r--r--src/mame/drivers/cchasm.c7
-rw-r--r--src/mame/drivers/cclimber.c13
-rw-r--r--src/mame/drivers/centiped.c12
-rw-r--r--src/mame/drivers/chaknpop.c8
-rw-r--r--src/mame/drivers/cham24.c6
-rw-r--r--src/mame/drivers/champbas.c6
-rw-r--r--src/mame/drivers/champbwl.c8
-rw-r--r--src/mame/drivers/changela.c7
-rw-r--r--src/mame/drivers/cheekyms.c6
-rw-r--r--src/mame/drivers/cherrym.c8
-rw-r--r--src/mame/drivers/cherrym2.c8
-rw-r--r--src/mame/drivers/chinagat.c21
-rw-r--r--src/mame/drivers/chinsan.c3
-rw-r--r--src/mame/drivers/chqflag.c9
-rw-r--r--src/mame/drivers/cidelsa.c12
-rw-r--r--src/mame/drivers/cinemat.c13
-rw-r--r--src/mame/drivers/circus.c24
-rw-r--r--src/mame/drivers/circusc.c7
-rw-r--r--src/mame/drivers/cischeat.c19
-rw-r--r--src/mame/drivers/citycon.c6
-rw-r--r--src/mame/drivers/clayshoo.c3
-rw-r--r--src/mame/drivers/cliffhgr.c3
-rw-r--r--src/mame/drivers/cloak.c7
-rw-r--r--src/mame/drivers/cloud9.c3
-rw-r--r--src/mame/drivers/clshroad.c16
-rw-r--r--src/mame/drivers/cninja.c36
-rw-r--r--src/mame/drivers/cntsteer.c10
-rw-r--r--src/mame/drivers/coinmstr.c8
-rw-r--r--src/mame/drivers/cojag.c4
-rw-r--r--src/mame/drivers/combatsc.c14
-rw-r--r--src/mame/drivers/comebaby.c3
-rw-r--r--src/mame/drivers/commando.c8
-rw-r--r--src/mame/drivers/compgolf.c6
-rw-r--r--src/mame/drivers/contra.c7
-rw-r--r--src/mame/drivers/coolpool.c6
-rw-r--r--src/mame/drivers/coolridr.c4
-rw-r--r--src/mame/drivers/cop01.c12
-rw-r--r--src/mame/drivers/copsnrob.c6
-rw-r--r--src/mame/drivers/cosmic.c11
-rw-r--r--src/mame/drivers/couple.c9
-rw-r--r--src/mame/drivers/cowrace.c6
-rw-r--r--src/mame/drivers/cps1.c6
-rw-r--r--src/mame/drivers/cps2.c9
-rw-r--r--src/mame/drivers/cps3.c6
-rw-r--r--src/mame/drivers/crbaloon.c3
-rw-r--r--src/mame/drivers/crimfght.c10
-rw-r--r--src/mame/drivers/crospang.c10
-rw-r--r--src/mame/drivers/crshrace.c8
-rw-r--r--src/mame/drivers/crystal.c8
-rw-r--r--src/mame/drivers/cshooter.c17
-rw-r--r--src/mame/drivers/csk.c7
-rw-r--r--src/mame/drivers/cubocd32.c10
-rw-r--r--src/mame/drivers/cultures.c6
-rw-r--r--src/mame/drivers/cvs.c3
-rw-r--r--src/mame/drivers/cyberbal.c10
-rw-r--r--src/mame/drivers/cybertnk.c8
-rw-r--r--src/mame/drivers/dacholer.c6
-rw-r--r--src/mame/drivers/dambustr.c6
-rw-r--r--src/mame/drivers/darius.c7
-rw-r--r--src/mame/drivers/darkhors.c8
-rw-r--r--src/mame/drivers/darkmist.c6
-rw-r--r--src/mame/drivers/darkseal.c8
-rw-r--r--src/mame/drivers/dassault.c9
-rw-r--r--src/mame/drivers/dblewing.c6
-rw-r--r--src/mame/drivers/dbz.c10
-rw-r--r--src/mame/drivers/dcheese.c6
-rw-r--r--src/mame/drivers/dcon.c14
-rw-r--r--src/mame/drivers/dday.c9
-rw-r--r--src/mame/drivers/ddayjlc.c5
-rw-r--r--src/mame/drivers/ddealer.c9
-rw-r--r--src/mame/drivers/ddenlovr.c24
-rw-r--r--src/mame/drivers/ddragon.c6
-rw-r--r--src/mame/drivers/ddragon3.c7
-rw-r--r--src/mame/drivers/ddrible.c7
-rw-r--r--src/mame/drivers/ddz.c8
-rw-r--r--src/mame/drivers/deadang.c7
-rw-r--r--src/mame/drivers/dec0.c50
-rw-r--r--src/mame/drivers/dec8.c81
-rw-r--r--src/mame/drivers/deco156.c18
-rw-r--r--src/mame/drivers/deco32.c49
-rw-r--r--src/mame/drivers/deco_mlc.c10
-rw-r--r--src/mame/drivers/decocass.c8
-rw-r--r--src/mame/drivers/deniam.c16
-rw-r--r--src/mame/drivers/destroyr.c6
-rw-r--r--src/mame/drivers/dgpix.c8
-rw-r--r--src/mame/drivers/dietgo.c6
-rw-r--r--src/mame/drivers/discoboy.c3
-rw-r--r--src/mame/drivers/diverboy.c9
-rw-r--r--src/mame/drivers/djboy.c8
-rw-r--r--src/mame/drivers/djmain.c8
-rw-r--r--src/mame/drivers/dkong.c6
-rw-r--r--src/mame/drivers/dlair.c6
-rw-r--r--src/mame/drivers/dmndrby.c6
-rw-r--r--src/mame/drivers/docastle.c7
-rw-r--r--src/mame/drivers/dogfgt.c7
-rw-r--r--src/mame/drivers/dominob.c6
-rw-r--r--src/mame/drivers/dooyong.c80
-rw-r--r--src/mame/drivers/dorachan.c3
-rw-r--r--src/mame/drivers/dotrikun.c7
-rw-r--r--src/mame/drivers/dragrace.c5
-rw-r--r--src/mame/drivers/dreamwld.c5
-rw-r--r--src/mame/drivers/drgnmst.c9
-rw-r--r--src/mame/drivers/dribling.c10
-rw-r--r--src/mame/drivers/drmicro.c7
-rw-r--r--src/mame/drivers/drtomy.c6
-rw-r--r--src/mame/drivers/drw80pkr.c6
-rw-r--r--src/mame/drivers/dunhuang.c7
-rw-r--r--src/mame/drivers/dwarfd.c7
-rw-r--r--src/mame/drivers/dynadice.c7
-rw-r--r--src/mame/drivers/dynax.c52
-rw-r--r--src/mame/drivers/dynduke.c9
-rw-r--r--src/mame/drivers/egghunt.c8
-rw-r--r--src/mame/drivers/embargo.c3
-rw-r--r--src/mame/drivers/enigma2.c6
-rw-r--r--src/mame/drivers/eolith.c7
-rw-r--r--src/mame/drivers/eolith16.c8
-rw-r--r--src/mame/drivers/epos.c16
-rw-r--r--src/mame/drivers/eprom.c12
-rw-r--r--src/mame/drivers/equites.c17
-rw-r--r--src/mame/drivers/ertictac.c9
-rw-r--r--src/mame/drivers/esd16.c6
-rw-r--r--src/mame/drivers/esh.c2
-rw-r--r--src/mame/drivers/espial.c9
-rw-r--r--src/mame/drivers/ettrivia.c8
-rw-r--r--src/mame/drivers/exctsccr.c12
-rw-r--r--src/mame/drivers/exedexes.c8
-rw-r--r--src/mame/drivers/exerion.c3
-rw-r--r--src/mame/drivers/exidy.c3
-rw-r--r--src/mame/drivers/exidy440.c4
-rw-r--r--src/mame/drivers/expro02.c6
-rw-r--r--src/mame/drivers/exprraid.c7
-rw-r--r--src/mame/drivers/exterm.c3
-rw-r--r--src/mame/drivers/exzisus.c7
-rw-r--r--src/mame/drivers/f-32.c7
-rw-r--r--src/mame/drivers/f1gp.c12
-rw-r--r--src/mame/drivers/fantland.c32
-rw-r--r--src/mame/drivers/fastfred.c6
-rw-r--r--src/mame/drivers/fastlane.c6
-rw-r--r--src/mame/drivers/fcombat.c3
-rw-r--r--src/mame/drivers/fcrash.c6
-rw-r--r--src/mame/drivers/fgoal.c5
-rw-r--r--src/mame/drivers/filetto.c4
-rw-r--r--src/mame/drivers/finalizr.c6
-rw-r--r--src/mame/drivers/findout.c8
-rw-r--r--src/mame/drivers/firebeat.c20
-rw-r--r--src/mame/drivers/firetrap.c14
-rw-r--r--src/mame/drivers/firetrk.c6
-rw-r--r--src/mame/drivers/fitfight.c18
-rw-r--r--src/mame/drivers/flkatck.c7
-rw-r--r--src/mame/drivers/flower.c6
-rw-r--r--src/mame/drivers/flstory.c21
-rw-r--r--src/mame/drivers/flyball.c6
-rw-r--r--src/mame/drivers/foodf.c3
-rw-r--r--src/mame/drivers/fortecar.c6
-rw-r--r--src/mame/drivers/freekick.c9
-rw-r--r--src/mame/drivers/frogger.c6
-rw-r--r--src/mame/drivers/fromanc2.c15
-rw-r--r--src/mame/drivers/fromance.c18
-rw-r--r--src/mame/drivers/funkybee.c6
-rw-r--r--src/mame/drivers/funkyjet.c6
-rw-r--r--src/mame/drivers/funworld.c19
-rw-r--r--src/mame/drivers/funybubl.c5
-rw-r--r--src/mame/drivers/fuukifg2.c6
-rw-r--r--src/mame/drivers/fuukifg3.c8
-rw-r--r--src/mame/drivers/gaelco.c27
-rw-r--r--src/mame/drivers/gaelco2.c48
-rw-r--r--src/mame/drivers/gaelco3d.c8
-rw-r--r--src/mame/drivers/gaiden.c14
-rw-r--r--src/mame/drivers/galaga.c28
-rw-r--r--src/mame/drivers/galaxia.c6
-rw-r--r--src/mame/drivers/galaxian.c18
-rw-r--r--src/mame/drivers/galivan.c16
-rw-r--r--src/mame/drivers/galpani2.c8
-rw-r--r--src/mame/drivers/galpani3.c5
-rw-r--r--src/mame/drivers/galpanic.c6
-rw-r--r--src/mame/drivers/galspnbl.c7
-rw-r--r--src/mame/drivers/gamecstl.c8
-rw-r--r--src/mame/drivers/gaplus.c7
-rw-r--r--src/mame/drivers/gauntlet.c4
-rw-r--r--src/mame/drivers/gberet.c9
-rw-r--r--src/mame/drivers/gbusters.c10
-rw-r--r--src/mame/drivers/gcpinbal.c6
-rw-r--r--src/mame/drivers/gdrawpkr.c10
-rw-r--r--src/mame/drivers/genesis.c8
-rw-r--r--src/mame/drivers/getrivia.c6
-rw-r--r--src/mame/drivers/ghosteo.c5
-rw-r--r--src/mame/drivers/gijoe.c10
-rw-r--r--src/mame/drivers/ginganin.c6
-rw-r--r--src/mame/drivers/gladiatr.c14
-rw-r--r--src/mame/drivers/glass.c8
-rw-r--r--src/mame/drivers/gng.c10
-rw-r--r--src/mame/drivers/go2000.c9
-rw-r--r--src/mame/drivers/goal92.c6
-rw-r--r--src/mame/drivers/goindol.c6
-rw-r--r--src/mame/drivers/goldstar.c18
-rw-r--r--src/mame/drivers/gomoku.c6
-rw-r--r--src/mame/drivers/good.c9
-rw-r--r--src/mame/drivers/goodejan.c8
-rw-r--r--src/mame/drivers/gotcha.c6
-rw-r--r--src/mame/drivers/gottlieb.c15
-rw-r--r--src/mame/drivers/gotya.c6
-rw-r--r--src/mame/drivers/gpworld.c2
-rw-r--r--src/mame/drivers/gradius3.c9
-rw-r--r--src/mame/drivers/grchamp.c4
-rw-r--r--src/mame/drivers/gridlee.c3
-rw-r--r--src/mame/drivers/groundfx.c8
-rw-r--r--src/mame/drivers/gstream.c5
-rw-r--r--src/mame/drivers/gstriker.c6
-rw-r--r--src/mame/drivers/gsword.c13
-rw-r--r--src/mame/drivers/gticlub.c11
-rw-r--r--src/mame/drivers/gtipoker.c6
-rw-r--r--src/mame/drivers/gumbo.c9
-rw-r--r--src/mame/drivers/gunbustr.c8
-rw-r--r--src/mame/drivers/gundealr.c6
-rw-r--r--src/mame/drivers/gunpey.c5
-rw-r--r--src/mame/drivers/gunsmoke.c7
-rw-r--r--src/mame/drivers/gyruss.c6
-rw-r--r--src/mame/drivers/hal21.c18
-rw-r--r--src/mame/drivers/halleys.c7
-rw-r--r--src/mame/drivers/hanaawas.c6
-rw-r--r--src/mame/drivers/hanaroku.c6
-rw-r--r--src/mame/drivers/harddriv.c4
-rw-r--r--src/mame/drivers/hcastle.c8
-rw-r--r--src/mame/drivers/hexa.c6
-rw-r--r--src/mame/drivers/hexion.c6
-rw-r--r--src/mame/drivers/higemaru.c6
-rw-r--r--src/mame/drivers/hitme.c8
-rw-r--r--src/mame/drivers/hnayayoi.c7
-rw-r--r--src/mame/drivers/hng64.c8
-rw-r--r--src/mame/drivers/holeland.c12
-rw-r--r--src/mame/drivers/homedata.c22
-rw-r--r--src/mame/drivers/homerun.c4
-rw-r--r--src/mame/drivers/hornet.c10
-rw-r--r--src/mame/drivers/hotblock.c6
-rw-r--r--src/mame/drivers/hshavoc.c8
-rw-r--r--src/mame/drivers/hyhoo.c8
-rw-r--r--src/mame/drivers/hyperspt.c8
-rw-r--r--src/mame/drivers/hyprduel.c16
-rw-r--r--src/mame/drivers/igs_180.c6
-rw-r--r--src/mame/drivers/igs_blit.c9
-rw-r--r--src/mame/drivers/igs_m027.c8
-rw-r--r--src/mame/drivers/igs_m68.c9
-rw-r--r--src/mame/drivers/ikki.c6
-rw-r--r--src/mame/drivers/imolagp.c6
-rw-r--r--src/mame/drivers/intrscti.c6
-rw-r--r--src/mame/drivers/inufuku.c7
-rw-r--r--src/mame/drivers/iqblock.c21
-rw-r--r--src/mame/drivers/irobot.c8
-rw-r--r--src/mame/drivers/ironhors.c6
-rw-r--r--src/mame/drivers/istellar.c2
-rw-r--r--src/mame/drivers/itech32.c4
-rw-r--r--src/mame/drivers/itech8.c17
-rw-r--r--src/mame/drivers/jack.c8
-rw-r--r--src/mame/drivers/jackal.c8
-rw-r--r--src/mame/drivers/jackpool.c9
-rw-r--r--src/mame/drivers/jailbrek.c3
-rw-r--r--src/mame/drivers/jalmah.c9
-rw-r--r--src/mame/drivers/jchan.c8
-rw-r--r--src/mame/drivers/jcross.c7
-rw-r--r--src/mame/drivers/jollyjgr.c5
-rw-r--r--src/mame/drivers/jongkyo.c6
-rw-r--r--src/mame/drivers/jpmimpct.c2
-rw-r--r--src/mame/drivers/jrpacman.c6
-rw-r--r--src/mame/drivers/junofrst.c5
-rw-r--r--src/mame/drivers/kaneko16.c58
-rw-r--r--src/mame/drivers/kangaroo.c6
-rw-r--r--src/mame/drivers/karnov.c18
-rw-r--r--src/mame/drivers/kchamp.c14
-rw-r--r--src/mame/drivers/kickgoal.c16
-rw-r--r--src/mame/drivers/kingobox.c14
-rw-r--r--src/mame/drivers/kingpin.c2
-rw-r--r--src/mame/drivers/kinst.c10
-rw-r--r--src/mame/drivers/kinstb.c3
-rw-r--r--src/mame/drivers/klax.c4
-rw-r--r--src/mame/drivers/kncljoe.c8
-rw-r--r--src/mame/drivers/koikoi.c6
-rw-r--r--src/mame/drivers/konamigq.c8
-rw-r--r--src/mame/drivers/konamigv.c8
-rw-r--r--src/mame/drivers/konamigx.c15
-rw-r--r--src/mame/drivers/konamim2.c6
-rw-r--r--src/mame/drivers/kopunch.c6
-rw-r--r--src/mame/drivers/ksayakyu.c7
-rw-r--r--src/mame/drivers/ksys573.c8
-rw-r--r--src/mame/drivers/kyugo.c7
-rw-r--r--src/mame/drivers/labyrunr.c6
-rw-r--r--src/mame/drivers/ladybug.c12
-rw-r--r--src/mame/drivers/ladyfrog.c9
-rw-r--r--src/mame/drivers/laserbas.c5
-rw-r--r--src/mame/drivers/laserbat.c12
-rw-r--r--src/mame/drivers/lasso.c9
-rw-r--r--src/mame/drivers/lastduel.c16
-rw-r--r--src/mame/drivers/lastfght.c5
-rw-r--r--src/mame/drivers/lazercmd.c18
-rw-r--r--src/mame/drivers/legionna.c35
-rw-r--r--src/mame/drivers/lemmings.c8
-rw-r--r--src/mame/drivers/lethal.c10
-rw-r--r--src/mame/drivers/lethalj.c3
-rw-r--r--src/mame/drivers/lgp.c3
-rw-r--r--src/mame/drivers/liberate.c14
-rw-r--r--src/mame/drivers/liberatr.c7
-rw-r--r--src/mame/drivers/limenko.c14
-rw-r--r--src/mame/drivers/littlerb.c4
-rw-r--r--src/mame/drivers/lkage.c13
-rw-r--r--src/mame/drivers/lockon.c4
-rw-r--r--src/mame/drivers/looping.c3
-rw-r--r--src/mame/drivers/lordgun.c9
-rw-r--r--src/mame/drivers/lsasquad.c14
-rw-r--r--src/mame/drivers/ltcasino.c6
-rw-r--r--src/mame/drivers/lucky8.c6
-rw-r--r--src/mame/drivers/lvcards.c7
-rw-r--r--src/mame/drivers/lwings.c24
-rw-r--r--src/mame/drivers/m10.c12
-rw-r--r--src/mame/drivers/m107.c7
-rw-r--r--src/mame/drivers/m52.c3
-rw-r--r--src/mame/drivers/m57.c6
-rw-r--r--src/mame/drivers/m58.c3
-rw-r--r--src/mame/drivers/m62.c12
-rw-r--r--src/mame/drivers/m72.c36
-rw-r--r--src/mame/drivers/m79amb.c6
-rw-r--r--src/mame/drivers/m90.c31
-rw-r--r--src/mame/drivers/m92.c9
-rw-r--r--src/mame/drivers/macrossp.c7
-rw-r--r--src/mame/drivers/macs.c7
-rw-r--r--src/mame/drivers/madmotor.c8
-rw-r--r--src/mame/drivers/magic10.c10
-rw-r--r--src/mame/drivers/magicfly.c9
-rw-r--r--src/mame/drivers/magmax.c5
-rw-r--r--src/mame/drivers/mainevt.c16
-rw-r--r--src/mame/drivers/mainsnk.c7
-rw-r--r--src/mame/drivers/malzak.c6
-rw-r--r--src/mame/drivers/mappy.c9
-rw-r--r--src/mame/drivers/marineb.c8
-rw-r--r--src/mame/drivers/marinedt.c6
-rw-r--r--src/mame/drivers/mario.c2
-rw-r--r--src/mame/drivers/markham.c7
-rw-r--r--src/mame/drivers/marvins.c19
-rw-r--r--src/mame/drivers/mastboy.c8
-rw-r--r--src/mame/drivers/matmania.c14
-rw-r--r--src/mame/drivers/maxaflex.c9
-rw-r--r--src/mame/drivers/mayumi.c7
-rw-r--r--src/mame/drivers/mazerbla.c16
-rw-r--r--src/mame/drivers/mcatadv.c6
-rw-r--r--src/mame/drivers/mcr.c9
-rw-r--r--src/mame/drivers/mcr3.c10
-rw-r--r--src/mame/drivers/mcr68.c14
-rw-r--r--src/mame/drivers/meadows.c11
-rw-r--r--src/mame/drivers/mediagx.c6
-rw-r--r--src/mame/drivers/megadriv.c4
-rw-r--r--src/mame/drivers/megasys1.c22
-rw-r--r--src/mame/drivers/megatech.c2
-rw-r--r--src/mame/drivers/megazone.c7
-rw-r--r--src/mame/drivers/meijinsn.c8
-rw-r--r--src/mame/drivers/merit.c7
-rw-r--r--src/mame/drivers/meritm.c6
-rw-r--r--src/mame/drivers/mermaid.c7
-rw-r--r--src/mame/drivers/metlclsh.c8
-rw-r--r--src/mame/drivers/metro.c176
-rw-r--r--src/mame/drivers/mexico86.c7
-rw-r--r--src/mame/drivers/mgolf.c5
-rw-r--r--src/mame/drivers/mhavoc.c9
-rw-r--r--src/mame/drivers/micro3d.c3
-rw-r--r--src/mame/drivers/midas.c8
-rw-r--r--src/mame/drivers/midtunit.c3
-rw-r--r--src/mame/drivers/midvunit.c3
-rw-r--r--src/mame/drivers/midwunit.c3
-rw-r--r--src/mame/drivers/midxunit.c3
-rw-r--r--src/mame/drivers/midyunit.c8
-rw-r--r--src/mame/drivers/midzeus.c7
-rw-r--r--src/mame/drivers/mikie.c7
-rw-r--r--src/mame/drivers/miniboy7.c7
-rw-r--r--src/mame/drivers/minivadr.c6
-rw-r--r--src/mame/drivers/mirage.c6
-rw-r--r--src/mame/drivers/mirax.c7
-rw-r--r--src/mame/drivers/missb2.c8
-rw-r--r--src/mame/drivers/missile.c3
-rw-r--r--src/mame/drivers/mitchell.c28
-rw-r--r--src/mame/drivers/mjkjidai.c8
-rw-r--r--src/mame/drivers/mjsister.c7
-rw-r--r--src/mame/drivers/mjsiyoub.c6
-rw-r--r--src/mame/drivers/mlanding.c3
-rw-r--r--src/mame/drivers/model1.c20
-rw-r--r--src/mame/drivers/model2.c39
-rw-r--r--src/mame/drivers/model3.c16
-rw-r--r--src/mame/drivers/mogura.c8
-rw-r--r--src/mame/drivers/mole.c7
-rw-r--r--src/mame/drivers/momoko.c6
-rw-r--r--src/mame/drivers/moo.c18
-rw-r--r--src/mame/drivers/mosaic.c6
-rw-r--r--src/mame/drivers/mouser.c6
-rw-r--r--src/mame/drivers/mpu4.c4
-rw-r--r--src/mame/drivers/mpu4drvr.c11
-rw-r--r--src/mame/drivers/mquake.c10
-rw-r--r--src/mame/drivers/mrdo.c6
-rw-r--r--src/mame/drivers/mrflea.c7
-rw-r--r--src/mame/drivers/mrjong.c6
-rw-r--r--src/mame/drivers/ms32.c7
-rw-r--r--src/mame/drivers/msisaac.c8
-rw-r--r--src/mame/drivers/mugsmash.c9
-rw-r--r--src/mame/drivers/multigam.c6
-rw-r--r--src/mame/drivers/munchmo.c6
-rw-r--r--src/mame/drivers/murogem.c8
-rw-r--r--src/mame/drivers/mustache.c6
-rw-r--r--src/mame/drivers/mw8080bw.c3
-rw-r--r--src/mame/drivers/mwarr.c9
-rw-r--r--src/mame/drivers/mystston.c6
-rw-r--r--src/mame/drivers/mystwarr.c33
-rw-r--r--src/mame/drivers/n8080.c18
-rw-r--r--src/mame/drivers/namcofl.c7
-rw-r--r--src/mame/drivers/namcona1.c21
-rw-r--r--src/mame/drivers/namconb1.c14
-rw-r--r--src/mame/drivers/namcond1.c7
-rw-r--r--src/mame/drivers/namcos1.c9
-rw-r--r--src/mame/drivers/namcos10.c8
-rw-r--r--src/mame/drivers/namcos11.c8
-rw-r--r--src/mame/drivers/namcos12.c8
-rw-r--r--src/mame/drivers/namcos2.c42
-rw-r--r--src/mame/drivers/namcos21.c21
-rw-r--r--src/mame/drivers/namcos22.c10
-rw-r--r--src/mame/drivers/namcos23.c10
-rw-r--r--src/mame/drivers/namcos86.c7
-rw-r--r--src/mame/drivers/naomi.c8
-rw-r--r--src/mame/drivers/naughtyb.c12
-rw-r--r--src/mame/drivers/nbmj8688.c17
-rw-r--r--src/mame/drivers/nbmj8891.c13
-rw-r--r--src/mame/drivers/nbmj8991.c14
-rw-r--r--src/mame/drivers/nbmj9195.c8
-rw-r--r--src/mame/drivers/nemesis.c80
-rw-r--r--src/mame/drivers/neogeo.c3
-rw-r--r--src/mame/drivers/news.c6
-rw-r--r--src/mame/drivers/ninjakd2.c3
-rw-r--r--src/mame/drivers/ninjaw.c14
-rw-r--r--src/mame/drivers/nitedrvr.c9
-rw-r--r--src/mame/drivers/niyanpai.c8
-rw-r--r--src/mame/drivers/nmg5.c9
-rw-r--r--src/mame/drivers/nmk16.c137
-rw-r--r--src/mame/drivers/nova2001.c13
-rw-r--r--src/mame/drivers/nss.c3
-rw-r--r--src/mame/drivers/nwk-tr.c5
-rw-r--r--src/mame/drivers/nycaptor.c23
-rw-r--r--src/mame/drivers/nyny.c5
-rw-r--r--src/mame/drivers/offtwall.c4
-rw-r--r--src/mame/drivers/ohmygod.c8
-rw-r--r--src/mame/drivers/ojankohs.c32
-rw-r--r--src/mame/drivers/olibochu.c6
-rw-r--r--src/mame/drivers/omegrace.c8
-rw-r--r--src/mame/drivers/oneshot.c8
-rw-r--r--src/mame/drivers/onetwo.c6
-rw-r--r--src/mame/drivers/opwolf.c14
-rw-r--r--src/mame/drivers/orbit.c7
-rw-r--r--src/mame/drivers/othldrby.c6
-rw-r--r--src/mame/drivers/othunder.c8
-rw-r--r--src/mame/drivers/overdriv.c9
-rw-r--r--src/mame/drivers/pacland.c7
-rw-r--r--src/mame/drivers/pacman.c11
-rw-r--r--src/mame/drivers/pandoras.c7
-rw-r--r--src/mame/drivers/pangofun.c3
-rw-r--r--src/mame/drivers/panicr.c3
-rw-r--r--src/mame/drivers/paradise.c6
-rw-r--r--src/mame/drivers/paranoia.c7
-rw-r--r--src/mame/drivers/parodius.c9
-rw-r--r--src/mame/drivers/pasha2.c8
-rw-r--r--src/mame/drivers/pass.c6
-rw-r--r--src/mame/drivers/pastelg.c8
-rw-r--r--src/mame/drivers/pbaction.c7
-rw-r--r--src/mame/drivers/pcktgal.c7
-rw-r--r--src/mame/drivers/pengo.c3
-rw-r--r--src/mame/drivers/peplus.c8
-rw-r--r--src/mame/drivers/pgm.c6
-rw-r--r--src/mame/drivers/phoenix.c17
-rw-r--r--src/mame/drivers/pingpong.c6
-rw-r--r--src/mame/drivers/pipedrm.c16
-rw-r--r--src/mame/drivers/pipeline.c6
-rw-r--r--src/mame/drivers/pirates.c9
-rw-r--r--src/mame/drivers/pitnrun.c7
-rw-r--r--src/mame/drivers/pkscram.c8
-rw-r--r--src/mame/drivers/pktgaldx.c12
-rw-r--r--src/mame/drivers/playch10.c5
-rw-r--r--src/mame/drivers/playmark.c34
-rw-r--r--src/mame/drivers/plygonet.c8
-rw-r--r--src/mame/drivers/pmpoker.c9
-rw-r--r--src/mame/drivers/pntnpuzl.c9
-rw-r--r--src/mame/drivers/pokechmp.c6
-rw-r--r--src/mame/drivers/polepos.c8
-rw-r--r--src/mame/drivers/policetr.c8
-rw-r--r--src/mame/drivers/polyplay.c6
-rw-r--r--src/mame/drivers/poolshrk.c6
-rw-r--r--src/mame/drivers/pooyan.c6
-rw-r--r--src/mame/drivers/popeye.c6
-rw-r--r--src/mame/drivers/popper.c7
-rw-r--r--src/mame/drivers/portrait.c8
-rw-r--r--src/mame/drivers/powerbal.c14
-rw-r--r--src/mame/drivers/powerins.c10
-rw-r--r--src/mame/drivers/ppmast93.c6
-rw-r--r--src/mame/drivers/prehisle.c6
-rw-r--r--src/mame/drivers/progolf.c5
-rw-r--r--src/mame/drivers/psikyo.c24
-rw-r--r--src/mame/drivers/psikyo4.c5
-rw-r--r--src/mame/drivers/psikyosh.c11
-rw-r--r--src/mame/drivers/psychic5.c9
-rw-r--r--src/mame/drivers/pturn.c9
-rw-r--r--src/mame/drivers/puckpkmn.c7
-rw-r--r--src/mame/drivers/punchout.c5
-rw-r--r--src/mame/drivers/pushman.c14
-rw-r--r--src/mame/drivers/qdrmfgp.c16
-rw-r--r--src/mame/drivers/quantum.c8
-rw-r--r--src/mame/drivers/quasar.c6
-rw-r--r--src/mame/drivers/quizdna.c6
-rw-r--r--src/mame/drivers/quizo.c6
-rw-r--r--src/mame/drivers/quizpani.c8
-rw-r--r--src/mame/drivers/r2dtank.c5
-rw-r--r--src/mame/drivers/rabbit.c8
-rw-r--r--src/mame/drivers/raiden.c18
-rw-r--r--src/mame/drivers/raiden2.c17
-rw-r--r--src/mame/drivers/rainbow.c14
-rw-r--r--src/mame/drivers/rallyx.c18
-rw-r--r--src/mame/drivers/rampart.c4
-rw-r--r--src/mame/drivers/rastan.c7
-rw-r--r--src/mame/drivers/rbmk.c8
-rw-r--r--src/mame/drivers/rcasino.c6
-rw-r--r--src/mame/drivers/rcorsair.c4
-rw-r--r--src/mame/drivers/realbrk.c9
-rw-r--r--src/mame/drivers/redclash.c12
-rw-r--r--src/mame/drivers/relief.c4
-rw-r--r--src/mame/drivers/renegade.c7
-rw-r--r--src/mame/drivers/retofinv.c7
-rw-r--r--src/mame/drivers/rmhaihai.c6
-rw-r--r--src/mame/drivers/rockola.c23
-rw-r--r--src/mame/drivers/rockrage.c6
-rw-r--r--src/mame/drivers/rocnrope.c6
-rw-r--r--src/mame/drivers/rohga.c32
-rw-r--r--src/mame/drivers/rollerg.c9
-rw-r--r--src/mame/drivers/rollrace.c7
-rw-r--r--src/mame/drivers/rotaryf.c4
-rw-r--r--src/mame/drivers/route16.c3
-rw-r--r--src/mame/drivers/royalmah.c8
-rw-r--r--src/mame/drivers/rpunch.c6
-rw-r--r--src/mame/drivers/runaway.c6
-rw-r--r--src/mame/drivers/rungun.c9
-rw-r--r--src/mame/drivers/safarir.c3
-rw-r--r--src/mame/drivers/sandscrp.c7
-rw-r--r--src/mame/drivers/sangho.c12
-rw-r--r--src/mame/drivers/sauro.c6
-rw-r--r--src/mame/drivers/sbasketb.c6
-rw-r--r--src/mame/drivers/sbowling.c5
-rw-r--r--src/mame/drivers/sbrkout.c3
-rw-r--r--src/mame/drivers/sbugger.c9
-rw-r--r--src/mame/drivers/scobra.c20
-rw-r--r--src/mame/drivers/scotrsht.c6
-rw-r--r--src/mame/drivers/scramble.c17
-rw-r--r--src/mame/drivers/scregg.c12
-rw-r--r--src/mame/drivers/sderby.c18
-rw-r--r--src/mame/drivers/seattle.c5
-rw-r--r--src/mame/drivers/segac2.c8
-rw-r--r--src/mame/drivers/segae.c7
-rw-r--r--src/mame/drivers/segag80r.c9
-rw-r--r--src/mame/drivers/segag80v.c7
-rw-r--r--src/mame/drivers/segahang.c5
-rw-r--r--src/mame/drivers/segald.c2
-rw-r--r--src/mame/drivers/segaorun.c5
-rw-r--r--src/mame/drivers/segas16a.c6
-rw-r--r--src/mame/drivers/segas16b.c5
-rw-r--r--src/mame/drivers/segas18.c6
-rw-r--r--src/mame/drivers/segas24.c9
-rw-r--r--src/mame/drivers/segas32.c8
-rw-r--r--src/mame/drivers/segaxbd.c5
-rw-r--r--src/mame/drivers/segaybd.c6
-rw-r--r--src/mame/drivers/seibuspi.c15
-rw-r--r--src/mame/drivers/seicross.c7
-rw-r--r--src/mame/drivers/sengokmj.c8
-rw-r--r--src/mame/drivers/senjyo.c8
-rw-r--r--src/mame/drivers/seta.c226
-rw-r--r--src/mame/drivers/seta2.c15
-rw-r--r--src/mame/drivers/sf.c6
-rw-r--r--src/mame/drivers/sfkick.c4
-rw-r--r--src/mame/drivers/sg1000a.c1
-rw-r--r--src/mame/drivers/sgladiat.c9
-rw-r--r--src/mame/drivers/shadfrce.c8
-rw-r--r--src/mame/drivers/shangha3.c26
-rw-r--r--src/mame/drivers/shanghai.c17
-rw-r--r--src/mame/drivers/shangkid.c13
-rw-r--r--src/mame/drivers/shaolins.c6
-rw-r--r--src/mame/drivers/shisen.c7
-rw-r--r--src/mame/drivers/shootout.c12
-rw-r--r--src/mame/drivers/shougi.c7
-rw-r--r--src/mame/drivers/shuuz.c4
-rw-r--r--src/mame/drivers/sidearms.c25
-rw-r--r--src/mame/drivers/sidepckt.c14
-rw-r--r--src/mame/drivers/silkroad.c6
-rw-r--r--src/mame/drivers/simpl156.c7
-rw-r--r--src/mame/drivers/simpsons.c9
-rw-r--r--src/mame/drivers/skullxbo.c4
-rw-r--r--src/mame/drivers/skyarmy.c4
-rw-r--r--src/mame/drivers/skydiver.c7
-rw-r--r--src/mame/drivers/skyfox.c6
-rw-r--r--src/mame/drivers/skykid.c7
-rw-r--r--src/mame/drivers/skylncr.c6
-rw-r--r--src/mame/drivers/skyraid.c6
-rw-r--r--src/mame/drivers/slapfght.c36
-rw-r--r--src/mame/drivers/slapshot.c14
-rw-r--r--src/mame/drivers/sliver.c5
-rw-r--r--src/mame/drivers/smstrv.c8
-rw-r--r--src/mame/drivers/snk.c91
-rw-r--r--src/mame/drivers/snk68.c24
-rw-r--r--src/mame/drivers/snowbros.c24
-rw-r--r--src/mame/drivers/solomon.c7
-rw-r--r--src/mame/drivers/sonson.c7
-rw-r--r--src/mame/drivers/spacefb.c3
-rw-r--r--src/mame/drivers/spaceg.c6
-rw-r--r--src/mame/drivers/spbactn.c6
-rw-r--r--src/mame/drivers/spcforce.c6
-rw-r--r--src/mame/drivers/spdodgeb.c6
-rw-r--r--src/mame/drivers/speedatk.c5
-rw-r--r--src/mame/drivers/speedbal.c6
-rw-r--r--src/mame/drivers/speedspn.c6
-rw-r--r--src/mame/drivers/speglsht.c7
-rw-r--r--src/mame/drivers/spiders.c5
-rw-r--r--src/mame/drivers/splash.c18
-rw-r--r--src/mame/drivers/sprcros2.c8
-rw-r--r--src/mame/drivers/sprint2.c6
-rw-r--r--src/mame/drivers/sprint4.c2
-rw-r--r--src/mame/drivers/sprint8.c5
-rw-r--r--src/mame/drivers/spy.c9
-rw-r--r--src/mame/drivers/srmp2.c24
-rw-r--r--src/mame/drivers/srmp5.c5
-rw-r--r--src/mame/drivers/srmp6.c5
-rw-r--r--src/mame/drivers/srumbler.c10
-rw-r--r--src/mame/drivers/ssfindo.c18
-rw-r--r--src/mame/drivers/sshangha.c9
-rw-r--r--src/mame/drivers/ssingles.c7
-rw-r--r--src/mame/drivers/sslam.c12
-rw-r--r--src/mame/drivers/ssozumo.c6
-rw-r--r--src/mame/drivers/sspeedr.c6
-rw-r--r--src/mame/drivers/ssrj.c6
-rw-r--r--src/mame/drivers/sstrangr.c3
-rw-r--r--src/mame/drivers/ssv.c26
-rw-r--r--src/mame/drivers/st0016.c6
-rw-r--r--src/mame/drivers/stactics.c8
-rw-r--r--src/mame/drivers/stadhero.c6
-rw-r--r--src/mame/drivers/starcrus.c6
-rw-r--r--src/mame/drivers/starfire.c2
-rw-r--r--src/mame/drivers/starshp1.c4
-rw-r--r--src/mame/drivers/starwars.c7
-rw-r--r--src/mame/drivers/statriv2.c14
-rw-r--r--src/mame/drivers/steaser.c3
-rw-r--r--src/mame/drivers/stepstag.c7
-rw-r--r--src/mame/drivers/stfight.c7
-rw-r--r--src/mame/drivers/stlforce.c8
-rw-r--r--src/mame/drivers/strnskil.c7
-rw-r--r--src/mame/drivers/stv.c10
-rw-r--r--src/mame/drivers/subs.c8
-rw-r--r--src/mame/drivers/suna16.c28
-rw-r--r--src/mame/drivers/suna8.c30
-rw-r--r--src/mame/drivers/supbtime.c16
-rw-r--r--src/mame/drivers/supdrapo.c5
-rw-r--r--src/mame/drivers/superchs.c7
-rw-r--r--src/mame/drivers/superdq.c4
-rw-r--r--src/mame/drivers/superqix.c25
-rw-r--r--src/mame/drivers/supertnk.c3
-rw-r--r--src/mame/drivers/suprgolf.c8
-rw-r--r--src/mame/drivers/suprloco.c6
-rw-r--r--src/mame/drivers/suprnova.c10
-rw-r--r--src/mame/drivers/suprridr.c6
-rw-r--r--src/mame/drivers/suprslam.c10
-rw-r--r--src/mame/drivers/surpratk.c10
-rw-r--r--src/mame/drivers/system1.c14
-rw-r--r--src/mame/drivers/system16.c6
-rw-r--r--src/mame/drivers/system18.c6
-rw-r--r--src/mame/drivers/tagteam.c6
-rw-r--r--src/mame/drivers/tail2nos.c8
-rw-r--r--src/mame/drivers/taito_b.c126
-rw-r--r--src/mame/drivers/taito_f2.c18
-rw-r--r--src/mame/drivers/taito_f3.c11
-rw-r--r--src/mame/drivers/taito_h.c21
-rw-r--r--src/mame/drivers/taito_l.c29
-rw-r--r--src/mame/drivers/taito_x.c27
-rw-r--r--src/mame/drivers/taito_z.c70
-rw-r--r--src/mame/drivers/taitoair.c7
-rw-r--r--src/mame/drivers/taitojc.c9
-rw-r--r--src/mame/drivers/taitosj.c8
-rw-r--r--src/mame/drivers/taitowlf.c8
-rw-r--r--src/mame/drivers/talbot.c6
-rw-r--r--src/mame/drivers/tank8.c9
-rw-r--r--src/mame/drivers/tankbatt.c6
-rw-r--r--src/mame/drivers/tankbust.c8
-rw-r--r--src/mame/drivers/taotaido.c8
-rw-r--r--src/mame/drivers/targeth.c6
-rw-r--r--src/mame/drivers/tarzan.c6
-rw-r--r--src/mame/drivers/tatsumi.c28
-rw-r--r--src/mame/drivers/tattack.c8
-rw-r--r--src/mame/drivers/taxidrvr.c7
-rw-r--r--src/mame/drivers/tbowl.c5
-rw-r--r--src/mame/drivers/tceptor.c7
-rw-r--r--src/mame/drivers/tcl.c6
-rw-r--r--src/mame/drivers/tecmo.c6
-rw-r--r--src/mame/drivers/tecmo16.c14
-rw-r--r--src/mame/drivers/tecmosys.c9
-rw-r--r--src/mame/drivers/tehkanwc.c7
-rw-r--r--src/mame/drivers/tempest.c7
-rw-r--r--src/mame/drivers/terracre.c19
-rw-r--r--src/mame/drivers/tetrisp2.c29
-rw-r--r--src/mame/drivers/tetriunk.c7
-rw-r--r--src/mame/drivers/thayers.c2
-rw-r--r--src/mame/drivers/thedeep.c8
-rw-r--r--src/mame/drivers/thepit.c3
-rw-r--r--src/mame/drivers/thief.c20
-rw-r--r--src/mame/drivers/thoop2.c6
-rw-r--r--src/mame/drivers/thunderj.c4
-rw-r--r--src/mame/drivers/thunderx.c20
-rw-r--r--src/mame/drivers/tiamc1.c7
-rw-r--r--src/mame/drivers/tickee.c3
-rw-r--r--src/mame/drivers/tigeroad.c9
-rw-r--r--src/mame/drivers/timelimt.c7
-rw-r--r--src/mame/drivers/timeplt.c8
-rw-r--r--src/mame/drivers/tmaster.c14
-rw-r--r--src/mame/drivers/tmnt.c105
-rw-r--r--src/mame/drivers/tnzs.c42
-rw-r--r--src/mame/drivers/toaplan1.c58
-rw-r--r--src/mame/drivers/toaplan2.c145
-rw-r--r--src/mame/drivers/toki.c15
-rw-r--r--src/mame/drivers/toobin.c8
-rw-r--r--src/mame/drivers/topshoot.c9
-rw-r--r--src/mame/drivers/topspeed.c6
-rw-r--r--src/mame/drivers/toratora.c3
-rw-r--r--src/mame/drivers/tourtabl.c4
-rw-r--r--src/mame/drivers/toypop.c7
-rw-r--r--src/mame/drivers/tp84.c7
-rw-r--r--src/mame/drivers/trackfld.c16
-rw-r--r--src/mame/drivers/travrusa.c6
-rw-r--r--src/mame/drivers/triplhnt.c6
-rw-r--r--src/mame/drivers/truco.c7
-rw-r--r--src/mame/drivers/trucocl.c6
-rw-r--r--src/mame/drivers/trvmadns.c6
-rw-r--r--src/mame/drivers/trvquest.c2
-rw-r--r--src/mame/drivers/tryout.c5
-rw-r--r--src/mame/drivers/tsamurai.c18
-rw-r--r--src/mame/drivers/ttchamp.c6
-rw-r--r--src/mame/drivers/tubep.c11
-rw-r--r--src/mame/drivers/tugboat.c7
-rw-r--r--src/mame/drivers/tumbleb.c50
-rw-r--r--src/mame/drivers/tumblep.c6
-rw-r--r--src/mame/drivers/tunhunt.c6
-rw-r--r--src/mame/drivers/turbo.c10
-rw-r--r--src/mame/drivers/turbosub.c6
-rw-r--r--src/mame/drivers/tutankhm.c5
-rw-r--r--src/mame/drivers/twin16.c20
-rw-r--r--src/mame/drivers/twincobr.c9
-rw-r--r--src/mame/drivers/twins.c12
-rw-r--r--src/mame/drivers/tx1.c19
-rw-r--r--src/mame/drivers/uapce.c7
-rw-r--r--src/mame/drivers/ultraman.c9
-rw-r--r--src/mame/drivers/ultratnk.c3
-rw-r--r--src/mame/drivers/ultrsprt.c8
-rw-r--r--src/mame/drivers/undrfire.c8
-rw-r--r--src/mame/drivers/unico.c24
-rw-r--r--src/mame/drivers/upscope.c10
-rw-r--r--src/mame/drivers/usgames.c10
-rw-r--r--src/mame/drivers/vamphalf.c7
-rw-r--r--src/mame/drivers/vaportra.c7
-rw-r--r--src/mame/drivers/vastar.c7
-rw-r--r--src/mame/drivers/vball.c12
-rw-r--r--src/mame/drivers/vcombat.c6
-rw-r--r--src/mame/drivers/vegaeo.c8
-rw-r--r--src/mame/drivers/vegas.c5
-rw-r--r--src/mame/drivers/vendetta.c10
-rw-r--r--src/mame/drivers/vertigo.c8
-rw-r--r--src/mame/drivers/vicdual.c4
-rw-r--r--src/mame/drivers/victory.c5
-rw-r--r--src/mame/drivers/videopin.c5
-rw-r--r--src/mame/drivers/vigilant.c21
-rw-r--r--src/mame/drivers/vindictr.c4
-rw-r--r--src/mame/drivers/viper.c6
-rw-r--r--src/mame/drivers/vmetal.c5
-rw-r--r--src/mame/drivers/volfied.c7
-rw-r--r--src/mame/drivers/vroulet.c7
-rw-r--r--src/mame/drivers/vsnes.c13
-rw-r--r--src/mame/drivers/vulgus.c6
-rw-r--r--src/mame/drivers/wallc.c6
-rw-r--r--src/mame/drivers/wardner.c9
-rw-r--r--src/mame/drivers/warpwarp.c12
-rw-r--r--src/mame/drivers/warriorb.c10
-rw-r--r--src/mame/drivers/wc90.c7
-rw-r--r--src/mame/drivers/wc90b.c7
-rw-r--r--src/mame/drivers/wecleman.c15
-rw-r--r--src/mame/drivers/welltris.c8
-rw-r--r--src/mame/drivers/wgp.c14
-rw-r--r--src/mame/drivers/wheelfir.c7
-rw-r--r--src/mame/drivers/williams.c12
-rw-r--r--src/mame/drivers/wilytowr.c12
-rw-r--r--src/mame/drivers/wink.c8
-rw-r--r--src/mame/drivers/wiping.c6
-rw-r--r--src/mame/drivers/witch.c8
-rw-r--r--src/mame/drivers/wiz.c7
-rw-r--r--src/mame/drivers/wldarrow.c3
-rw-r--r--src/mame/drivers/wolfpack.c7
-rw-r--r--src/mame/drivers/wrally.c6
-rw-r--r--src/mame/drivers/wwfsstar.c6
-rw-r--r--src/mame/drivers/wwfwfest.c8
-rw-r--r--src/mame/drivers/xain.c7
-rw-r--r--src/mame/drivers/xexex.c8
-rw-r--r--src/mame/drivers/xmen.c16
-rw-r--r--src/mame/drivers/xorworld.c8
-rw-r--r--src/mame/drivers/xtheball.c3
-rw-r--r--src/mame/drivers/xxmissio.c7
-rw-r--r--src/mame/drivers/xybots.c4
-rw-r--r--src/mame/drivers/xyonix.c6
-rw-r--r--src/mame/drivers/yamato.c15
-rw-r--r--src/mame/drivers/yiear.c6
-rw-r--r--src/mame/drivers/yumefuda.c8
-rw-r--r--src/mame/drivers/yunsun16.c12
-rw-r--r--src/mame/drivers/yunsung8.c8
-rw-r--r--src/mame/drivers/zac2650.c6
-rw-r--r--src/mame/drivers/zaccaria.c8
-rw-r--r--src/mame/drivers/zaxxon.c3
-rw-r--r--src/mame/drivers/zerozone.c7
-rw-r--r--src/mame/drivers/zn.c13
-rw-r--r--src/mame/drivers/zodiack.c8
-rw-r--r--src/mame/drivers/zr107.c10
-rw-r--r--src/mame/video/20pacgal.c2
-rw-r--r--src/mame/video/crgolf.c2
-rw-r--r--src/mame/video/gameplan.c3
-rw-r--r--src/mame/video/jedi.c4
-rw-r--r--src/mame/video/leland.c3
-rw-r--r--src/mame/video/madalien.c6
-rw-r--r--src/mame/video/qix.c5
-rw-r--r--src/mame/video/redalert.c14
-rw-r--r--src/mame/video/taitoic.c3
-rw-r--r--src/osd/windows/d3d8intf.c124
-rw-r--r--src/osd/windows/d3d9intf.c124
-rw-r--r--src/osd/windows/video.c7
-rw-r--r--src/osd/windows/window.c5
963 files changed, 6154 insertions, 5056 deletions
diff --git a/src/emu/devintrf.c b/src/emu/devintrf.c
index 0ce3650ec4d..be9f3e8e10b 100644
--- a/src/emu/devintrf.c
+++ b/src/emu/devintrf.c
@@ -57,6 +57,18 @@ INLINE char *get_temp_string_buffer(void)
}
+/*-------------------------------------------------
+ device_matches_type - does a device match
+ the provided type, taking wildcards into
+ effect?
+-------------------------------------------------*/
+
+INLINE int device_matches_type(const device_config *config, device_type type)
+{
+ return (type == DEVICE_TYPE_WILDCARD) ? TRUE : (config->type == type);
+}
+
+
/***************************************************************************
DEVICE CONFIGURATION
@@ -96,6 +108,10 @@ device_config *device_list_add(device_config **listheadptr, device_type type, co
device->inline_config = (info.i == 0) ? NULL : (device->tag + strlen(tag) + 1);
device->token = NULL;
strcpy(device->tag, tag);
+
+ /* reset the inline_config to 0 */
+ if (info.i > 0)
+ memset(device->inline_config, 0, info.i);
/* fetch function pointers to the core functions */
info.set_info = NULL;
@@ -151,27 +167,115 @@ void device_list_remove(device_config **listheadptr, device_type type, const cha
/*-------------------------------------------------
+ device_list_items - return the number of
+ items of a given type; DEVICE_TYPE_WILDCARD
+ is allowed
+-------------------------------------------------*/
+
+int device_list_items(const device_config *listhead, device_type type)
+{
+ const device_config *curdev;
+ int count = 0;
+
+ /* locate all devices */
+ for (curdev = listhead; curdev != NULL; curdev = curdev->next)
+ count += device_matches_type(curdev, type);
+
+ return count;
+}
+
+
+/*-------------------------------------------------
+ device_list_first - return the first device
+ in the list of a given type;
+ DEVICE_TYPE_WILDCARD is allowed
+-------------------------------------------------*/
+
+const device_config *device_list_first(const device_config *listhead, device_type type)
+{
+ const device_config *curdev;
+
+ /* scan forward starting with the list head */
+ for (curdev = listhead; curdev != NULL; curdev = curdev->next)
+ if (device_matches_type(curdev, type))
+ return curdev;
+
+ return NULL;
+}
+
+
+/*-------------------------------------------------
+ device_list_next - return the next device
+ in the list of a given type;
+ DEVICE_TYPE_WILDCARD is allowed
+-------------------------------------------------*/
+
+const device_config *device_list_next(const device_config *prevdevice, device_type type)
+{
+ const device_config *curdev;
+
+ assert(prevdevice != NULL);
+
+ /* scan forward starting with the item after the previous one */
+ for (curdev = prevdevice->next; curdev != NULL; curdev = curdev->next)
+ if (device_matches_type(curdev, type))
+ return curdev;
+
+ return NULL;
+}
+
+
+/*-------------------------------------------------
device_list_find_by_tag - retrieve a device
configuration based on a type and tag
-------------------------------------------------*/
const device_config *device_list_find_by_tag(const device_config *listhead, device_type type, const char *tag)
{
- const device_config *device;
+ const device_config *curdev;
- assert(type != NULL);
assert(tag != NULL);
/* find the device in the list */
- for (device = listhead; device != NULL; device = device->next)
- if (type == device->type && strcmp(tag, device->tag) == 0)
- return device;
+ for (curdev = listhead; curdev != NULL; curdev = curdev->next)
+ if (device_matches_type(curdev, type) && strcmp(tag, curdev->tag) == 0)
+ return curdev;
/* fail */
return NULL;
}
+
+/***************************************************************************
+ INDEX-BASED DEVICE ACCESS
+***************************************************************************/
+
+
+/*-------------------------------------------------
+ device_list_index - return the index of a
+ device based on its type and tag;
+ DEVICE_TYPE_WILDCARD is allowed
+-------------------------------------------------*/
+
+int device_list_index(const device_config *listhead, device_type type, const char *tag)
+{
+ const device_config *curdev;
+ int index = 0;
+
+ /* locate all devices */
+ for (curdev = listhead; curdev != NULL; curdev = curdev->next)
+ if (device_matches_type(curdev, type))
+ {
+ if (strcmp(tag, curdev->tag) == 0)
+ return index;
+ index++;
+ }
+
+ return -1;
+}
+
+
/*-------------------------------------------------
device_list_find_by_index - retrieve a device
configuration based on a type and index
@@ -179,15 +283,14 @@ const device_config *device_list_find_by_tag(const device_config *listhead, devi
const device_config *device_list_find_by_index(const device_config *listhead, device_type type, int index)
{
- const device_config *device;
+ const device_config *curdev;
assert(listhead != NULL);
- assert(type != NULL);
/* find the device in the list */
- for (device = listhead; device != NULL; device = device->next)
- if (type == device->type && index-- == 0)
- return device;
+ for (curdev = listhead; curdev != NULL; curdev = curdev->next)
+ if (device_matches_type(curdev, type) && index-- == 0)
+ return curdev;
/* fail */
return NULL;
@@ -220,7 +323,7 @@ void device_list_start(running_machine *machine)
assert(config->start != NULL);
/* call the start function */
- config->token = (*config->start)(machine, config->static_config, config->inline_config);
+ config->token = (*config->start)(machine, config->tag, config->static_config, config->inline_config);
assert(config->token != NULL);
/* fatal error if this fails */
@@ -315,6 +418,36 @@ void *devtag_get_token(running_machine *machine, device_type type, const char *t
/*-------------------------------------------------
+ devtag_get_static_config - return a pointer to
+ the static configuration for a device based on
+ type and tag
+-------------------------------------------------*/
+
+const void *devtag_get_static_config(running_machine *machine, device_type type, const char *tag)
+{
+ const device_config *config = device_list_find_by_tag(machine->config->devicelist, type, tag);
+ if (config == NULL)
+ fatalerror("devtag_get_static_config failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
+ return config->static_config;
+}
+
+
+/*-------------------------------------------------
+ devtag_get_inline_config - return a pointer to
+ the inline configuration for a device based on
+ type and tag
+-------------------------------------------------*/
+
+const void *devtag_get_inline_config(running_machine *machine, device_type type, const char *tag)
+{
+ const device_config *config = device_list_find_by_tag(machine->config->devicelist, type, tag);
+ if (config == NULL)
+ fatalerror("devtag_get_inline_config failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
+ return config->inline_config;
+}
+
+
+/*-------------------------------------------------
device_get_info_int - return an integer state
value from an allocated device
-------------------------------------------------*/
diff --git a/src/emu/devintrf.h b/src/emu/devintrf.h
index b8d8bae6e93..5bb49d6b414 100644
--- a/src/emu/devintrf.h
+++ b/src/emu/devintrf.h
@@ -21,6 +21,10 @@
CONSTANTS
***************************************************************************/
+/* useful in device_list functions for scanning through all devices */
+#define DEVICE_TYPE_WILDCARD NULL
+
+
/* state constants passed to the device_get_info_func */
enum
{
@@ -79,7 +83,7 @@ typedef union _deviceinfo deviceinfo;
/* device interface function types */
typedef void (*device_get_info_func)(running_machine *machine, void *token, UINT32 state, deviceinfo *info);
typedef void (*device_set_info_func)(running_machine *machine, void *token, UINT32 state, const deviceinfo *info);
-typedef void *(*device_start_func)(running_machine *machine, const void *static_config, const void *inline_config);
+typedef void *(*device_start_func)(running_machine *machine, const char *tag, const void *static_config, const void *inline_config);
typedef void (*device_stop_func)(running_machine *machine, void *token);
typedef void (*device_reset_func)(running_machine *machine, void *token);
@@ -136,10 +140,26 @@ device_config *device_list_add(device_config **listheadptr, device_type type, co
/* remove a device from a device list */
void device_list_remove(device_config **listheadptr, device_type type, const char *tag);
-/* retrieve a device configuration based on a type and tag */
+/* return the number of items of a given type; DEVICE_TYPE_WILDCARD is allowed */
+int device_list_items(const device_config *listhead, device_type type);
+
+/* return the first device in the list of a given type; DEVICE_TYPE_WILDCARD is allowed */
+const device_config *device_list_first(const device_config *listhead, device_type type);
+
+/* return the next device in the list of a given type; DEVICE_TYPE_WILDCARD is allowed */
+const device_config *device_list_next(const device_config *prevdevice, device_type type);
+
+/* retrieve a device configuration based on a type and tag; DEVICE_TYPE_WILDCARD is allowed */
const device_config *device_list_find_by_tag(const device_config *listhead, device_type type, const char *tag);
-/* retrieve a device configuration based on a type and index */
+
+
+/* ----- index-based device access (avoid if possible) ----- */
+
+/* return the index of a device based on its type and tag; DEVICE_TYPE_WILDCARD is allowed */
+int device_list_index(const device_config *listhead, device_type type, const char *tag);
+
+/* retrieve a device configuration based on a type and index; DEVICE_TYPE_WILDCARD is allowed */
const device_config *device_list_find_by_index(const device_config *listhead, device_type type, int index);
@@ -160,6 +180,12 @@ void devtag_reset(running_machine *machine, device_type type, const char *tag);
/* return the token associated with an allocated device */
void *devtag_get_token(running_machine *machine, device_type type, const char *tag);
+/* return a pointer to the static configuration for a device based on type and tag */
+const void *devtag_get_static_config(running_machine *machine, device_type type, const char *tag);
+
+/* return a pointer to the inline configuration for a device based on type and tag */
+const void *devtag_get_inline_config(running_machine *machine, device_type type, const char *tag);
+
/* return an integer state value from an allocated device */
INT64 device_get_info_int(running_machine *machine, const device_config *config, UINT32 state);
INT64 devtag_get_info_int(running_machine *machine, device_type type, const char *tag, UINT32 state);
diff --git a/src/emu/drivers/empty.c b/src/emu/drivers/empty.c
index e20701060ee..73e08591115 100644
--- a/src/emu/drivers/empty.c
+++ b/src/emu/drivers/empty.c
@@ -38,9 +38,7 @@ static MACHINE_DRIVER_START( empty )
MDRV_MACHINE_START(empty)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
-
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(640,480)
MDRV_SCREEN_VISIBLE_AREA(0,639, 0,479)
diff --git a/src/emu/info.c b/src/emu/info.c
index f3b4cd6f878..40c4f0232cc 100644
--- a/src/emu/info.c
+++ b/src/emu/info.c
@@ -681,57 +681,65 @@ static void print_game_chips(FILE *out, const game_driver *game, const machine_c
static void print_game_display(FILE *out, const game_driver *game, const machine_config *config)
{
- int scrnum;
-
+ const device_config *screen;
+
/* iterate over screens */
- for (scrnum = 0; scrnum < MAX_SCREENS; scrnum++)
- if (config->screen[scrnum].tag != NULL)
+ for (screen = video_screen_first(config); screen != NULL; screen = video_screen_next(screen))
+ {
+ const screen_config *scrconfig = screen->inline_config;
+
+ fprintf(out, "\t\t<display");
+
+ switch (scrconfig->type)
{
- fprintf(out, "\t\t<display");
- fprintf(out, " type=\"%s\"", (config->video_attributes & VIDEO_TYPE_VECTOR) ? "vector" : "raster");
-
- /* output the orientation as a string */
- switch (game->flags & ORIENTATION_MASK)
- {
- case ORIENTATION_FLIP_X:
- fprintf(out, " rotate=\"0\" flipx=\"yes\"");
- break;
- case ORIENTATION_FLIP_Y:
- fprintf(out, " rotate=\"180\" flipx=\"yes\"");
- break;
- case ORIENTATION_FLIP_X|ORIENTATION_FLIP_Y:
- fprintf(out, " rotate=\"180\"");
- break;
- case ORIENTATION_SWAP_XY:
- fprintf(out, " rotate=\"90\" flipx=\"yes\"");
- break;
- case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_X:
- fprintf(out, " rotate=\"90\"");
- break;
- case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_Y:
- fprintf(out, " rotate=\"270\"");
- break;
- case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_X|ORIENTATION_FLIP_Y:
- fprintf(out, " rotate=\"270\" flipx=\"yes\"");
- break;
- default:
- fprintf(out, " rotate=\"0\"");
- break;
- }
+ case SCREEN_TYPE_RASTER: fprintf(out, " type=\"raster\""); break;
+ case SCREEN_TYPE_VECTOR: fprintf(out, " type=\"vector\""); break;
+ case SCREEN_TYPE_LCD: fprintf(out, " type=\"lcd\""); break;
+ default: fprintf(out, " type=\"unknown\""); break;
+ }
- /* output width and height only for games that are not vector */
- if (!(config->video_attributes & VIDEO_TYPE_VECTOR))
- {
- int dx = config->screen[scrnum].defstate.visarea.max_x - config->screen[scrnum].defstate.visarea.min_x + 1;
- int dy = config->screen[scrnum].defstate.visarea.max_y - config->screen[scrnum].defstate.visarea.min_y + 1;
- fprintf(out, " width=\"%d\"", dx);
- fprintf(out, " height=\"%d\"", dy);
- }
+ /* output the orientation as a string */
+ switch (game->flags & ORIENTATION_MASK)
+ {
+ case ORIENTATION_FLIP_X:
+ fprintf(out, " rotate=\"0\" flipx=\"yes\"");
+ break;
+ case ORIENTATION_FLIP_Y:
+ fprintf(out, " rotate=\"180\" flipx=\"yes\"");
+ break;
+ case ORIENTATION_FLIP_X|ORIENTATION_FLIP_Y:
+ fprintf(out, " rotate=\"180\"");
+ break;
+ case ORIENTATION_SWAP_XY:
+ fprintf(out, " rotate=\"90\" flipx=\"yes\"");
+ break;
+ case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_X:
+ fprintf(out, " rotate=\"90\"");
+ break;
+ case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_Y:
+ fprintf(out, " rotate=\"270\"");
+ break;
+ case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_X|ORIENTATION_FLIP_Y:
+ fprintf(out, " rotate=\"270\" flipx=\"yes\"");
+ break;
+ default:
+ fprintf(out, " rotate=\"0\"");
+ break;
+ }
- /* output refresh rate */
- fprintf(out, " refresh=\"%f\"", ATTOSECONDS_TO_HZ(config->screen[scrnum].defstate.refresh));
- fprintf(out, " />\n");
+ /* output width and height only for games that are not vector */
+ if (scrconfig->type != SCREEN_TYPE_VECTOR)
+ {
+ int dx = scrconfig->defstate.visarea.max_x - scrconfig->defstate.visarea.min_x + 1;
+ int dy = scrconfig->defstate.visarea.max_y - scrconfig->defstate.visarea.min_y + 1;
+ fprintf(out, " width=\"%d\"", dx);
+ fprintf(out, " height=\"%d\"", dy);
}
+
+ /* output refresh rate */
+ fprintf(out, " refresh=\"%f\"", ATTOSECONDS_TO_HZ(scrconfig->defstate.refresh));
+ fprintf(out, " />\n");
+ }
}
diff --git a/src/emu/mame.c b/src/emu/mame.c
index 6dfd1730007..b06348652bd 100644
--- a/src/emu/mame.c
+++ b/src/emu/mame.c
@@ -265,7 +265,7 @@ extern int mame_validitychecks(const game_driver *driver);
static int parse_ini_file(core_options *options, const char *name);
static running_machine *create_machine(const game_driver *driver);
-static void reset_machine(running_machine *machine);
+static void prepare_machine(running_machine *machine);
static void destroy_machine(running_machine *machine);
static void init_machine(running_machine *machine);
static TIMER_CALLBACK( soft_reset );
@@ -330,7 +330,7 @@ int mame_execute(core_options *options)
/* create the machine structure and driver */
machine = create_machine(driver);
- reset_machine(machine);
+ prepare_machine(machine);
mame = machine->mame_data;
/* start in the "pre-init phase" */
@@ -1329,13 +1329,21 @@ void mame_parse_ini_files(core_options *options, const game_driver *driver)
{
const game_driver *parent = driver_get_clone(driver);
const game_driver *gparent = (parent != NULL) ? driver_get_clone(parent) : NULL;
+ const device_config *device;
machine_config *config;
astring *sourcename;
/* parse "vector.ini" for vector games */
config = machine_config_alloc(driver->drv);
- if (config->video_attributes & VIDEO_TYPE_VECTOR)
- parse_ini_file(options, "vector");
+ for (device = video_screen_first(config); device != NULL; device = video_screen_next(device))
+ {
+ const screen_config *scrconfig = device->inline_config;
+ if (scrconfig->type == SCREEN_TYPE_VECTOR)
+ {
+ parse_ini_file(options, "vector");
+ break;
+ }
+ }
machine_config_free(config);
/* next parse "source/<sourcefile>.ini"; if that doesn't exist, try <sourcefile>.ini */
@@ -1436,20 +1444,24 @@ error:
/*-------------------------------------------------
- reset_machine - reset the state of the
+ prepare_machine - reset the state of the
machine object
-------------------------------------------------*/
-static void reset_machine(running_machine *machine)
+static void prepare_machine(running_machine *machine)
{
- int scrnum;
+ const device_config *device;
/* reset most portions of the machine */
/* video-related information */
memset(machine->gfx, 0, sizeof(machine->gfx));
- for (scrnum = 0; scrnum < MAX_SCREENS; scrnum++)
- machine->screen[scrnum] = machine->config->screen[scrnum].defstate;
+ for (device = video_screen_first(machine->config); device != NULL; device = video_screen_next(device))
+ {
+ int scrnum = device_list_index(machine->config->devicelist, VIDEO_SCREEN, device->tag);
+ const screen_config *scrconfig = device->inline_config;
+ machine->screen[scrnum] = scrconfig->defstate;
+ }
/* palette-related information */
machine->pens = NULL;
@@ -1574,13 +1586,13 @@ static void init_machine(running_machine *machine)
if (machine->gamedrv->driver_init != NULL)
(*machine->gamedrv->driver_init)(machine);
- /* start up the devices */
- device_list_start(machine);
-
/* start the video and audio hardware */
video_init(machine);
sound_init(machine);
+ /* start up the devices */
+ device_list_start(machine);
+
/* call the driver's _START callbacks */
if (machine->config->machine_start != NULL) (*machine->config->machine_start)(machine);
if (machine->config->sound_start != NULL) (*machine->config->sound_start)(machine);
diff --git a/src/emu/mconfig.c b/src/emu/mconfig.c
index 38ce9447bf3..20b5b988af8 100644
--- a/src/emu/mconfig.c
+++ b/src/emu/mconfig.c
@@ -35,15 +35,6 @@ machine_config *machine_config_alloc(void (*constructor)(machine_config *))
/* call the function to construct the data */
(*constructor)(config);
-
- /* if no screen tagged, tag screen 0 as main */
- if (config->screen[0].tag == NULL && config->screen[0].defstate.format != BITMAP_FORMAT_INVALID)
- config->screen[0].tag = "main";
-
- /* if no screens, set a dummy refresh for the main screen */
- if (config->screen[0].tag == NULL)
- config->screen[0].defstate.refresh = HZ_TO_ATTOSECONDS(60);
-
return config;
}
@@ -253,64 +244,3 @@ void machine_config_remove_sound(machine_config *machine, const char *tag)
fatalerror("Can't find sound '%s'!\n", tag);
}
-
-
-/*-------------------------------------------------
- machine_config_add_screen - add a screen during
- machine driver expansion
--------------------------------------------------*/
-
-screen_config *machine_config_add_screen(machine_config *machine, const char *tag, int palbase)
-{
- int screennum;
-
- for (screennum = 0; screennum < MAX_SCREENS; screennum++)
- if (machine->screen[screennum].tag == NULL)
- {
- machine->screen[screennum].tag = tag;
- machine->screen[screennum].palette_base = palbase;
- return &machine->screen[screennum];
- }
-
- fatalerror("Out of screens!\n");
- return NULL;
-}
-
-
-/*-------------------------------------------------
- machine_config_find_screen - find a tagged screen
- during machine driver expansion
--------------------------------------------------*/
-
-screen_config *machine_config_find_screen(machine_config *machine, const char *tag)
-{
- int screennum;
-
- for (screennum = 0; screennum < MAX_SCREENS; screennum++)
- if (machine->screen[screennum].tag && strcmp(machine->screen[screennum].tag, tag) == 0)
- return &machine->screen[screennum];
-
- fatalerror("Can't find screen '%s'!\n", tag);
- return NULL;
-}
-
-
-/*-------------------------------------------------
- machine_config_remove_screen - remove a tagged screen
- during machine driver expansion
--------------------------------------------------*/
-
-void machine_config_remove_screen(machine_config *machine, const char *tag)
-{
- int screennum;
-
- for (screennum = 0; screennum < MAX_SCREENS; screennum++)
- if (machine->screen[screennum].tag && strcmp(machine->screen[screennum].tag, tag) == 0)
- {
- memmove(&machine->screen[screennum], &machine->screen[screennum + 1], sizeof(machine->screen[0]) * (MAX_SCREENS - screennum - 1));
- memset(&machine->screen[MAX_SCREENS - 1], 0, sizeof(machine->screen[0]));
- return;
- }
-
- fatalerror("Can't find screen '%s'!\n", tag);
-}
diff --git a/src/emu/mconfig.h b/src/emu/mconfig.h
index e6f1ce0e262..089d1c6fc5d 100644
--- a/src/emu/mconfig.h
+++ b/src/emu/mconfig.h
@@ -28,11 +28,6 @@
/* ----- flags for video_attributes ----- */
-/* is the video hardware raster or vector based? */
-#define VIDEO_TYPE_NONE 0x0000
-#define VIDEO_TYPE_RASTER 0x0001
-#define VIDEO_TYPE_VECTOR 0x0002
-
/* should VIDEO_UPDATE by called at the start of VBLANK or at the end? */
#define VIDEO_UPDATE_BEFORE_VBLANK 0x0000
#define VIDEO_UPDATE_AFTER_VBLANK 0x0004
@@ -81,7 +76,6 @@ struct _machine_config
const gfx_decode_entry *gfxdecodeinfo; /* pointer to array of graphics decoding information */
UINT32 total_colors; /* total number of colors in the palette */
const char * default_layout; /* default layout for this machine */
- screen_config screen[MAX_SCREENS]; /* total number of screens */
void (*init_palette)(running_machine *machine, const UINT8 *color_prom); /* one-time palette init callback */
void (*video_start)(running_machine *machine); /* one-time video start callback */
@@ -115,11 +109,9 @@ struct _machine_config
{ \
cpu_config *cpu = NULL; \
sound_config *sound = NULL; \
- screen_config *screen = &machine->screen[0]; \
device_config *device = NULL; \
(void)cpu; \
(void)sound; \
- (void)screen; \
(void)device; \
#define MACHINE_DRIVER_END \
@@ -131,6 +123,23 @@ struct _machine_config
construct_##game(machine); \
+/* add/remove/config devices */
+#define MDRV_DEVICE_ADD(_tag, _type) \
+ device = device_list_add(&machine->devicelist, _type, _tag); \
+
+#define MDRV_DEVICE_REMOVE(_tag, _type) \
+ device_list_remove(&machine->devicelist, _type, _tag); \
+
+#define MDRV_DEVICE_MODIFY(_tag, _type) \
+ device = (device_config *)device_list_find_by_tag(machine->devicelist, _type, _tag); \
+
+#define MDRV_DEVICE_CONFIG(_config) \
+ device->static_config = &(_config); \
+
+#define MDRV_DEVICE_CONFIG_DATA(_struct, _field, _val) \
+ ((_struct *)device->inline_config)->_field = (_val); \
+
+
/* add/modify/remove/replace CPUs */
#define MDRV_CPU_ADD_TAG(tag, type, clock) \
cpu = machine_config_add_cpu(machine, (tag), CPU_##type, (clock)); \
@@ -256,50 +265,54 @@ struct _machine_config
/* add/remove screens */
-#define MDRV_SCREEN_ADD(tag, palbase) \
- screen = machine_config_add_screen(machine, (tag), (palbase)); \
+#define MDRV_SCREEN_ADD(tag, _type) \
+ MDRV_DEVICE_ADD(tag, VIDEO_SCREEN) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, type, SCREEN_TYPE_##_type) \
#define MDRV_SCREEN_REMOVE(tag) \
- machine_config_remove_screen(machine, tag); \
+ MDRV_DEVICE_REMOVE(tag, VIDEO_SCREEN) \
#define MDRV_SCREEN_MODIFY(tag) \
- screen = machine_config_find_screen(machine, tag); \
+ MDRV_DEVICE_MODIFY(tag, VIDEO_SCREEN) \
#define MDRV_SCREEN_FORMAT(_format) \
- screen->defstate.format = (_format); \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.format, _format) \
+
+#define MDRV_SCREEN_TYPE(_type) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, type, SCREEN_TYPE_##_type) \
#define MDRV_SCREEN_RAW_PARAMS(pixclock, htotal, hbend, hbstart, vtotal, vbend, vbstart) \
- screen->defstate.refresh = HZ_TO_ATTOSECONDS(pixclock) * (htotal) * (vtotal); \
- screen->defstate.vblank = (screen->defstate.refresh / (vtotal)) * ((vtotal) - ((vbstart) - (vbend))); \
- screen->defstate.width = (htotal); \
- screen->defstate.height = (vtotal); \
- screen->defstate.visarea.min_x = (hbend); \
- screen->defstate.visarea.max_x = (hbstart) - 1; \
- screen->defstate.visarea.min_y = (vbend); \
- screen->defstate.visarea.max_y = (vbstart) - 1; \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.refresh, HZ_TO_ATTOSECONDS(pixclock) * (htotal) * (vtotal)) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.vblank, ((HZ_TO_ATTOSECONDS(pixclock) * (htotal) * (vtotal)) / (vtotal)) * ((vtotal) - ((vbstart) - (vbend)))) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.width, htotal) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.height, vtotal) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.visarea.min_x, hbend) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.visarea.max_x, (hbstart) - 1) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.visarea.min_y, vbend) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.visarea.max_y, (vbstart) - 1) \
#define MDRV_SCREEN_REFRESH_RATE(rate) \
- screen->defstate.refresh = HZ_TO_ATTOSECONDS(rate); \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.refresh, HZ_TO_ATTOSECONDS(rate)) \
#define MDRV_SCREEN_VBLANK_TIME(time) \
- screen->defstate.vblank = time; \
- screen->defstate.oldstyle_vblank_supplied = 1; \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.vblank, time) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.oldstyle_vblank_supplied, TRUE) \
#define MDRV_SCREEN_SIZE(_width, _height) \
- screen->defstate.width = (_width); \
- screen->defstate.height = (_height); \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.width, _width) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.height, _height) \
#define MDRV_SCREEN_VISIBLE_AREA(minx, maxx, miny, maxy) \
- screen->defstate.visarea.min_x = (minx); \
- screen->defstate.visarea.max_x = (maxx); \
- screen->defstate.visarea.min_y = (miny); \
- screen->defstate.visarea.max_y = (maxy); \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.visarea.min_x, minx) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.visarea.max_x, maxx) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.visarea.min_y, miny) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, defstate.visarea.max_y, maxy) \
#define MDRV_SCREEN_DEFAULT_POSITION(_xscale, _xoffs, _yscale, _yoffs) \
- screen->xoffset = (float)(_xoffs); \
- screen->xscale = (float)(_xscale); \
- screen->yoffset = (float)(_yoffs); \
- screen->yscale = (float)(_yscale); \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, xoffset, (float)(_xoffs)) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, xscale, (float)(_xscale)) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, yoffset, (float)(_yoffs)) \
+ MDRV_DEVICE_CONFIG_DATA(screen_config, yscale, (float)(_yscale)) \
/* add/remove speakers */
@@ -367,21 +380,6 @@ struct _machine_config
MDRV_SOUND_ROUTE_EX(_output, _target, _gain, -1) \
-/* add/remove devices */
-#define MDRV_DEVICE_ADD(_tag, _type, _clock) \
- device = device_list_add(&machine->devicelist, _type, _tag); \
- device->clock = (_clock); \
-
-#define MDRV_DEVICE_REMOVE(_tag, _type) \
- device_list_remove(&machine->devicelist, _type, _tag); \
-
-#define MDRV_DEVICE_MODIFY(_tag, _type) \
- device = device_list_find_by_tag(&machine->devicelist, _type, _tag);\
-
-#define MDRV_DEVICE_CONFIG(_config) \
- device->static_config = &(_config); \
-
-
/***************************************************************************
FUNCTION PROTOTYPES
@@ -412,9 +410,5 @@ sound_config *machine_config_add_sound(machine_config *machine, const char *tag,
sound_config *machine_config_find_sound(machine_config *machine, const char *tag);
void machine_config_remove_sound(machine_config *machine, const char *tag);
-screen_config *machine_config_add_screen(machine_config *machine, const char *tag, int palbase);
-screen_config *machine_config_find_screen(machine_config *machine, const char *tag);
-void machine_config_remove_screen(machine_config *machine, const char *tag);
-
#endif /* __MCONFIG_H__ */
diff --git a/src/emu/render.c b/src/emu/render.c
index 186bd59f2d6..03c90811bbc 100644
--- a/src/emu/render.c
+++ b/src/emu/render.c
@@ -470,6 +470,7 @@ INLINE void free_render_ref(render_ref *ref)
void render_init(running_machine *machine)
{
+ int numscreens = video_screen_count(machine->config);
int scrnum;
/* make sure we clean up after ourselves */
@@ -490,15 +491,14 @@ void render_init(running_machine *machine)
ui_container = render_container_alloc();
/* create a container for each screen and determine its orientation */
- for (scrnum = 0; scrnum < MAX_SCREENS; scrnum++)
- if (Machine->config->screen[scrnum].tag != NULL)
- {
- screen_container[scrnum] = render_container_alloc();
- render_container_set_orientation(screen_container[scrnum], Machine->gamedrv->flags & ORIENTATION_MASK);
- render_container_set_brightness(screen_container[scrnum], options_get_float(mame_options(), OPTION_BRIGHTNESS));
- render_container_set_contrast(screen_container[scrnum], options_get_float(mame_options(), OPTION_CONTRAST));
- render_container_set_gamma(screen_container[scrnum], options_get_float(mame_options(), OPTION_GAMMA));
- }
+ for (scrnum = 0; scrnum < numscreens; scrnum++)
+ {
+ screen_container[scrnum] = render_container_alloc();
+ render_container_set_orientation(screen_container[scrnum], Machine->gamedrv->flags & ORIENTATION_MASK);
+ render_container_set_brightness(screen_container[scrnum], options_get_float(mame_options(), OPTION_BRIGHTNESS));
+ render_container_set_contrast(screen_container[scrnum], options_get_float(mame_options(), OPTION_CONTRAST));
+ render_container_set_gamma(screen_container[scrnum], options_get_float(mame_options(), OPTION_GAMMA));
+ }
/* register callbacks */
config_register("video", render_load, render_save);
@@ -1366,19 +1366,20 @@ void render_target_get_minimum_size(render_target *target, INT32 *minwidth, INT3
for (item = target->curview->itemlist[layer]; item != NULL; item = item->next)
if (item->element == NULL)
{
+ const screen_config *scrconfig = device_list_find_by_index(Machine->config->devicelist, VIDEO_SCREEN, item->index)->inline_config;
const rectangle vectorvis = { 0, 639, 0, 479 };
- const rectangle *visarea;
+ const rectangle *visarea = NULL;
render_container *container = screen_container[item->index];
render_bounds bounds;
float xscale, yscale;
/* we may be called very early, before Machine->visible_area is initialized; handle that case */
- if ((Machine->config->video_attributes & VIDEO_TYPE_VECTOR) != 0)
+ if (scrconfig->type == SCREEN_TYPE_VECTOR)
visarea = &vectorvis;
else if (Machine->screen[item->index].visarea.max_x > Machine->screen[item->index].visarea.min_x)
visarea = &Machine->screen[item->index].visarea;
else
- visarea = &Machine->config->screen[item->index].defstate.visarea;
+ visarea = &scrconfig->defstate.visarea;
/* apply target orientation to the bounds */
bounds = item->bounds;
@@ -1619,7 +1620,7 @@ static int load_layout_files(render_target *target, const char *layoutfile, int
}
/* now do the built-in layouts for single-screen games */
- if (Machine->config->screen[0].tag != NULL && Machine->config->screen[1].tag == NULL)
+ if (video_screen_count(Machine->config) == 1)
{
if (Machine->gamedrv->flags & ORIENTATION_SWAP_XY)
*nextfile = layout_file_load(NULL, layout_vertical);
diff --git a/src/emu/rendlay.c b/src/emu/rendlay.c
index dda2b5e04ee..69572d99899 100644
--- a/src/emu/rendlay.c
+++ b/src/emu/rendlay.c
@@ -1346,18 +1346,22 @@ static void layout_element_draw_led16segsc(mame_bitmap *dest, const rectangle *b
static int get_variable_value(const char *string, char **outputptr)
{
- int num, den, scrnum;
+ const device_config *device;
+ int num, den;
char temp[100];
/* screen 0 parameters */
- for (scrnum = 0; scrnum < MAX_SCREENS; scrnum++)
+ for (device = video_screen_first(Machine->config); device != NULL; device = video_screen_next(device))
{
+ int scrnum = device_list_index(Machine->config->devicelist, VIDEO_SCREEN, device->tag);
+ const screen_config *scrconfig = device->inline_config;
+
/* native X aspect factor */
sprintf(temp, "~scr%dnativexaspect~", scrnum);
if (!strncmp(string, temp, strlen(temp)))
{
- num = Machine->config->screen[scrnum].defstate.visarea.max_x + 1 - Machine->config->screen[scrnum].defstate.visarea.min_x;
- den = Machine->config->screen[scrnum].defstate.visarea.max_y + 1 - Machine->config->screen[scrnum].defstate.visarea.min_y;
+ num = scrconfig->defstate.visarea.max_x + 1 - scrconfig->defstate.visarea.min_x;
+ den = scrconfig->defstate.visarea.max_y + 1 - scrconfig->defstate.visarea.min_y;
reduce_fraction(&num, &den);
*outputptr += sprintf(*outputptr, "%d", num);
return strlen(temp);
@@ -1367,8 +1371,8 @@ static int get_variable_value(const char *string, char **outputptr)
sprintf(temp, "~scr%dnativeyaspect~", scrnum);
if (!strncmp(string, temp, strlen(temp)))
{
- num = Machine->config->screen[scrnum].defstate.visarea.max_x + 1 - Machine->config->screen[scrnum].defstate.visarea.min_x;
- den = Machine->config->screen[scrnum].defstate.visarea.max_y + 1 - Machine->config->screen[scrnum].defstate.visarea.min_y;
+ num = scrconfig->defstate.visarea.max_x + 1 - scrconfig->defstate.visarea.min_x;
+ den = scrconfig->defstate.visarea.max_y + 1 - scrconfig->defstate.visarea.min_y;
reduce_fraction(&num, &den);
*outputptr += sprintf(*outputptr, "%d", den);
return strlen(temp);
@@ -1378,7 +1382,7 @@ static int get_variable_value(const char *string, char **outputptr)
sprintf(temp, "~scr%dwidth~", scrnum);
if (!strncmp(string, temp, strlen(temp)))
{
- *outputptr += sprintf(*outputptr, "%d", Machine->config->screen[scrnum].defstate.visarea.max_x + 1 - Machine->config->screen[0].defstate.visarea.min_x);
+ *outputptr += sprintf(*outputptr, "%d", scrconfig->defstate.visarea.max_x + 1 - scrconfig->defstate.visarea.min_x);
return strlen(temp);
}
@@ -1386,7 +1390,7 @@ static int get_variable_value(const char *string, char **outputptr)
sprintf(temp, "~scr%dheight~", scrnum);
if (!strncmp(string, temp, strlen(temp)))
{
- *outputptr += sprintf(*outputptr, "%d", Machine->config->screen[scrnum].defstate.visarea.max_y + 1 - Machine->config->screen[0].defstate.visarea.min_y);
+ *outputptr += sprintf(*outputptr, "%d", scrconfig->defstate.visarea.max_y + 1 - scrconfig->defstate.visarea.min_y);
return strlen(temp);
}
}
diff --git a/src/emu/ui.c b/src/emu/ui.c
index 8c3092d0a7e..417435587fd 100644
--- a/src/emu/ui.c
+++ b/src/emu/ui.c
@@ -1043,6 +1043,8 @@ static int sprintf_warnings(char *buffer)
int sprintf_game_info(char *buffer)
{
+ int scrcount = video_screen_count(Machine->config);
+ const device_config *device;
char *bufptr = buffer;
int cpunum, sndnum;
int count;
@@ -1074,15 +1076,16 @@ int sprintf_game_info(char *buffer)
bufptr += sprintf(bufptr, " %d.%03d" UTF8_NBSP "kHz\n", clock / 1000, clock % 1000);
}
- /* append the Sound: string */
- bufptr += sprintf(bufptr, "\nSound:\n");
-
/* loop over all sound chips */
for (sndnum = 0; sndnum < MAX_SOUND && Machine->config->sound[sndnum].type != SOUND_DUMMY; sndnum += count)
{
sound_type type = Machine->config->sound[sndnum].type;
int clock = sndnum_clock(sndnum);
+ /* append the Sound: string */
+ if (sndnum == 0)
+ bufptr += sprintf(bufptr, "\nSound:\n");
+
/* count how many identical sound chips we have */
for (count = 1; sndnum + count < MAX_SOUND; count++)
if (Machine->config->sound[sndnum + count].type != type ||
@@ -1103,19 +1106,25 @@ int sprintf_game_info(char *buffer)
*bufptr++ = '\n';
}
- /* display vector information for vector games */
- if (Machine->config->video_attributes & VIDEO_TYPE_VECTOR)
- bufptr += sprintf(bufptr, "\nVector Game\n");
-
- /* display screen resolution and refresh rate info for raster games */
- else if (Machine->config->video_attributes & VIDEO_TYPE_RASTER)
- bufptr += sprintf(bufptr,"\nScreen Resolution:\n%d " UTF8_MULTIPLY " %d (%s) %f" UTF8_NBSP "Hz\n",
- Machine->screen[0].visarea.max_x - Machine->screen[0].visarea.min_x + 1,
- Machine->screen[0].visarea.max_y - Machine->screen[0].visarea.min_y + 1,
- (Machine->gamedrv->flags & ORIENTATION_SWAP_XY) ? "V" : "H",
- ATTOSECONDS_TO_HZ(Machine->screen[0].refresh));
- else
- *bufptr++ = '\0';
+ /* display screen information */
+ bufptr += sprintf(bufptr, "\nVideo:\n");
+ for (device = video_screen_first(Machine->config); device != NULL; device = video_screen_next(device))
+ {
+ int index = device_list_index(Machine->config->devicelist, VIDEO_SCREEN, device->tag);
+ const screen_config *scrconfig = device->inline_config;
+
+ if (scrcount > 1)
+ bufptr += sprintf(bufptr, "Screen %d: ", index + 1);
+
+ if (scrconfig->type == SCREEN_TYPE_VECTOR)
+ bufptr += sprintf(bufptr, "Vector\n");
+ else
+ bufptr += sprintf(bufptr, "Resolution:\n%d " UTF8_MULTIPLY " %d (%s) %f" UTF8_NBSP "Hz\n",
+ Machine->screen[0].visarea.max_x - Machine->screen[0].visarea.min_x + 1,
+ Machine->screen[0].visarea.max_y - Machine->screen[0].visarea.min_y + 1,
+ (Machine->gamedrv->flags & ORIENTATION_SWAP_XY) ? "V" : "H",
+ ATTOSECONDS_TO_HZ(Machine->screen[0].refresh));
+ }
return bufptr - buffer;
}
@@ -1510,6 +1519,8 @@ static UINT32 handler_load_save(running_machine *machine, UINT32 state)
static void slider_init(void)
{
+ int numscreens = video_screen_count(Machine->config);
+ const device_config *device;
int numitems, item;
input_port_entry *in;
@@ -1539,31 +1550,36 @@ static void slider_init(void)
slider_config(&slider_list[slider_count++], -10000, 0, 10000, 1000, slider_refresh, 0);
}
- for (item = 0; item < MAX_SCREENS; item++)
- if (Machine->config->screen[item].tag != NULL)
- {
- int defxscale = floor(Machine->config->screen[item].xscale * 1000.0f + 0.5f);
- int defyscale = floor(Machine->config->screen[item].yscale * 1000.0f + 0.5f);
- int defxoffset = floor(Machine->config->screen[item].xoffset * 1000.0f + 0.5f);
- int defyoffset = floor(Machine->config->screen[item].yoffset * 1000.0f + 0.5f);
-
- /* add standard brightness/contrast/gamma controls per-screen */
- slider_config(&slider_list[slider_count++], 100, 1000, 2000, 10, slider_brightness, item);
- slider_config(&slider_list[slider_count++], 100, 1000, 2000, 50, slider_contrast, item);
- slider_config(&slider_list[slider_count++], 100, 1000, 3000, 50, slider_gamma, item);
-
- /* add scale and offset controls per-screen */
- slider_config(&slider_list[slider_count++], 500, (defxscale == 0) ? 1000 : defxscale, 1500, 2, slider_xscale, item);
- slider_config(&slider_list[slider_count++], -500, defxoffset, 500, 2, slider_xoffset, item);
- slider_config(&slider_list[slider_count++], 500, (defyscale == 0) ? 1000 : defyscale, 1500, 2, slider_yscale, item);
- slider_config(&slider_list[slider_count++], -500, defyoffset, 500, 2, slider_yoffset, item);
- }
+ for (item = 0; item < numscreens; item++)
+ {
+ const screen_config *scrconfig = device_list_find_by_index(Machine->config->devicelist, VIDEO_SCREEN, item)->inline_config;
+ int defxscale = floor(scrconfig->xscale * 1000.0f + 0.5f);
+ int defyscale = floor(scrconfig->yscale * 1000.0f + 0.5f);
+ int defxoffset = floor(scrconfig->xoffset * 1000.0f + 0.5f);
+ int defyoffset = floor(scrconfig->yoffset * 1000.0f + 0.5f);
+
+ /* add standard brightness/contrast/gamma controls per-screen */
+ slider_config(&slider_list[slider_count++], 100, 1000, 2000, 10, slider_brightness, item);
+ slider_config(&slider_list[slider_count++], 100, 1000, 2000, 50, slider_contrast, item);
+ slider_config(&slider_list[slider_count++], 100, 1000, 3000, 50, slider_gamma, item);
+
+ /* add scale and offset controls per-screen */
+ slider_config(&slider_list[slider_count++], 500, (defxscale == 0) ? 1000 : defxscale, 1500, 2, slider_xscale, item);
+ slider_config(&slider_list[slider_count++], -500, defxoffset, 500, 2, slider_xoffset, item);
+ slider_config(&slider_list[slider_count++], 500, (defyscale == 0) ? 1000 : defyscale, 1500, 2, slider_yscale, item);
+ slider_config(&slider_list[slider_count++], -500, defyoffset, 500, 2, slider_yoffset, item);
+ }
- if (Machine->config->video_attributes & VIDEO_TYPE_VECTOR)
+ for (device = video_screen_first(Machine->config); device != NULL; device = video_screen_next(device))
{
- /* add flicker control */
- slider_config(&slider_list[slider_count++], 0, 0, 1000, 10, slider_flicker, 0);
- slider_config(&slider_list[slider_count++], 10, 100, 1000, 10, slider_beam, 0);
+ const screen_config *scrconfig = device->inline_config;
+ if (scrconfig->type == SCREEN_TYPE_VECTOR)
+ {
+ /* add flicker control */
+ slider_config(&slider_list[slider_count++], 0, 0, 1000, 10, slider_flicker, 0);
+ slider_config(&slider_list[slider_count++], 10, 100, 1000, 10, slider_beam, 0);
+ break;
+ }
}
#ifdef MAME_DEBUG
@@ -1714,7 +1730,8 @@ static INT32 slider_overclock(running_machine *machine, INT32 newval, char *buff
static INT32 slider_refresh(running_machine *machine, INT32 newval, char *buffer, int arg)
{
- double defrefresh = ATTOSECONDS_TO_HZ(Machine->config->screen[arg].defstate.refresh);
+ const screen_config *scrconfig = device_list_find_by_index(Machine->config->devicelist, VIDEO_SCREEN, arg)->inline_config;
+ double defrefresh = ATTOSECONDS_TO_HZ(scrconfig->defstate.refresh);
double refresh;
if (buffer != NULL)
@@ -1885,13 +1902,8 @@ static INT32 slider_beam(running_machine *machine, INT32 newval, char *buffer, i
static char *slider_get_screen_desc(int arg)
{
+ int screen_count = video_screen_count(Machine->config);
static char descbuf[256];
- int item;
- int screen_count = 0;
-
- for (item = 0; item < MAX_SCREENS; item++)
- if (Machine->config->screen[item].tag != NULL)
- screen_count++;
if (screen_count > 1)
sprintf(descbuf, "Screen #%d", arg);
diff --git a/src/emu/validity.c b/src/emu/validity.c
index ad0d750a14e..dab6ecc2665 100644
--- a/src/emu/validity.c
+++ b/src/emu/validity.c
@@ -83,7 +83,7 @@ static quark_table *defstr_table;
INLINE const char *input_port_string_from_index(UINT32 index)
{
input_port_token token;
- token.i[0] = index;
+ token.fptr = index;
return input_port_string_from_token(token);
}
@@ -774,52 +774,53 @@ static int validate_cpu(int drivnum, const machine_config *drv, const UINT32 *re
static int validate_display(int drivnum, const machine_config *drv)
{
const game_driver *driver = drivers[drivnum];
+ const device_config *device;
int palette_modes = FALSE;
int error = FALSE;
- int scrnum;
/* loop over screens */
- for (scrnum = 0; scrnum < MAX_SCREENS; scrnum++)
- if (drv->screen[scrnum].tag != NULL)
+ for (device = video_screen_first(drv); device != NULL; device = video_screen_next(device))
+ {
+ const screen_config *scrconfig = device->inline_config;
+
+ /* sanity check dimensions */
+ if ((scrconfig->defstate.width <= 0) || (scrconfig->defstate.height <= 0))
+ {
+ mame_printf_error("%s: %s screen \"%s\" has invalid display dimensions\n", driver->source_file, driver->name, device->tag);
+ error = TRUE;
+ }
+
+ /* sanity check display area */
+ if (scrconfig->type != SCREEN_TYPE_VECTOR)
{
- /* sanity check dimensions */
- if ((drv->screen[scrnum].defstate.width <= 0) || (drv->screen[scrnum].defstate.height <= 0))
+ if ((scrconfig->defstate.visarea.max_x < scrconfig->defstate.visarea.min_x)
+ || (scrconfig->defstate.visarea.max_y < scrconfig->defstate.visarea.min_y)
+ || (scrconfig->defstate.visarea.max_x >= scrconfig->defstate.width)
+ || (scrconfig->defstate.visarea.max_y >= scrconfig->defstate.height))
{
- mame_printf_error("%s: %s screen %d has invalid display dimensions\n", driver->source_file, driver->name, scrnum);
+ mame_printf_error("%s: %s screen \"%s\" has an invalid display area\n", driver->source_file, driver->name, device->tag);
error = TRUE;
}
/* sanity check screen formats */
- if (drv->screen[scrnum].defstate.format != BITMAP_FORMAT_INDEXED16 &&
- drv->screen[scrnum].defstate.format != BITMAP_FORMAT_RGB15 &&
- drv->screen[scrnum].defstate.format != BITMAP_FORMAT_RGB32)
+ if (scrconfig->defstate.format != BITMAP_FORMAT_INDEXED16 &&
+ scrconfig->defstate.format != BITMAP_FORMAT_RGB15 &&
+ scrconfig->defstate.format != BITMAP_FORMAT_RGB32)
{
- mame_printf_error("%s: %s screen %d has unsupported format\n", driver->source_file, driver->name, scrnum);
+ mame_printf_error("%s: %s screen \"%s\" has unsupported format\n", driver->source_file, driver->name, device->tag);
error = TRUE;
}
- if (drv->screen[scrnum].defstate.format == BITMAP_FORMAT_INDEXED16)
+ if (scrconfig->defstate.format == BITMAP_FORMAT_INDEXED16)
palette_modes = TRUE;
+ }
- /* sanity check display area */
- if (!(drv->video_attributes & VIDEO_TYPE_VECTOR))
- {
- if ((drv->screen[scrnum].defstate.visarea.max_x < drv->screen[scrnum].defstate.visarea.min_x)
- || (drv->screen[scrnum].defstate.visarea.max_y < drv->screen[scrnum].defstate.visarea.min_y)
- || (drv->screen[scrnum].defstate.visarea.max_x >= drv->screen[scrnum].defstate.width)
- || (drv->screen[scrnum].defstate.visarea.max_y >= drv->screen[scrnum].defstate.height))
- {
- mame_printf_error("%s: %s screen %d has an invalid display area\n", driver->source_file, driver->name, scrnum);
- error = TRUE;
- }
- }
-
- /* check for zero frame rate */
- if (drv->screen[scrnum].defstate.refresh == 0)
- {
- mame_printf_error("%s: %s screen %d has a zero refresh rate\n", driver->source_file, driver->name, scrnum);
- error = TRUE;
- }
+ /* check for zero frame rate */
+ if (scrconfig->defstate.refresh == 0)
+ {
+ mame_printf_error("%s: %s screen \"%s\" has a zero refresh rate\n", driver->source_file, driver->name, device->tag);
+ error = TRUE;
}
+ }
/* check for empty palette */
if (palette_modes && drv->total_colors == 0)
diff --git a/src/emu/video.c b/src/emu/video.c
index 933f1af623c..4d6b24ecc2f 100644
--- a/src/emu/video.c
+++ b/src/emu/video.c
@@ -273,9 +273,9 @@ INLINE int effective_throttle(void)
void video_init(running_machine *machine)
{
+ const device_config *device;
video_private *viddata;
const char *filename;
- int scrnum;
/* reset our global state */
memset(&global, 0, sizeof(global));
@@ -299,47 +299,47 @@ void video_init(running_machine *machine)
add_exit_callback(machine, video_exit);
/* configure all of the screens */
- for (scrnum = 0; scrnum < MAX_SCREENS; scrnum++)
- if (machine->config->screen[scrnum].tag != NULL)
- {
- render_container *container = render_container_get_screen(scrnum);
- internal_screen_info *info = &viddata->scrinfo[scrnum];
-
- /* allocate a timer to reset partial updates */
- info->scanline0_timer = timer_alloc(scanline0_callback, NULL);
-
- /* make pointers back to the config and state */
- info->config = &machine->config->screen[scrnum];
- info->state = &machine->screen[scrnum];
-
- /* configure the screen with the default parameters */
- video_screen_configure(scrnum, info->state->width, info->state->height, &info->state->visarea, info->state->refresh);
-
- /* configure the default cliparea */
- if (info->config->xoffset != 0)
- render_container_set_xoffset(container, info->config->xoffset);
- if (info->config->yoffset != 0)
- render_container_set_yoffset(container, info->config->yoffset);
- if (info->config->xscale != 0)
- render_container_set_xscale(container, info->config->xscale);
- if (info->config->yscale != 0)
- render_container_set_yscale(container, info->config->yscale);
-
- /* reset VBLANK timing */
- info->vblank_time = attotime_sub_attoseconds(attotime_zero, machine->screen[0].vblank);
-
- /* allocate a timer to generate per-scanline updates */
- if (machine->config->video_attributes & VIDEO_UPDATE_SCANLINE)
- {
- info->scanline_timer = timer_alloc(scanline_update_callback, NULL);
- timer_adjust_oneshot(info->scanline_timer, video_screen_get_time_until_pos(scrnum, 0, 0), scrnum);
- }
+ for (device = video_screen_first(machine->config); device != NULL; device = video_screen_next(device))
+ {
+ int scrnum = device_list_index(machine->config->devicelist, VIDEO_SCREEN, device->tag);
+ render_container *container = render_container_get_screen(scrnum);
+ internal_screen_info *info = &viddata->scrinfo[scrnum];
- /* register for save states */
- state_save_register_item("video", scrnum, info->vblank_time.seconds);
- state_save_register_item("video", scrnum, info->vblank_time.attoseconds);
+ /* allocate a timer to reset partial updates */
+ info->scanline0_timer = timer_alloc(scanline0_callback, NULL);
+
+ /* make pointers back to the config and state */
+ info->config = device->inline_config;
+ info->state = &machine->screen[scrnum];
+
+ /* configure the screen with the default parameters */
+ video_screen_configure(scrnum, info->state->width, info->state->height, &info->state->visarea, info->state->refresh);
+
+ /* configure the default cliparea */
+ if (info->config->xoffset != 0)
+ render_container_set_xoffset(container, info->config->xoffset);
+ if (info->config->yoffset != 0)
+ render_container_set_yoffset(container, info->config->yoffset);
+ if (info->config->xscale != 0)
+ render_container_set_xscale(container, info->config->xscale);
+ if (info->config->yscale != 0)
+ render_container_set_yscale(container, info->config->yscale);
+
+ /* reset VBLANK timing */
+ info->vblank_time = attotime_sub_attoseconds(attotime_zero, machine->screen[0].vblank);
+
+ /* allocate a timer to generate per-scanline updates */
+ if (machine->config->video_attributes & VIDEO_UPDATE_SCANLINE)
+ {
+ info->scanline_timer = timer_alloc(scanline_update_callback, NULL);
+ timer_adjust_oneshot(info->scanline_timer, video_screen_get_time_until_pos(scrnum, 0, 0), scrnum);
}
+ /* register for save states */
+ state_save_register_item("video", scrnum, info->vblank_time.seconds);
+ state_save_register_item("video", scrnum, info->vblank_time.attoseconds);
+ }
+
/* create spriteram buffers if necessary */
if (machine->config->video_attributes & VIDEO_BUFFERS_SPRITERAM)
init_buffered_spriteram();
@@ -676,11 +676,12 @@ static void decode_graphics(running_machine *machine, const gfx_decode_entry *gf
void video_screen_configure(int scrnum, int width, int height, const rectangle *visarea, attoseconds_t refresh)
{
+ const screen_config *scrconfig = device_list_find_by_index(Machine->config->devicelist, VIDEO_SCREEN, scrnum)->inline_config;
video_private *viddata = Machine->video_data;
internal_screen_info *info = &viddata->scrinfo[scrnum];
/* reallocate bitmap if necessary */
- if (!(Machine->config->video_attributes & VIDEO_TYPE_VECTOR))
+ if (scrconfig->type != SCREEN_TYPE_VECTOR)
{
int curwidth = 0, curheight = 0;
@@ -732,9 +733,9 @@ void video_screen_configure(int scrnum, int width, int height, const rectangle *
/* allocate textures */
info->texture[0] = render_texture_alloc(NULL, NULL);
- render_texture_set_bitmap(info->texture[0], info->bitmap[0], visarea, info->config->palette_base, info->format);
+ render_texture_set_bitmap(info->texture[0], info->bitmap[0], visarea, 0, info->format);
info->texture[1] = render_texture_alloc(NULL, NULL);
- render_texture_set_bitmap(info->texture[1], info->bitmap[1], visarea, info->config->palette_base, info->format);
+ render_texture_set_bitmap(info->texture[1], info->bitmap[1], visarea, 0, info->format);
}
}
@@ -805,7 +806,7 @@ void video_screen_set_visarea(int scrnum, int min_x, int max_x, int min_y, int m
int video_screen_exists(int scrnum)
{
- return (scrnum >= 0 && scrnum < MAX_SCREENS && Machine->config->screen[scrnum].tag != NULL);
+ return (device_list_find_by_index(Machine->config->devicelist, VIDEO_SCREEN, scrnum) != NULL);
}
@@ -1047,6 +1048,65 @@ attotime video_screen_get_frame_period(int scrnum)
/***************************************************************************
+ VIDEO SCREEN DEVICE INTERFACE
+***************************************************************************/
+
+/*-------------------------------------------------
+ video_screen_start - device start callback
+ for a video screen
+-------------------------------------------------*/
+
+static void *video_screen_start(running_machine *machine, const char *tag, const void *static_config, const void *inline_config)
+{
+ int scrindex = device_list_index(machine->config->devicelist, VIDEO_SCREEN, tag);
+ return &machine->screen[scrindex];
+}
+
+
+/*-------------------------------------------------
+ video_screen_set_info - device set info
+ callback
+-------------------------------------------------*/
+
+static void video_screen_set_info(running_machine *machine, void *token, UINT32 state, const deviceinfo *info)
+{
+ switch (state)
+ {
+ /* no parameters to set */
+ }
+}
+
+
+/*-------------------------------------------------
+ video_screen_get_info - device get info
+ callback
+-------------------------------------------------*/
+
+void video_screen_get_info(running_machine *machine, void *token, UINT32 state, deviceinfo *info)
+{
+ switch (state)
+ {
+ /* --- the following bits of info are returned as 64-bit signed integers --- */
+ case DEVINFO_INT_INLINE_CONFIG_BYTES: info->i = sizeof(screen_config); break;
+
+ /* --- the following bits of info are returned as pointers to data or functions --- */
+ case DEVINFO_FCT_SET_INFO: info->set_info = video_screen_set_info;break;
+ case DEVINFO_FCT_START: info->start = video_screen_start; break;
+ case DEVINFO_FCT_STOP: /* Nothing */ break;
+ case DEVINFO_FCT_RESET: /* Nothing */ break;
+
+ /* --- the following bits of info are returned as NULL-terminated strings --- */
+ case DEVINFO_STR_NAME: info->s = "Raster"; break;
+ case DEVINFO_STR_FAMILY: info->s = "Video Screen"; break;
+ case DEVINFO_STR_VERSION: info->s = "1.0"; break;
+ case DEVINFO_STR_SOURCE_FILE: info->s = __FILE__; break;
+ case DEVINFO_STR_CREDITS: info->s = "Copyright Nicola Salmoria and the MAME Team"; break;
+ }
+}
+
+
+
+/***************************************************************************
GLOBAL RENDERING
***************************************************************************/
@@ -1166,26 +1226,31 @@ void video_frame_update(running_machine *machine, int debug)
static int finish_screen_updates(running_machine *machine)
{
video_private *viddata = machine->video_data;
+ const device_config *device;
int anything_changed = FALSE;
int livemask;
- int scrnum;
/* finish updating the screens */
- for (scrnum = 0; scrnum < MAX_SCREENS; scrnum++)
- if (machine->config->screen[scrnum].tag != NULL)
- video_screen_update_partial(scrnum, machine->screen[scrnum].visarea.max_y);
+ for (device = video_screen_first(machine->config); device != NULL; device = video_screen_next(device))
+ {
+ int scrnum = device_list_index(machine->config->devicelist, VIDEO_SCREEN, device->tag);
+ video_screen_update_partial(scrnum, machine->screen[scrnum].visarea.max_y);
+ }
/* now add the quads for all the screens */
livemask = render_get_live_screens_mask();
- for (scrnum = 0; scrnum < MAX_SCREENS; scrnum++)
+ for (device = video_screen_first(machine->config); device != NULL; device = video_screen_next(device))
{
+ int scrnum = device_list_index(machine->config->devicelist, VIDEO_SCREEN, device->tag);
internal_screen_info *screen = &viddata->scrinfo[scrnum];
/* only update if live */
if (livemask & (1 << scrnum))
{
+ const screen_config *scrconfig = device_list_find_by_index(Machine->config->devicelist, VIDEO_SCREEN, scrnum)->inline_config;
+
/* only update if empty and not a vector game; otherwise assume the driver did it directly */
- if ((machine->config->video_attributes & (VIDEO_TYPE_VECTOR | VIDEO_SELF_RENDER)) == 0)
+ if (scrconfig->type != SCREEN_TYPE_VECTOR && (machine->config->video_attributes & VIDEO_SELF_RENDER) == 0)
{
/* if we're not skipping the frame and if the screen actually changed, then update the texture */
if (!global.skipping_this_frame && screen->changed)
@@ -1194,7 +1259,7 @@ static int finish_screen_updates(running_machine *machine)
rectangle fixedvis = machine->screen[scrnum].visarea;
fixedvis.max_x++;
fixedvis.max_y++;
- render_texture_set_bitmap(screen->texture[screen->curbitmap], bitmap, &fixedvis, machine->config->screen[scrnum].palette_base, screen->format);
+ render_texture_set_bitmap(screen->texture[screen->curbitmap], bitmap, &fixedvis, 0, screen->format);
screen->curtexture = screen->curbitmap;
screen->curbitmap = 1 - screen->curbitmap;
}
diff --git a/src/emu/video.h b/src/emu/video.h
index f50b519975a..dd12deff146 100644
--- a/src/emu/video.h
+++ b/src/emu/video.h
@@ -15,6 +15,7 @@
#define __VIDEO_H__
#include "mamecore.h"
+#include "devintrf.h"
#include "timer.h"
@@ -29,6 +30,27 @@
#define FRAMESKIP_LEVELS 12
#define MAX_FRAMESKIP (FRAMESKIP_LEVELS - 2)
+/* screen types */
+enum
+{
+ SCREEN_TYPE_INVALID = 0,
+ SCREEN_TYPE_RASTER,
+ SCREEN_TYPE_VECTOR,
+ SCREEN_TYPE_LCD
+};
+
+
+
+/***************************************************************************
+ MACROS
+***************************************************************************/
+
+/* these functions are macros primarily due to include file ordering */
+/* plus, they are very simple */
+#define video_screen_count(config) device_list_items((config)->devicelist, VIDEO_SCREEN)
+#define video_screen_first(config) device_list_first((config)->devicelist, VIDEO_SCREEN)
+#define video_screen_next(previous) device_list_next((previous), VIDEO_SCREEN)
+
/***************************************************************************
@@ -59,8 +81,7 @@ struct _screen_state
typedef struct _screen_config screen_config;
struct _screen_config
{
- const char * tag; /* nametag for the screen */
- UINT32 palette_base; /* base palette entry for this screen */
+ int type; /* type of screen */
screen_state defstate; /* default state */
float xoffset, yoffset; /* default X/Y offsets */
float xscale, yscale; /* default X/Y scale factor */
@@ -117,6 +138,14 @@ int video_screen_exists(int scrnum);
+/* ----- video screen device interface ----- */
+
+/* device get info callback */
+#define VIDEO_SCREEN video_screen_get_info
+void video_screen_get_info(running_machine *machine, void *token, UINT32 state, deviceinfo *info);
+
+
+
/* ----- global rendering ----- */
/* update the screen, handling frame skipping and rendering */
@@ -169,4 +198,5 @@ void video_movie_end_recording(running_machine *machine, int scrnum);
void video_crosshair_toggle(void);
+
#endif /* __VIDEO_H__ */
diff --git a/src/emu/video/mc6845.c b/src/emu/video/mc6845.c
index 3e8de485d9d..965fafcb46c 100644
--- a/src/emu/video/mc6845.c
+++ b/src/emu/video/mc6845.c
@@ -410,7 +410,7 @@ void mc6845_update(mc6845_t *mc6845, mame_bitmap *bitmap, const rectangle *clipr
/* device interface */
-static void *mc6845_start(running_machine *machine, const void *static_config, const void *inline_config)
+static void *mc6845_start(running_machine *machine, const char *tag, const void *static_config, const void *inline_config)
{
mc6845_t *mc6845;
diff --git a/src/emu/video/tms9928a.c b/src/emu/video/tms9928a.c
index 5b8f3913117..ed20df0a13e 100644
--- a/src/emu/video/tms9928a.c
+++ b/src/emu/video/tms9928a.c
@@ -795,7 +795,9 @@ VIDEO_START( tms9928a )
MACHINE_DRIVER_START( tms9928a )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_TYPE_RASTER)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(LEFT_BORDER+32*8+RIGHT_BORDER, TOP_BORDER_60HZ+24*8+BOTTOM_BORDER_60HZ)
MDRV_SCREEN_VISIBLE_AREA(LEFT_BORDER-12, LEFT_BORDER+32*8+12-1, TOP_BORDER_60HZ-9, TOP_BORDER_60HZ+24*8+9-1)
diff --git a/src/mame/drivers/1942.c b/src/mame/drivers/1942.c
index 54e55a1f9a5..140250eb4ad 100644
--- a/src/mame/drivers/1942.c
+++ b/src/mame/drivers/1942.c
@@ -275,11 +275,10 @@ static MACHINE_DRIVER_START( 1942 )
MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(1942)
MDRV_PALETTE_LENGTH(64*4+4*32*8+16*16)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/1943.c b/src/mame/drivers/1943.c
index 0f745e13f01..e374fa4e4b5 100644
--- a/src/mame/drivers/1943.c
+++ b/src/mame/drivers/1943.c
@@ -258,11 +258,11 @@ static MACHINE_DRIVER_START( 1943 )
MDRV_CPU_PROGRAM_MAP(sound_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 4)
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/1945kiii.c b/src/mame/drivers/1945kiii.c
index 081ea2646ee..1d156833697 100644
--- a/src/mame/drivers/1945kiii.c
+++ b/src/mame/drivers/1945kiii.c
@@ -260,12 +260,12 @@ static MACHINE_DRIVER_START( k3 )
MDRV_CPU_PROGRAM_MAP(k3_readmem,k3_writemem)
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(1945kiii)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
diff --git a/src/mame/drivers/2mindril.c b/src/mame/drivers/2mindril.c
index 56a59a5cb7d..048be701828 100644
--- a/src/mame/drivers/2mindril.c
+++ b/src/mame/drivers/2mindril.c
@@ -196,10 +196,11 @@ static MACHINE_DRIVER_START( drill )
MDRV_CPU_ADD_TAG("main", M68000, 16000000 )
MDRV_CPU_PROGRAM_MAP(drill_map,0)
MDRV_CPU_VBLANK_INT(drill_interrupt,1)
+ MDRV_GFXDECODE(2mindril)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MDRV_GFXDECODE(2mindril)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(128*16, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239-16)
diff --git a/src/mame/drivers/39in1.c b/src/mame/drivers/39in1.c
index 78ed217e408..471188b4a15 100644
--- a/src/mame/drivers/39in1.c
+++ b/src/mame/drivers/39in1.c
@@ -32,11 +32,10 @@ static MACHINE_DRIVER_START( 39in1 )
MDRV_CPU_ADD(ARM7, 200000000) // actually Xscale PXA255, but ARM7 is a compatible subset
MDRV_CPU_PROGRAM_MAP(39in1_map,0)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_PALETTE_LENGTH(32768)
- MDRV_SCREEN_ADD("main", 0) // htot hst vwid vtot vst vis
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(16777216/4, 308, 0, 240, 228, 0, 160) // completely bogus for this h/w
MDRV_VIDEO_START(generic_bitmapped)
diff --git a/src/mame/drivers/40love.c b/src/mame/drivers/40love.c
index 843b502e7eb..0feb952ee83 100644
--- a/src/mame/drivers/40love.c
+++ b/src/mame/drivers/40love.c
@@ -1108,13 +1108,13 @@ static MACHINE_DRIVER_START( 40love )
MDRV_CPU_ADD(M68705,18432000/6) /* OK */
MDRV_CPU_PROGRAM_MAP(mcu_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100) /* high interleave to ensure proper synchronization of CPUs */
MDRV_MACHINE_RESET(ta7630) /* init machine */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(128,128+255, 2*8, 30*8-1)
@@ -1155,12 +1155,12 @@ static MACHINE_DRIVER_START( undoukai )
// MDRV_CPU_ADD(M68705,18432000/6)
// MDRV_CPU_PROGRAM_MAP(mcu_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(ta7630) /* init machine */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(128,128+255, 2*8, 30*8-1)
diff --git a/src/mame/drivers/4enraya.c b/src/mame/drivers/4enraya.c
index 827200ceb0c..b4d92ca0b47 100644
--- a/src/mame/drivers/4enraya.c
+++ b/src/mame/drivers/4enraya.c
@@ -173,11 +173,10 @@ static MACHINE_DRIVER_START( 4enraya )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/8080bw.c b/src/mame/drivers/8080bw.c
index c4ce1202570..1f6b749a616 100644
--- a/src/mame/drivers/8080bw.c
+++ b/src/mame/drivers/8080bw.c
@@ -2406,6 +2406,7 @@ static MACHINE_DRIVER_START( shuttlei )
MDRV_CPU_IO_MAP(shuttlei_io_map,0)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
// MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 24*8-1)
MDRV_VIDEO_UPDATE(shuttlei)
diff --git a/src/mame/drivers/88games.c b/src/mame/drivers/88games.c
index 88e019489d9..6b51b4fb745 100644
--- a/src/mame/drivers/88games.c
+++ b/src/mame/drivers/88games.c
@@ -299,14 +299,15 @@ static MACHINE_DRIVER_START( 88games )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(88games)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 )
diff --git a/src/mame/drivers/ace.c b/src/mame/drivers/ace.c
index 4c6471901ef..61b905911c5 100644
--- a/src/mame/drivers/ace.c
+++ b/src/mame/drivers/ace.c
@@ -321,11 +321,10 @@ static MACHINE_DRIVER_START( ace )
MDRV_CPU_ADD(8080, 18000000 / 9) /* 2 MHz ? */
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(4*8, 32*8-1, 2*8, 32*8-1)
diff --git a/src/mame/drivers/acefruit.c b/src/mame/drivers/acefruit.c
index d410ca570dd..5d2a52150a3 100644
--- a/src/mame/drivers/acefruit.c
+++ b/src/mame/drivers/acefruit.c
@@ -551,11 +551,10 @@ static MACHINE_DRIVER_START( acefruit )
MDRV_GFXDECODE(acefruit)
MDRV_CPU_VBLANK_INT(acefruit_vblank,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 0, 255)
diff --git a/src/mame/drivers/acommand.c b/src/mame/drivers/acommand.c
index d814bcbc76c..420b03a061c 100644
--- a/src/mame/drivers/acommand.c
+++ b/src/mame/drivers/acommand.c
@@ -521,11 +521,10 @@ static MACHINE_DRIVER_START( acommand )
MDRV_CPU_PROGRAM_MAP(acommand,0)
MDRV_CPU_VBLANK_INT(acommand_irq,2)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/actfancr.c b/src/mame/drivers/actfancr.c
index a3028958246..bb772a889cf 100644
--- a/src/mame/drivers/actfancr.c
+++ b/src/mame/drivers/actfancr.c
@@ -383,11 +383,12 @@ static MACHINE_DRIVER_START( actfancr )
/* audio CPU */ /* Should be accurate */
MDRV_CPU_PROGRAM_MAP(dec0_s_readmem,dec0_s_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
@@ -426,11 +427,12 @@ static MACHINE_DRIVER_START( triothep )
/* audio CPU */ /* Should be accurate */
MDRV_CPU_PROGRAM_MAP(dec0_s_readmem,dec0_s_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
diff --git a/src/mame/drivers/adp.c b/src/mame/drivers/adp.c
index 869f9853a1f..d570cfa6211 100644
--- a/src/mame/drivers/adp.c
+++ b/src/mame/drivers/adp.c
@@ -158,10 +158,11 @@ INPUT_PORTS_END
static MACHINE_DRIVER_START( skattv )
MDRV_CPU_ADD_TAG("main", M68000, 8000000)
MDRV_CPU_PROGRAM_MAP(skattv_mem, 0)
+
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(640, 480)
MDRV_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
diff --git a/src/mame/drivers/aeroboto.c b/src/mame/drivers/aeroboto.c
index 4cfc2bd4cf3..dbeb6c3c5ef 100644
--- a/src/mame/drivers/aeroboto.c
+++ b/src/mame/drivers/aeroboto.c
@@ -255,16 +255,16 @@ static MACHINE_DRIVER_START( formatz )
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
- MDRV_GFXDECODE(aeroboto)
-
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 2*8, 30*8-1)
+
+ MDRV_GFXDECODE(aeroboto)
+
MDRV_PALETTE_LENGTH(256)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
diff --git a/src/mame/drivers/aerofgt.c b/src/mame/drivers/aerofgt.c
index f743dcc0334..b4c871259b0 100644
--- a/src/mame/drivers/aerofgt.c
+++ b/src/mame/drivers/aerofgt.c
@@ -1396,16 +1396,17 @@ static MACHINE_DRIVER_START( pspikes )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(turbofrc_sound_readport,turbofrc_sound_writeport)
/* IRQs are triggered by the YM2610 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(aerofgt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8+4, 44*8+4-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(pspikes)
MDRV_PALETTE_LENGTH(2048)
@@ -1432,11 +1433,10 @@ static MACHINE_DRIVER_START( pallavol )
/* + Z80 for sound */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8+4, 44*8+4-1, 0*8, 30*8-1)
@@ -1462,11 +1462,10 @@ static MACHINE_DRIVER_START( pspikesb )
MDRV_CPU_PROGRAM_MAP(pspikesb_map,0)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)/* all irq vectors are the same */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8+4, 44*8+4-1, 0*8, 30*8-1)
@@ -1491,11 +1490,10 @@ static MACHINE_DRIVER_START( pspikesc )
MDRV_CPU_PROGRAM_MAP(pspikesc_map,0)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)/* all irq vectors are the same */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8+4, 44*8+4-1, 0*8, 30*8-1)
@@ -1525,13 +1523,13 @@ static MACHINE_DRIVER_START( karatblz )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(turbofrc_sound_readport,turbofrc_sound_writeport)
/* IRQs are triggered by the YM2610 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(aerofgt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 45*8-1, 0*8, 30*8-1)
@@ -1564,13 +1562,13 @@ static MACHINE_DRIVER_START( spinlbrk )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(turbofrc_sound_readport,turbofrc_sound_writeport)
/* IRQs are triggered by the YM2610 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(aerofgt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 45*8-1, 0*8, 30*8-1)
@@ -1603,13 +1601,13 @@ static MACHINE_DRIVER_START( turbofrc )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(turbofrc_sound_readport,turbofrc_sound_writeport)
/* IRQs are triggered by the YM2610 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(aerofgt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 44*8-1, 0*8, 30*8-1)
@@ -1642,14 +1640,14 @@ static MACHINE_DRIVER_START( aerofgtb )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(aerofgt_sound_readport,aerofgt_sound_writeport)
/* IRQs are triggered by the YM2610 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(500))
- /* wrong but improves sprite-background synchronization */
MDRV_MACHINE_RESET(aerofgt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(500))
+ /* wrong but improves sprite-background synchronization */
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8+12, 40*8-1+12, 0*8, 28*8-1)
@@ -1682,14 +1680,14 @@ static MACHINE_DRIVER_START( aerofgt )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(aerofgt_sound_readport,aerofgt_sound_writeport)
/* IRQs are triggered by the YM2610 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(400))
- /* wrong but improves sprite-background synchronization */
MDRV_MACHINE_RESET(aerofgt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(400))
+ /* wrong but improves sprite-background synchronization */
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
@@ -1720,12 +1718,11 @@ static MACHINE_DRIVER_START( aerfboot )
MDRV_CPU_ADD(Z80,8000000/2) /* 4 MHz ??? */
MDRV_CPU_PROGRAM_MAP(aerfboot_snd_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(500))
/* wrong but improves sprite-background synchronization */
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8+12, 40*8-1+12, 0*8, 28*8-1)
@@ -1753,11 +1750,11 @@ static MACHINE_DRIVER_START( wbbc97 )
MDRV_CPU_ADD(Z80,8000000/2) /* 4 MHz ??? */
MDRV_CPU_PROGRAM_MAP(wbbc97_sound_map,0)
/* IRQs are triggered by the YM3812 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8+14, 44*8-1+4, 0*8, 30*8-1)
diff --git a/src/mame/drivers/airbustr.c b/src/mame/drivers/airbustr.c
index 415ed81c5fc..42e45f9d491 100644
--- a/src/mame/drivers/airbustr.c
+++ b/src/mame/drivers/airbustr.c
@@ -611,15 +611,16 @@ static MACHINE_DRIVER_START( airbustr )
MDRV_CPU_IO_MAP(sound_io_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1) // nmi are caused by sub cpu writing a sound command
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) // Palette RAM is filled by sub cpu with data supplied by main cpu
// Maybe a high value is safer in order to avoid glitches
MDRV_MACHINE_RESET(airbustr)
MDRV_WATCHDOG_TIME_INIT(ATTOTIME_IN_SEC(3)) /* a guess, and certainly wrong */
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/ajax.c b/src/mame/drivers/ajax.c
index 2fdb1030c0f..f4821c52e77 100644
--- a/src/mame/drivers/ajax.c
+++ b/src/mame/drivers/ajax.c
@@ -279,14 +279,16 @@ static MACHINE_DRIVER_START( ajax )
MDRV_CPU_ADD(Z80, 3579545) /* 3.58 MHz */
MDRV_CPU_PROGRAM_MAP(ajax_readmem_sound,ajax_writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(ajax)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
diff --git a/src/mame/drivers/aleck64.c b/src/mame/drivers/aleck64.c
index d3bdbd0fe47..db4b3af24a8 100644
--- a/src/mame/drivers/aleck64.c
+++ b/src/mame/drivers/aleck64.c
@@ -438,10 +438,9 @@ static MACHINE_DRIVER_START( aleck64 )
MDRV_MACHINE_RESET( aleck64 )
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(640, 525)
MDRV_SCREEN_VISIBLE_AREA(0, 639, 0, 239)
diff --git a/src/mame/drivers/alg.c b/src/mame/drivers/alg.c
index 54bcf7ad30c..eaf30b6b6d0 100644
--- a/src/mame/drivers/alg.c
+++ b/src/mame/drivers/alg.c
@@ -457,15 +457,16 @@ static MACHINE_DRIVER_START( alg_r1 )
MDRV_CPU_PROGRAM_MAP(main_map_r1,0)
MDRV_CPU_VBLANK_INT(amiga_scanline_callback, 262)
- MDRV_SCREEN_REFRESH_RATE(59.97)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(alg)
MDRV_MACHINE_RESET(alg)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_SELF_RENDER)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_SELF_RENDER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.97)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512*2, 262)
MDRV_SCREEN_VISIBLE_AREA((129-8)*2, (449+8-1)*2, 44-8, 244+8-1)
@@ -508,8 +509,8 @@ static MACHINE_DRIVER_START( picmatic )
MDRV_CPU_PROGRAM_MAP(main_map_picmatic,0)
MDRV_CPU_VBLANK_INT(amiga_scanline_callback, 312)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_REFRESH_RATE(50)
-
MDRV_SCREEN_SIZE(512*2, 312)
MDRV_SCREEN_VISIBLE_AREA((129-8)*2, (449+8-1)*2, 44-8, 300+8-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/aliens.c b/src/mame/drivers/aliens.c
index 039cebf3c4b..fdb5b2c5bc4 100644
--- a/src/mame/drivers/aliens.c
+++ b/src/mame/drivers/aliens.c
@@ -259,16 +259,18 @@ static MACHINE_DRIVER_START( aliens )
/* audio CPU */ /* ? */
MDRV_CPU_PROGRAM_MAP(aliens_readmem_sound,aliens_writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(aliens)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(512)
MDRV_VIDEO_START(aliens)
diff --git a/src/mame/drivers/alpha68k.c b/src/mame/drivers/alpha68k.c
index d454a5d2ddc..b8bd0824707 100644
--- a/src/mame/drivers/alpha68k.c
+++ b/src/mame/drivers/alpha68k.c
@@ -2067,13 +2067,13 @@ static MACHINE_DRIVER_START( sstingry )
MDRV_CPU_VBLANK_INT(irq0_line_hold, 2)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 4000)
//ZT
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(common)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -2117,13 +2117,13 @@ static MACHINE_DRIVER_START( kyros )
MDRV_CPU_VBLANK_INT(irq0_line_hold, 2)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 4000)
//ZT
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(common)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -2164,13 +2164,12 @@ static MACHINE_DRIVER_START( jongbou )
MDRV_CPU_IO_MAP(jongbou_sound_io_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 160) // guess, controls sound speed
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(common)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -2199,11 +2198,10 @@ static MACHINE_DRIVER_START( alpha68k_I )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(alpha68k_I_s_readmem, alpha68k_I_s_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -2235,13 +2233,12 @@ static MACHINE_DRIVER_START( alpha68k_II )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 7500) //AT
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(common)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -2285,13 +2282,12 @@ static MACHINE_DRIVER_START( alpha68k_II_gm )
MDRV_CPU_IO_MAP(sound_readport, sound_writeport)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 7500)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(common)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -2329,13 +2325,12 @@ static MACHINE_DRIVER_START( alpha68k_V )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 8500) //AT
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(common)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -2372,13 +2367,12 @@ static MACHINE_DRIVER_START( alpha68k_V_sb )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 8500) //AT
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(common)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -2414,13 +2408,12 @@ static MACHINE_DRIVER_START( tnexspce )
MDRV_CPU_PROGRAM_MAP(tnexspce_sound_readmem, tnexspce_sound_writemem)
MDRV_CPU_IO_MAP(tnexspce_sound_readport,tnexspce_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(tnexspce)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/ambush.c b/src/mame/drivers/ambush.c
index 2506f33e059..b8b370fee1f 100644
--- a/src/mame/drivers/ambush.c
+++ b/src/mame/drivers/ambush.c
@@ -188,11 +188,10 @@ static MACHINE_DRIVER_START( ambush )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-3) /* The -3 makes the cocktail mode perfect */
diff --git a/src/mame/drivers/amidar.c b/src/mame/drivers/amidar.c
index 8874fc967a1..73b3905f801 100644
--- a/src/mame/drivers/amidar.c
+++ b/src/mame/drivers/amidar.c
@@ -331,9 +331,6 @@ static MACHINE_DRIVER_START( amidar )
MDRV_CPU_ADD_TAG("main", Z80, 18432000/6) /* 3.072 MHz */
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
- MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_CPU_ADD(Z80,14318000/8)
/* audio CPU */ /* 1.78975 MHz */
MDRV_CPU_PROGRAM_MAP(amidar_sound_readmem,amidar_sound_writemem)
@@ -342,7 +339,9 @@ static MACHINE_DRIVER_START( amidar )
MDRV_MACHINE_RESET(scramble)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/ampoker2.c b/src/mame/drivers/ampoker2.c
index 318d1852c2c..dd5114a31db 100644
--- a/src/mame/drivers/ampoker2.c
+++ b/src/mame/drivers/ampoker2.c
@@ -862,14 +862,15 @@ static MACHINE_DRIVER_START( ampoker2 )
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 1536)
MDRV_WATCHDOG_TIME_INIT(ATTOTIME_IN_HZ( 5 )) /* 200 ms, measured */
//MDRV_WATCHDOG_VBLANK_INIT(8)
+
+ MDRV_NVRAM_HANDLER(generic_0fill)
+
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
/* if VBLANK is used, the watchdog timer stop to work.
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
*/
- MDRV_NVRAM_HANDLER(generic_0fill)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(20*8, 56*8-1, 2*8, 32*8-1)
diff --git a/src/mame/drivers/amspdwy.c b/src/mame/drivers/amspdwy.c
index 11f31be95b5..40672e158f8 100644
--- a/src/mame/drivers/amspdwy.c
+++ b/src/mame/drivers/amspdwy.c
@@ -279,11 +279,10 @@ static MACHINE_DRIVER_START( amspdwy )
MDRV_CPU_ADD(Z80,3000000) /* Can't be disabled: the YM2151 timers must work */
MDRV_CPU_PROGRAM_MAP(amspdwy_sound_readmem,amspdwy_sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
diff --git a/src/mame/drivers/angelkds.c b/src/mame/drivers/angelkds.c
index ee6b6439ac8..79ba4f1927f 100644
--- a/src/mame/drivers/angelkds.c
+++ b/src/mame/drivers/angelkds.c
@@ -625,12 +625,12 @@ static MACHINE_DRIVER_START( angelkds )
MDRV_CPU_PROGRAM_MAP(readmem_sub,writemem_sub)
MDRV_CPU_IO_MAP(readport_sub,writeport_sub)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
diff --git a/src/mame/drivers/appoooh.c b/src/mame/drivers/appoooh.c
index 927e2b55c8f..c15190b3af4 100644
--- a/src/mame/drivers/appoooh.c
+++ b/src/mame/drivers/appoooh.c
@@ -232,11 +232,10 @@ static MACHINE_DRIVER_START( appoooh )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -435,11 +434,10 @@ static MACHINE_DRIVER_START( robowres )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/aquarium.c b/src/mame/drivers/aquarium.c
index f78d05c1df0..cf2d30beaa4 100644
--- a/src/mame/drivers/aquarium.c
+++ b/src/mame/drivers/aquarium.c
@@ -377,15 +377,14 @@ static MACHINE_DRIVER_START( aquarium )
MDRV_CPU_PROGRAM_MAP(snd_readmem,snd_writemem)
MDRV_CPU_IO_MAP(snd_readport,snd_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
#if AQUARIUS_HACK
MDRV_MACHINE_RESET(aquarium)
#endif
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(2*8, 42*8-1, 2*8, 34*8-1)
diff --git a/src/mame/drivers/arabian.c b/src/mame/drivers/arabian.c
index 080e9a8bb62..ef869ce4fd7 100644
--- a/src/mame/drivers/arabian.c
+++ b/src/mame/drivers/arabian.c
@@ -355,11 +355,10 @@ static MACHINE_DRIVER_START( arabian )
MDRV_CPU_IO_MAP(main_io_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 11, 244)
diff --git a/src/mame/drivers/arcadecl.c b/src/mame/drivers/arcadecl.c
index 10ef3d4b237..97f750c5675 100644
--- a/src/mame/drivers/arcadecl.c
+++ b/src/mame/drivers/arcadecl.c
@@ -353,11 +353,11 @@ static MACHINE_DRIVER_START( arcadecl )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(arcadecl)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS-2 chip to generate video signals */
diff --git a/src/mame/drivers/arcadia.c b/src/mame/drivers/arcadia.c
index bc1eb029378..b9c225a4555 100644
--- a/src/mame/drivers/arcadia.c
+++ b/src/mame/drivers/arcadia.c
@@ -293,14 +293,15 @@ static MACHINE_DRIVER_START( arcadia )
MDRV_CPU_PROGRAM_MAP(amiga_map,0)
MDRV_CPU_VBLANK_INT(amiga_scanline_callback, 262)
- MDRV_SCREEN_REFRESH_RATE(59.997)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(amiga)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.997)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512*2, 262)
MDRV_SCREEN_VISIBLE_AREA((129-8)*2, (449+8-1)*2, 44-8, 244+8-1)
diff --git a/src/mame/drivers/argus.c b/src/mame/drivers/argus.c
index b1c341917f1..1344402d3af 100644
--- a/src/mame/drivers/argus.c
+++ b/src/mame/drivers/argus.c
@@ -780,12 +780,12 @@ static MACHINE_DRIVER_START( argus )
MDRV_CPU_PROGRAM_MAP(sound_readmem_a,sound_writemem_a)
MDRV_CPU_IO_MAP(sound_readport_1,sound_writeport_1)
- MDRV_SCREEN_REFRESH_RATE(54)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* This value is refered to psychic5 driver */)
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(54)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* This value is refered to psychic5 driver */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -818,12 +818,12 @@ static MACHINE_DRIVER_START( valtric )
MDRV_CPU_PROGRAM_MAP(sound_readmem_a,sound_writemem_a)
MDRV_CPU_IO_MAP(sound_readport_2,sound_writeport_2)
- MDRV_SCREEN_REFRESH_RATE(54)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* This value is refered to psychic5 driver */)
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(54)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* This value is refered to psychic5 driver */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -862,12 +862,12 @@ static MACHINE_DRIVER_START( butasan )
MDRV_CPU_PROGRAM_MAP(sound_readmem_b,sound_writemem_b)
MDRV_CPU_IO_MAP(sound_readport_2,sound_writeport_2)
- MDRV_SCREEN_REFRESH_RATE(54)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* This value is taken from psychic5 driver */)
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(54)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* This value is taken from psychic5 driver */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
@@ -906,12 +906,12 @@ static MACHINE_DRIVER_START( bombsa )
MDRV_CPU_PROGRAM_MAP(sound_readmem_b,sound_writemem_c)
MDRV_CPU_IO_MAP(sound_readport_2,sound_writeport_2)
- MDRV_SCREEN_REFRESH_RATE(54) /* Guru says : VSync - 54Hz . HSync - 15.25kHz */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(54) /* Guru says : VSync - 54Hz . HSync - 15.25kHz */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/arkanoid.c b/src/mame/drivers/arkanoid.c
index 8722ada92cc..0630ff8dcb2 100644
--- a/src/mame/drivers/arkanoid.c
+++ b/src/mame/drivers/arkanoid.c
@@ -751,15 +751,16 @@ static MACHINE_DRIVER_START( arkanoid )
MDRV_CPU_ADD_TAG("mcu", M68705, 3000000) /* 3 Mhz */
MDRV_CPU_PROGRAM_MAP(mcu_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) // 100 CPU slices per second to synchronize between the MCU and the main CPU
MDRV_MACHINE_START(arkanoid)
MDRV_MACHINE_RESET(arkanoid)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/armedf.c b/src/mame/drivers/armedf.c
index 1c5f8d05c3c..b07b34d53a7 100644
--- a/src/mame/drivers/armedf.c
+++ b/src/mame/drivers/armedf.c
@@ -770,11 +770,12 @@ static MACHINE_DRIVER_START( terraf )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,128)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 1*8, 31*8-1 )
@@ -811,11 +812,12 @@ static MACHINE_DRIVER_START( kodure )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,128)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
@@ -852,11 +854,12 @@ static MACHINE_DRIVER_START( armedf )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,128)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 1*8, 31*8-1 )
@@ -893,11 +896,12 @@ static MACHINE_DRIVER_START( cclimbr2 )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,128)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
@@ -934,11 +938,12 @@ static MACHINE_DRIVER_START( legion )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,128)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
@@ -975,11 +980,12 @@ static MACHINE_DRIVER_START( legiono )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,128)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
diff --git a/src/mame/drivers/artmagic.c b/src/mame/drivers/artmagic.c
index ee558e22421..6ae43675932 100644
--- a/src/mame/drivers/artmagic.c
+++ b/src/mame/drivers/artmagic.c
@@ -708,11 +708,10 @@ static MACHINE_DRIVER_START( artmagic )
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(artmagic)
MDRV_VIDEO_UPDATE(tms340x0)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK_40MHz/6, 428, 0, 320, 313, 0, 256)
diff --git a/src/mame/drivers/ashnojoe.c b/src/mame/drivers/ashnojoe.c
index a7e14dfb52e..8be2bbe0841 100644
--- a/src/mame/drivers/ashnojoe.c
+++ b/src/mame/drivers/ashnojoe.c
@@ -363,11 +363,10 @@ static MACHINE_DRIVER_START( ashnojoe )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(14*8, 50*8-1, 3*8, 29*8-1)
diff --git a/src/mame/drivers/asterix.c b/src/mame/drivers/asterix.c
index 55531f1c4ab..b157a7d2322 100644
--- a/src/mame/drivers/asterix.c
+++ b/src/mame/drivers/asterix.c
@@ -283,13 +283,14 @@ static MACHINE_DRIVER_START( asterix )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(asterix)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
diff --git a/src/mame/drivers/asteroid.c b/src/mame/drivers/asteroid.c
index 70380946dd0..fe93a496ed6 100644
--- a/src/mame/drivers/asteroid.c
+++ b/src/mame/drivers/asteroid.c
@@ -585,16 +585,14 @@ static MACHINE_DRIVER_START( asteroid )
MDRV_CPU_PROGRAM_MAP(asteroid_map,0)
MDRV_CPU_PERIODIC_INT(asteroid_interrupt, (double)MASTER_CLOCK/4096/12)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(asteroid)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(400,300)
MDRV_SCREEN_VISIBLE_AREA(522, 1566, 394, 1182)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(dvg)
@@ -645,9 +643,10 @@ static MACHINE_DRIVER_START( llander )
MDRV_CPU_PROGRAM_MAP(llander_map,0)
MDRV_CPU_PERIODIC_INT(llander_interrupt, (double)MASTER_CLOCK/4096/12)
- MDRV_SCREEN_REFRESH_RATE(40)
MDRV_MACHINE_RESET(avgdvg)
+ MDRV_SCREEN_MODIFY("main")
+ MDRV_SCREEN_REFRESH_RATE(40)
MDRV_SCREEN_VISIBLE_AREA(522, 1566, 270, 1070)
MDRV_VIDEO_START(dvg)
MDRV_VIDEO_UPDATE(vector)
diff --git a/src/mame/drivers/astinvad.c b/src/mame/drivers/astinvad.c
index 501e7611b86..dc1aafced09 100644
--- a/src/mame/drivers/astinvad.c
+++ b/src/mame/drivers/astinvad.c
@@ -505,10 +505,9 @@ static MACHINE_DRIVER_START( kamikaze )
MDRV_MACHINE_START(kamikaze)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(astinvad)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(VIDEO_CLOCK, 320, 0, 256, 256, 32, 256)
@@ -539,11 +538,10 @@ static MACHINE_DRIVER_START( spaceint )
MDRV_CPU_VBLANK_INT(spaceint_interrupt,1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(spaceint)
MDRV_VIDEO_UPDATE(spaceint)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
diff --git a/src/mame/drivers/astrocde.c b/src/mame/drivers/astrocde.c
index d17a3c123f1..7adcca22e09 100644
--- a/src/mame/drivers/astrocde.c
+++ b/src/mame/drivers/astrocde.c
@@ -1250,10 +1250,9 @@ static MACHINE_DRIVER_START( astrocade_base )
MDRV_MACHINE_START(astrocde)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(ASTROCADE_CLOCK, 455, 0, 352, 262, 0, 240)
MDRV_SCREEN_DEFAULT_POSITION(1.1, 0.0, 1.18, -0.018) /* clip out borders */
diff --git a/src/mame/drivers/astrof.c b/src/mame/drivers/astrof.c
index 24cb1fcaf33..b19a8f836ee 100644
--- a/src/mame/drivers/astrof.c
+++ b/src/mame/drivers/astrof.c
@@ -887,10 +887,9 @@ static MACHINE_DRIVER_START( base )
MDRV_MACHINE_RESET(astrof)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(astrof)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
diff --git a/src/mame/drivers/asuka.c b/src/mame/drivers/asuka.c
index ecb6f0e9de5..4218747371e 100644
--- a/src/mame/drivers/asuka.c
+++ b/src/mame/drivers/asuka.c
@@ -857,12 +857,12 @@ static MACHINE_DRIVER_START( bonzeadv )
MDRV_CPU_ADD(Z80,4000000) /* sound CPU, also required for test mode */
MDRV_CPU_PROGRAM_MAP(bonzeadv_z80_readmem,bonzeadv_z80_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 3*8, 31*8-1)
@@ -893,12 +893,12 @@ static MACHINE_DRIVER_START( asuka )
MDRV_CPU_ADD(Z80, XTAL_16MHz/4) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(z80_readmem,z80_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
@@ -932,12 +932,12 @@ static MACHINE_DRIVER_START( cadash )
MDRV_CPU_ADD(Z80, XTAL_8MHz/2) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(z80_readmem,cadash_z80_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
@@ -967,12 +967,12 @@ static MACHINE_DRIVER_START( mofflott )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz ??? */
MDRV_CPU_PROGRAM_MAP(z80_readmem,z80_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
@@ -1006,12 +1006,12 @@ static MACHINE_DRIVER_START( galmedes )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz ??? */
MDRV_CPU_PROGRAM_MAP(z80_readmem,cadash_z80_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
@@ -1041,12 +1041,12 @@ static MACHINE_DRIVER_START( eto )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz ??? */
MDRV_CPU_PROGRAM_MAP(z80_readmem,cadash_z80_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
diff --git a/src/mame/drivers/atarifb.c b/src/mame/drivers/atarifb.c
index f0c34931ff0..f2179e3cbdf 100644
--- a/src/mame/drivers/atarifb.c
+++ b/src/mame/drivers/atarifb.c
@@ -571,11 +571,10 @@ static MACHINE_DRIVER_START( atarifb )
MDRV_CPU_PROGRAM_MAP(atarifb_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2037) /* 16.3ms * 1/8 = 2037.5. Is it 1/8th or 3/32nds? (1528?) */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(38*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 38*8-1, 1*8, 31*8-1)
@@ -628,6 +627,7 @@ static MACHINE_DRIVER_START( soccer )
MDRV_CPU_PROGRAM_MAP(soccer_map,0)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0*8, 38*8-1, 2*8, 32*8-1)
MDRV_GFXDECODE(soccer)
MDRV_VIDEO_UPDATE(soccer)
diff --git a/src/mame/drivers/atarig1.c b/src/mame/drivers/atarig1.c
index 65c7d7c16bb..af41516bf5c 100644
--- a/src/mame/drivers/atarig1.c
+++ b/src/mame/drivers/atarig1.c
@@ -431,11 +431,11 @@ static MACHINE_DRIVER_START( atarig1 )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(atarig1)
MDRV_PALETTE_LENGTH(1280)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
MDRV_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
diff --git a/src/mame/drivers/atarig42.c b/src/mame/drivers/atarig42.c
index 558ea7761f0..9244f88b2b0 100644
--- a/src/mame/drivers/atarig42.c
+++ b/src/mame/drivers/atarig42.c
@@ -527,11 +527,11 @@ static MACHINE_DRIVER_START( atarig42 )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(atarig42)
MDRV_PALETTE_LENGTH(2048)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS chip to generate video signals */
diff --git a/src/mame/drivers/atarigt.c b/src/mame/drivers/atarigt.c
index 57bab6588ab..e7f79382e97 100644
--- a/src/mame/drivers/atarigt.c
+++ b/src/mame/drivers/atarigt.c
@@ -814,11 +814,11 @@ static MACHINE_DRIVER_START( atarigt )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(atarigt)
MDRV_PALETTE_LENGTH(32768)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
/* note: these parameters are from published specs, not derived */
/* the board uses a pair of GALs to determine H and V parameters */
diff --git a/src/mame/drivers/atarigx2.c b/src/mame/drivers/atarigx2.c
index 6bdcff11661..7d29905cce4 100644
--- a/src/mame/drivers/atarigx2.c
+++ b/src/mame/drivers/atarigx2.c
@@ -1439,11 +1439,11 @@ static MACHINE_DRIVER_START( atarigx2 )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(atarigx2)
MDRV_PALETTE_LENGTH(2048)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses a pair of GALs to determine H and V parameters */
diff --git a/src/mame/drivers/atarisy1.c b/src/mame/drivers/atarisy1.c
index 3692ae500ae..cd498bc49ec 100644
--- a/src/mame/drivers/atarisy1.c
+++ b/src/mame/drivers/atarisy1.c
@@ -749,11 +749,11 @@ static MACHINE_DRIVER_START( atarisy1 )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(atarisy1)
MDRV_PALETTE_LENGTH(1024)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* video timing comes from an 82S163 (H) and an 82S129 (V) */
diff --git a/src/mame/drivers/atarisy2.c b/src/mame/drivers/atarisy2.c
index 1e0dec46ae2..3e9736d9549 100644
--- a/src/mame/drivers/atarisy2.c
+++ b/src/mame/drivers/atarisy2.c
@@ -1364,11 +1364,11 @@ static MACHINE_DRIVER_START( atarisy2 )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(atarisy2)
MDRV_PALETTE_LENGTH(256)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(VIDEO_CLOCK/2, 640, 0, 512, 416, 0, 384)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
diff --git a/src/mame/drivers/atetris.c b/src/mame/drivers/atetris.c
index 68481df94d7..e4d90f2fd93 100644
--- a/src/mame/drivers/atetris.c
+++ b/src/mame/drivers/atetris.c
@@ -360,11 +360,10 @@ static MACHINE_DRIVER_START( atetris )
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(atetris)
MDRV_PALETTE_LENGTH(256)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS-2 chip to generate video signals */
@@ -392,18 +391,15 @@ static MACHINE_DRIVER_START( atetrsb2 )
MDRV_CPU_ADD(M6502,BOOTLEG_CLOCK/8)
MDRV_CPU_PROGRAM_MAP(atetrsb2_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_START(atetris)
MDRV_MACHINE_RESET(atetris)
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(atetris)
MDRV_PALETTE_LENGTH(256)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS-2 chip to generate video signals */
diff --git a/src/mame/drivers/attckufo.c b/src/mame/drivers/attckufo.c
index 3bc0647fae9..be2908d3897 100644
--- a/src/mame/drivers/attckufo.c
+++ b/src/mame/drivers/attckufo.c
@@ -131,15 +131,16 @@ static MACHINE_DRIVER_START( attckufo )
MDRV_CPU_ADD_TAG("main", M6502, 14318181/14)
MDRV_CPU_PROGRAM_MAP(cpu_map, 0)
MDRV_CPU_PERIODIC_INT(attckufo_raster_interrupt, 15625)
- MDRV_SCREEN_REFRESH_RATE(60)
-
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 23*8-1, 0, 22*8-1)
+
MDRV_PALETTE_LENGTH(ARRAY_LENGTH(attckufo_palette))
MDRV_PALETTE_INIT( attckufo )
diff --git a/src/mame/drivers/avalnche.c b/src/mame/drivers/avalnche.c
index 2f1a5be941f..f920c4f6fa7 100644
--- a/src/mame/drivers/avalnche.c
+++ b/src/mame/drivers/avalnche.c
@@ -237,14 +237,12 @@ static MACHINE_DRIVER_START( avalnche )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_VBLANK_INT(avalnche_interrupt,8)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(avalnche)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 32*8-1)
diff --git a/src/mame/drivers/aztarac.c b/src/mame/drivers/aztarac.c
index 3b2e7c0cd43..22df120aeb6 100644
--- a/src/mame/drivers/aztarac.c
+++ b/src/mame/drivers/aztarac.c
@@ -177,17 +177,15 @@ static MACHINE_DRIVER_START( aztarac )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_PERIODIC_INT(aztarac_snd_timed_irq, 100)
- MDRV_SCREEN_REFRESH_RATE(40)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(aztarac)
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(40)
MDRV_SCREEN_SIZE(400, 300)
MDRV_SCREEN_VISIBLE_AREA(0, 1024-1, 0, 768-1)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(aztarac)
diff --git a/src/mame/drivers/backfire.c b/src/mame/drivers/backfire.c
index 6d34475628b..38284eb7a06 100644
--- a/src/mame/drivers/backfire.c
+++ b/src/mame/drivers/backfire.c
@@ -491,24 +491,21 @@ static MACHINE_DRIVER_START( backfire )
MDRV_CPU_PROGRAM_MAP(backfire_map,0)
MDRV_CPU_VBLANK_INT(deco32_vbl_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(2048)
MDRV_GFXDECODE(backfire)
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/badlands.c b/src/mame/drivers/badlands.c
index f52602af032..2ab6d13e8b0 100644
--- a/src/mame/drivers/badlands.c
+++ b/src/mame/drivers/badlands.c
@@ -449,11 +449,11 @@ static MACHINE_DRIVER_START( badlands )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(badlands)
MDRV_PALETTE_LENGTH(256)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS-2 chip to generate video signals */
diff --git a/src/mame/drivers/bagman.c b/src/mame/drivers/bagman.c
index 1fbbfc6eaf5..873ec1f6eff 100644
--- a/src/mame/drivers/bagman.c
+++ b/src/mame/drivers/bagman.c
@@ -567,13 +567,12 @@ static MACHINE_DRIVER_START( bagman )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(bagman)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -604,13 +603,12 @@ static MACHINE_DRIVER_START( pickin )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(bagman)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -655,13 +653,12 @@ static MACHINE_DRIVER_START( botanic )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(bagman)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/balsente.c b/src/mame/drivers/balsente.c
index d8702e6e1c9..9d53097e28f 100644
--- a/src/mame/drivers/balsente.c
+++ b/src/mame/drivers/balsente.c
@@ -1683,7 +1683,9 @@ static MACHINE_DRIVER_START( balsente )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(BALSENTE_PIXEL_CLOCK, BALSENTE_HTOTAL, BALSENTE_HBEND, BALSENTE_HBSTART, BALSENTE_VTOTAL, BALSENTE_VBEND, BALSENTE_VBSTART)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/bankp.c b/src/mame/drivers/bankp.c
index 255ea17fd1c..724043d83fd 100644
--- a/src/mame/drivers/bankp.c
+++ b/src/mame/drivers/bankp.c
@@ -277,11 +277,10 @@ static MACHINE_DRIVER_START( bankp )
MDRV_CPU_IO_MAP(bankp_io_map, 0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(3*8, 31*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/baraduke.c b/src/mame/drivers/baraduke.c
index a3c70c0e793..2c1ac4bd254 100644
--- a/src/mame/drivers/baraduke.c
+++ b/src/mame/drivers/baraduke.c
@@ -445,12 +445,12 @@ static MACHINE_DRIVER_START( baraduke )
MDRV_CPU_IO_MAP(mcu_port_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* we need heavy synch */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/batman.c b/src/mame/drivers/batman.c
index b34e7d93dce..fe78bba9493 100644
--- a/src/mame/drivers/batman.c
+++ b/src/mame/drivers/batman.c
@@ -231,11 +231,11 @@ static MACHINE_DRIVER_START( batman )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(batman)
MDRV_PALETTE_LENGTH(2048)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses a VAD chip to generate video signals */
diff --git a/src/mame/drivers/battlane.c b/src/mame/drivers/battlane.c
index 4b367a63d9b..76547908684 100644
--- a/src/mame/drivers/battlane.c
+++ b/src/mame/drivers/battlane.c
@@ -263,12 +263,12 @@ static MACHINE_DRIVER_START( battlane )
MDRV_CPU_ADD(M6809, 1250000) /* 1.25 MHz ? */
MDRV_CPU_PROGRAM_MAP(battlane_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32 * 8, 32 * 8)
MDRV_SCREEN_VISIBLE_AREA(1 * 8, 31 * 8 - 1, 0 * 8, 32 * 8 - 1)
diff --git a/src/mame/drivers/battlera.c b/src/mame/drivers/battlera.c
index 153d893df9a..a06624da406 100644
--- a/src/mame/drivers/battlera.c
+++ b/src/mame/drivers/battlera.c
@@ -280,11 +280,10 @@ static MACHINE_DRIVER_START( battlera )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 30*8-1)
diff --git a/src/mame/drivers/battlex.c b/src/mame/drivers/battlex.c
index 251ee838c3f..a19c8f22acc 100644
--- a/src/mame/drivers/battlex.c
+++ b/src/mame/drivers/battlex.c
@@ -212,11 +212,10 @@ static MACHINE_DRIVER_START( battlex )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,8) /* controls game speed? */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(56) /* The video syncs at 15.8k H and 56 V (www.klov.com) */
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/battlnts.c b/src/mame/drivers/battlnts.c
index b0760233655..f9f2f9acf90 100644
--- a/src/mame/drivers/battlnts.c
+++ b/src/mame/drivers/battlnts.c
@@ -342,11 +342,10 @@ static MACHINE_DRIVER_START( battlnts )
/* audio CPU */ /* ? */
MDRV_CPU_PROGRAM_MAP(battlnts_readmem_sound,battlnts_writemem_sound)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/bbusters.c b/src/mame/drivers/bbusters.c
index 6eeb292d822..63128abe769 100644
--- a/src/mame/drivers/bbusters.c
+++ b/src/mame/drivers/bbusters.c
@@ -702,8 +702,6 @@ static MACHINE_DRIVER_START( bbusters )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
-
#if BBUSTERS_HACK
MDRV_MACHINE_RESET(bbusters)
#endif
@@ -711,7 +709,10 @@ static MACHINE_DRIVER_START( bbusters )
MDRV_NVRAM_HANDLER(bbusters)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -745,14 +746,15 @@ static MACHINE_DRIVER_START( mechatt )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sounda_readport,sounda_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
-
#if MECHATT_HACK
MDRV_MACHINE_RESET(mechatt)
#endif
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/beaminv.c b/src/mame/drivers/beaminv.c
index 52fe2fa81d4..e9288d6c625 100644
--- a/src/mame/drivers/beaminv.c
+++ b/src/mame/drivers/beaminv.c
@@ -324,10 +324,9 @@ static MACHINE_DRIVER_START( beaminv )
MDRV_MACHINE_RESET(beaminv)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(beaminv)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 247, 16, 231)
diff --git a/src/mame/drivers/beathead.c b/src/mame/drivers/beathead.c
index 243d1e69ee1..8710a9ce288 100644
--- a/src/mame/drivers/beathead.c
+++ b/src/mame/drivers/beathead.c
@@ -433,13 +433,14 @@ static MACHINE_DRIVER_START( beathead )
MDRV_CPU_ADD(ASAP, ATARI_CLOCK_14MHz)
MDRV_CPU_PROGRAM_MAP(main_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(beathead)
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(42*8, 262)
MDRV_SCREEN_VISIBLE_AREA(0*8, 42*8-1, 0*8, 30*8-1)
diff --git a/src/mame/drivers/beezer.c b/src/mame/drivers/beezer.c
index 0dd6bbe068b..6a5a5362e05 100644
--- a/src/mame/drivers/beezer.c
+++ b/src/mame/drivers/beezer.c
@@ -97,11 +97,10 @@ static MACHINE_DRIVER_START( beezer )
MDRV_CPU_ADD(M6809, 1000000) /* 1 MHz */
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 384)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 303)
diff --git a/src/mame/drivers/berzerk.c b/src/mame/drivers/berzerk.c
index 6974d0b5602..5b2561d06a3 100644
--- a/src/mame/drivers/berzerk.c
+++ b/src/mame/drivers/berzerk.c
@@ -871,11 +871,10 @@ static MACHINE_DRIVER_START( berzerk )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(berzerk)
MDRV_VIDEO_UPDATE(berzerk)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
diff --git a/src/mame/drivers/bestleag.c b/src/mame/drivers/bestleag.c
index 566bbfc6896..1f5b2917475 100644
--- a/src/mame/drivers/bestleag.c
+++ b/src/mame/drivers/bestleag.c
@@ -317,10 +317,10 @@ static MACHINE_DRIVER_START( bestleag )
MDRV_CPU_PROGRAM_MAP(bestleag_map,0)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/bfcobra.c b/src/mame/drivers/bfcobra.c
index 96eb1ec25d9..99162035bac 100644
--- a/src/mame/drivers/bfcobra.c
+++ b/src/mame/drivers/bfcobra.c
@@ -1508,6 +1508,7 @@ static MACHINE_DRIVER_START( bfcobra )
MDRV_MACHINE_RESET(bfcobra)
/* TODO */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
diff --git a/src/mame/drivers/bfm_sc2.c b/src/mame/drivers/bfm_sc2.c
index b755aecfbb6..213943e93f3 100644
--- a/src/mame/drivers/bfm_sc2.c
+++ b/src/mame/drivers/bfm_sc2.c
@@ -2984,8 +2984,7 @@ static MACHINE_DRIVER_START( scorpion2_vid )
MDRV_NVRAM_HANDLER(bfm_sc2)
MDRV_DEFAULT_LAYOUT(layout_bfm_sc2)
- MDRV_SCREEN_ADD("ADDER", 0x000)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("ADDER", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE( 400, 280)
MDRV_SCREEN_VISIBLE_AREA( 0, 400-1, 0, 280-1)
diff --git a/src/mame/drivers/bigevglf.c b/src/mame/drivers/bigevglf.c
index a9de648d40f..de18cd838a0 100644
--- a/src/mame/drivers/bigevglf.c
+++ b/src/mame/drivers/bigevglf.c
@@ -496,13 +496,13 @@ static MACHINE_DRIVER_START( bigevglf )
MDRV_CPU_ADD(M68705,2000000) /* ??? */
MDRV_CPU_PROGRAM_MAP(m68705_readmem,m68705_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - interleaving is forced on the fly */
MDRV_MACHINE_RESET(bigevglf)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/bigfghtr.c b/src/mame/drivers/bigfghtr.c
index 9e950ee9ab0..db82dfb0f15 100644
--- a/src/mame/drivers/bigfghtr.c
+++ b/src/mame/drivers/bigfghtr.c
@@ -429,11 +429,12 @@ static MACHINE_DRIVER_START( bigfghtr )
MDRV_CPU_IO_MAP(soundport,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,128)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 1*8, 31*8-1 )
diff --git a/src/mame/drivers/bigstrkb.c b/src/mame/drivers/bigstrkb.c
index c06aae4b518..8f7b29b509c 100644
--- a/src/mame/drivers/bigstrkb.c
+++ b/src/mame/drivers/bigstrkb.c
@@ -226,12 +226,11 @@ static MACHINE_DRIVER_START( bigstrkb )
MDRV_CPU_PROGRAM_MAP(bigstrkb_readmem,bigstrkb_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(bigstrkb)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/bionicc.c b/src/mame/drivers/bionicc.c
index d0e16c2d8de..71b2def4940 100644
--- a/src/mame/drivers/bionicc.c
+++ b/src/mame/drivers/bionicc.c
@@ -352,11 +352,12 @@ static MACHINE_DRIVER_START( bionicc )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,4) /* ??? */
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/bishi.c b/src/mame/drivers/bishi.c
index 4a22ba4b47b..93d0678a949 100644
--- a/src/mame/drivers/bishi.c
+++ b/src/mame/drivers/bishi.c
@@ -270,14 +270,15 @@ static MACHINE_DRIVER_START( bishi )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(bishi_interrupt, 2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1200))
-
MDRV_MACHINE_START(bishi)
MDRV_MACHINE_RESET(bishi)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1200))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(29, 29+288-1, 16, 16+224-1)
diff --git a/src/mame/drivers/bishjan.c b/src/mame/drivers/bishjan.c
index bc5c7703d51..a6a75f5b37b 100644
--- a/src/mame/drivers/bishjan.c
+++ b/src/mame/drivers/bishjan.c
@@ -447,13 +447,14 @@ static MACHINE_DRIVER_START( bishjan )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES( VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE( 512, 256 )
MDRV_SCREEN_VISIBLE_AREA( 0, 512-1, 0, 256-16-1 )
+ MDRV_SCREEN_REFRESH_RATE( 60 )
+
MDRV_GFXDECODE(bishjan)
MDRV_PALETTE_LENGTH( 256 )
- MDRV_SCREEN_REFRESH_RATE( 60 )
MDRV_VIDEO_START( bishjan )
MDRV_VIDEO_UPDATE( bishjan )
diff --git a/src/mame/drivers/bking.c b/src/mame/drivers/bking.c
index e6bb11786a0..ca9a489c087 100644
--- a/src/mame/drivers/bking.c
+++ b/src/mame/drivers/bking.c
@@ -455,11 +455,10 @@ static MACHINE_DRIVER_START( bking )
/* - periodic IRQ, with frequency 6000000/(4*16*16*10*16) = 36.621 Hz, */
MDRV_CPU_PERIODIC_INT(irq0_line_hold, (double)6000000/(4*16*16*10*16))
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/bladestl.c b/src/mame/drivers/bladestl.c
index f449c84c3cb..45036a80735 100644
--- a/src/mame/drivers/bladestl.c
+++ b/src/mame/drivers/bladestl.c
@@ -440,15 +440,16 @@ static MACHINE_DRIVER_START( bladestl )
/* audio CPU */ /* ? */
MDRV_CPU_PROGRAM_MAP(bladestl_readmem_sound,bladestl_writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(bladestl)
MDRV_PALETTE_INIT(bladestl)
MDRV_PALETTE_LENGTH(32 + 16*16)
diff --git a/src/mame/drivers/blktiger.c b/src/mame/drivers/blktiger.c
index e04e173d635..a0955af1798 100644
--- a/src/mame/drivers/blktiger.c
+++ b/src/mame/drivers/blktiger.c
@@ -261,15 +261,18 @@ static MACHINE_DRIVER_START( blktiger )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_mem_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_START(blktiger)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(blktiger)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/blmbycar.c b/src/mame/drivers/blmbycar.c
index 19d03d5411f..416dc520160 100644
--- a/src/mame/drivers/blmbycar.c
+++ b/src/mame/drivers/blmbycar.c
@@ -388,14 +388,14 @@ static MACHINE_DRIVER_START( blmbycar )
MDRV_CPU_PROGRAM_MAP(blmbycar_readmem,blmbycar_writemem)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x180, 0x100)
MDRV_SCREEN_VISIBLE_AREA(0, 0x180-1, 0, 0x100-1)
+
MDRV_GFXDECODE(blmbycar)
MDRV_PALETTE_LENGTH(0x300)
@@ -418,14 +418,14 @@ static MACHINE_DRIVER_START( watrball )
MDRV_CPU_PROGRAM_MAP(watrball_readmem,watrball_writemem)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x180, 0x100)
MDRV_SCREEN_VISIBLE_AREA(0, 0x180-1, 16, 0x100-1)
+
MDRV_GFXDECODE(blmbycar)
MDRV_PALETTE_LENGTH(0x300)
diff --git a/src/mame/drivers/blockade.c b/src/mame/drivers/blockade.c
index ce343bf0ac7..59940ae58c1 100644
--- a/src/mame/drivers/blockade.c
+++ b/src/mame/drivers/blockade.c
@@ -460,14 +460,14 @@ static MACHINE_DRIVER_START( blockade )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(blockade_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(blockade)
MDRV_PALETTE_LENGTH(2)
diff --git a/src/mame/drivers/blockhl.c b/src/mame/drivers/blockhl.c
index 8fa60e7ab38..1539c82ccf9 100644
--- a/src/mame/drivers/blockhl.c
+++ b/src/mame/drivers/blockhl.c
@@ -228,15 +228,18 @@ static MACHINE_DRIVER_START( blockhl )
/* audio CPU */ /* ? */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(blockhl)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(1024)
MDRV_VIDEO_START(blockhl)
diff --git a/src/mame/drivers/blockout.c b/src/mame/drivers/blockout.c
index 3ac980e29c1..a7b737cfb05 100644
--- a/src/mame/drivers/blockout.c
+++ b/src/mame/drivers/blockout.c
@@ -324,14 +324,14 @@ static MACHINE_DRIVER_START( blockout )
/* audio CPU */ /* 3.579545 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 8, 247)
+
MDRV_PALETTE_LENGTH(513)
MDRV_VIDEO_START(blockout)
diff --git a/src/mame/drivers/bloodbro.c b/src/mame/drivers/bloodbro.c
index 67af37e80c9..5f80c6f34c4 100644
--- a/src/mame/drivers/bloodbro.c
+++ b/src/mame/drivers/bloodbro.c
@@ -532,16 +532,17 @@ static MACHINE_DRIVER_START( bloodbro )
SEIBU_SOUND_SYSTEM_CPU(XTAL_7_15909MHz/2) /* verified on pcb */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(seibu_sound_1)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(bloodbro)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/blstroid.c b/src/mame/drivers/blstroid.c
index bc9a92a2886..1aa97009538 100644
--- a/src/mame/drivers/blstroid.c
+++ b/src/mame/drivers/blstroid.c
@@ -203,11 +203,11 @@ static MACHINE_DRIVER_START( blstroid )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(blstroid)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS-2 chip to generate video signals */
diff --git a/src/mame/drivers/blueprnt.c b/src/mame/drivers/blueprnt.c
index ca7103b9534..db9e915dca9 100644
--- a/src/mame/drivers/blueprnt.c
+++ b/src/mame/drivers/blueprnt.c
@@ -303,14 +303,15 @@ static MACHINE_DRIVER_START( blueprnt )
MDRV_CPU_PROGRAM_MAP(sound_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 4) // IRQs connected to 32V
// NMIs are caused by the main CPU
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(blueprnt)
MDRV_PALETTE_LENGTH(128*4+8)
diff --git a/src/mame/drivers/bmcbowl.c b/src/mame/drivers/bmcbowl.c
index d120a0b1cc2..810f4b22709 100644
--- a/src/mame/drivers/bmcbowl.c
+++ b/src/mame/drivers/bmcbowl.c
@@ -496,13 +496,15 @@ static MACHINE_DRIVER_START( bmcbowl )
MDRV_CPU_ADD_TAG("main", M68000, 21477270/2 )
MDRV_CPU_PROGRAM_MAP(bmcbowl_mem,0)
MDRV_CPU_VBLANK_INT(bmc_interrupt,2)
+
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(35*8, 30*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 35*8-1, 0*8, 29*8-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(bmcbowl)
diff --git a/src/mame/drivers/bnstars.c b/src/mame/drivers/bnstars.c
index af58fe7570c..e440d0ea831 100644
--- a/src/mame/drivers/bnstars.c
+++ b/src/mame/drivers/bnstars.c
@@ -1348,20 +1348,19 @@ static MACHINE_DRIVER_START( bnstars )
MDRV_MACHINE_RESET(ms32)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(bnstars)
MDRV_PALETTE_LENGTH(0x8000*2)
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(40*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/bogeyman.c b/src/mame/drivers/bogeyman.c
index 72074361086..10818f1db84 100644
--- a/src/mame/drivers/bogeyman.c
+++ b/src/mame/drivers/bogeyman.c
@@ -229,11 +229,12 @@ static MACHINE_DRIVER_START( bogeyman )
MDRV_CPU_PROGRAM_MAP(bogeyman_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 16) // Controls sound
+ // video hardware
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
diff --git a/src/mame/drivers/bombjack.c b/src/mame/drivers/bombjack.c
index 7726e50a2c4..fc22a5e739c 100644
--- a/src/mame/drivers/bombjack.c
+++ b/src/mame/drivers/bombjack.c
@@ -343,14 +343,14 @@ static MACHINE_DRIVER_START( bombjack )
MDRV_MACHINE_START(bombjack)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(bombjack)
MDRV_PALETTE_LENGTH(128)
diff --git a/src/mame/drivers/boogwing.c b/src/mame/drivers/boogwing.c
index 287ee8bbd52..eb61cb8dbb8 100644
--- a/src/mame/drivers/boogwing.c
+++ b/src/mame/drivers/boogwing.c
@@ -310,11 +310,12 @@ static MACHINE_DRIVER_START( boogwing )
MDRV_CPU_ADD(H6280,32220000/4)
MDRV_CPU_PROGRAM_MAP(sound_readmem, sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM )
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
diff --git a/src/mame/drivers/bottom9.c b/src/mame/drivers/bottom9.c
index 91b28b00f94..9eaeb66316d 100644
--- a/src/mame/drivers/bottom9.c
+++ b/src/mame/drivers/bottom9.c
@@ -410,14 +410,16 @@ static MACHINE_DRIVER_START( bottom9 )
MDRV_CPU_PROGRAM_MAP(bottom9_sound_readmem,bottom9_sound_writemem)
MDRV_CPU_VBLANK_INT(bottom9_sound_interrupt,8) /* irq is triggered by the main CPU */
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(1024)
MDRV_VIDEO_START(bottom9)
diff --git a/src/mame/drivers/boxer.c b/src/mame/drivers/boxer.c
index 87466c75b69..ad5577053a6 100644
--- a/src/mame/drivers/boxer.c
+++ b/src/mame/drivers/boxer.c
@@ -301,15 +301,16 @@ static MACHINE_DRIVER_START(boxer)
MDRV_CPU_ADD(M6502, 12096000 / 16)
MDRV_CPU_PROGRAM_MAP(boxer_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
MDRV_MACHINE_RESET(boxer)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 262)
MDRV_SCREEN_VISIBLE_AREA(8, 247, 0, 239)
+
MDRV_GFXDECODE(boxer)
MDRV_PALETTE_LENGTH(4)
MDRV_PALETTE_INIT(boxer)
diff --git a/src/mame/drivers/brkthru.c b/src/mame/drivers/brkthru.c
index 299ec2d09e6..8fe4167d925 100644
--- a/src/mame/drivers/brkthru.c
+++ b/src/mame/drivers/brkthru.c
@@ -408,12 +408,11 @@ static MACHINE_DRIVER_START( brkthru )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(brkthru)
MDRV_PALETTE_LENGTH(256)
/* not sure; assuming to be the same as darwin */
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/2, 384, 8, 248, 272, 8, 248)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -447,11 +446,10 @@ static MACHINE_DRIVER_START( darwin )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(brkthru)
MDRV_PALETTE_LENGTH(256)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/2, 384, 8, 248, 272, 8, 248)
/* frames per second, vblank duration
Horizontal video frequency:
diff --git a/src/mame/drivers/bsktball.c b/src/mame/drivers/bsktball.c
index f4b04dfef54..2271570e282 100644
--- a/src/mame/drivers/bsktball.c
+++ b/src/mame/drivers/bsktball.c
@@ -212,14 +212,14 @@ static MACHINE_DRIVER_START( bsktball )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_VBLANK_INT(bsktball_interrupt,8)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(bsktball)
MDRV_PALETTE_LENGTH(2*4 + 4*4*4*4)
diff --git a/src/mame/drivers/btime.c b/src/mame/drivers/btime.c
index b44a5bc5b5c..d45896a3d98 100644
--- a/src/mame/drivers/btime.c
+++ b/src/mame/drivers/btime.c
@@ -1303,14 +1303,14 @@ static MACHINE_DRIVER_START( btime )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,16)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(3072))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(btime)
MDRV_PALETTE_LENGTH(16)
diff --git a/src/mame/drivers/btoads.c b/src/mame/drivers/btoads.c
index ecb25bc8176..82b854e956a 100644
--- a/src/mame/drivers/btoads.c
+++ b/src/mame/drivers/btoads.c
@@ -352,11 +352,10 @@ static MACHINE_DRIVER_START( btoads )
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(btoads)
MDRV_VIDEO_UPDATE(tms340x0)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(VIDEO_CLOCK/2, 640, 0, 512, 257, 0, 224)
diff --git a/src/mame/drivers/bublbobl.c b/src/mame/drivers/bublbobl.c
index 92bbc706915..72fb532a138 100644
--- a/src/mame/drivers/bublbobl.c
+++ b/src/mame/drivers/bublbobl.c
@@ -746,15 +746,17 @@ static MACHINE_DRIVER_START( tokio )
/* audio CPU */ // 3 MHz
MDRV_CPU_PROGRAM_MAP(tokio_sound_map, 0) // NMIs are triggered by the main CPU, IRQs are triggered by the YM2203
- MDRV_SCREEN_REFRESH_RATE(VSYNC) // 59.185606 Hz
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(VBLANK)) // 2560 us
MDRV_INTERLEAVE(100) // 100 CPU slices per frame - a high value to ensure proper synchronization of the CPUs
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(VSYNC) // 59.185606 Hz
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(VBLANK)) // 2560 us
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(bublbobl)
MDRV_PALETTE_LENGTH(256)
@@ -789,15 +791,17 @@ static MACHINE_DRIVER_START( bublbobl )
MDRV_CPU_PROGRAM_MAP(mcu_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_pulse, 1) // comes from the same clock that latches the INT pin on the second Z80
- MDRV_SCREEN_REFRESH_RATE(VSYNC) // 59.185606 Hz
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(VBLANK)) // 2560 us
MDRV_INTERLEAVE(100) // 100 CPU slices per frame - a high value to ensure proper synchronization of the CPUs
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(VSYNC) // 59.185606 Hz
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(VBLANK)) // 2560 us
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(bublbobl)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/buggychl.c b/src/mame/drivers/buggychl.c
index ec7cb873e72..de2619f36f4 100644
--- a/src/mame/drivers/buggychl.c
+++ b/src/mame/drivers/buggychl.c
@@ -443,14 +443,14 @@ static MACHINE_DRIVER_START( buggychl )
MDRV_CPU_ADD(M68705,8000000/2) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(mcu_readmem,mcu_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(buggychl)
MDRV_PALETTE_LENGTH(128+128)
diff --git a/src/mame/drivers/bwidow.c b/src/mame/drivers/bwidow.c
index e7e1c8a93f4..00ea4c8685d 100644
--- a/src/mame/drivers/bwidow.c
+++ b/src/mame/drivers/bwidow.c
@@ -688,16 +688,14 @@ static MACHINE_DRIVER_START( bwidow )
MDRV_CPU_PROGRAM_MAP(bwidow_map,0)
MDRV_CPU_PERIODIC_INT(irq0_line_assert, (double)MASTER_CLOCK / 4096 / 12)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(atari_vg)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(400, 300)
MDRV_SCREEN_VISIBLE_AREA(0, 480, 0, 440)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(avg)
@@ -722,6 +720,7 @@ static MACHINE_DRIVER_START( gravitar )
MDRV_IMPORT_FROM(bwidow)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 420, 0, 400)
MACHINE_DRIVER_END
@@ -733,9 +732,9 @@ static MACHINE_DRIVER_START( lunarbat )
MDRV_CPU_MODIFY("main")
MDRV_CPU_PROGRAM_MAP(spacduel_map,0)
- MDRV_SCREEN_REFRESH_RATE(45)
-
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
+ MDRV_SCREEN_REFRESH_RATE(45)
MDRV_SCREEN_VISIBLE_AREA(0, 500, 0, 440)
MACHINE_DRIVER_END
@@ -747,9 +746,9 @@ static MACHINE_DRIVER_START( spacduel )
MDRV_CPU_MODIFY("main")
MDRV_CPU_PROGRAM_MAP(spacduel_map,0)
- MDRV_SCREEN_REFRESH_RATE(45)
-
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
+ MDRV_SCREEN_REFRESH_RATE(45)
MDRV_SCREEN_VISIBLE_AREA(0, 540, 0, 400)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/bwing.c b/src/mame/drivers/bwing.c
index 06eb6ac374e..21fd1721d6d 100644
--- a/src/mame/drivers/bwing.c
+++ b/src/mame/drivers/bwing.c
@@ -404,18 +404,21 @@ static MACHINE_DRIVER_START( bwing )
MDRV_CPU_IO_MAP(bwp3_readport, bwp3_writeport)
MDRV_CPU_PERIODIC_INT(bwp3_interrupt, 1000)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600)) // must be long enough for polling
MDRV_INTERLEAVE(300) // high enough?
MDRV_MACHINE_RESET(bwing)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600)) // must be long enough for polling
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
- MDRV_GFXDECODE(bwing)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
+ MDRV_GFXDECODE(bwing)
MDRV_PALETTE_LENGTH(64)
MDRV_VIDEO_START(bwing)
diff --git a/src/mame/drivers/bzone.c b/src/mame/drivers/bzone.c
index 1c395cf0016..33a3c3dfdf9 100644
--- a/src/mame/drivers/bzone.c
+++ b/src/mame/drivers/bzone.c
@@ -579,16 +579,14 @@ static MACHINE_DRIVER_START( bzone )
MDRV_CPU_PROGRAM_MAP(bzone_map,0)
MDRV_CPU_PERIODIC_INT(bzone_interrupt, (double)MASTER_CLOCK / 4096 / 12)
- MDRV_SCREEN_REFRESH_RATE(40)
- MDRV_SCREEN_VBLANK_TIME(0)
-
MDRV_MACHINE_START(bzone)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(40)
MDRV_SCREEN_SIZE(400, 300)
MDRV_SCREEN_VISIBLE_AREA(0, 580, 0, 400)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(avg_bzone)
@@ -629,10 +627,11 @@ static MACHINE_DRIVER_START( redbaron )
MDRV_MACHINE_START(redbaron)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_NVRAM_HANDLER(atari_vg)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VISIBLE_AREA(0, 520, 0, 400)
MDRV_VIDEO_START(avg_bzone)
diff --git a/src/mame/drivers/cabal.c b/src/mame/drivers/cabal.c
index f701f87fa56..35fa7c4b3e9 100644
--- a/src/mame/drivers/cabal.c
+++ b/src/mame/drivers/cabal.c
@@ -546,16 +546,16 @@ static MACHINE_DRIVER_START( cabal )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(cabal)
MDRV_PALETTE_LENGTH(1024)
@@ -601,17 +601,18 @@ static MACHINE_DRIVER_START( cabalbl )
MDRV_CPU_IO_MAP(cabalbl_talk2_portmap,0)
MDRV_CPU_PERIODIC_INT(irq0_line_hold,8000)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(cabalbl)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(cabal)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/calorie.c b/src/mame/drivers/calorie.c
index 315320b5785..fd7b5860907 100644
--- a/src/mame/drivers/calorie.c
+++ b/src/mame/drivers/calorie.c
@@ -369,14 +369,14 @@ static MACHINE_DRIVER_START( calorie )
MDRV_CPU_IO_MAP(calorie_sound_io_map,0)
MDRV_CPU_PERIODIC_INT(irq0_line_hold, 64)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
+
MDRV_GFXDECODE(calorie)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/canyon.c b/src/mame/drivers/canyon.c
index 62d76ed33a2..23e7692e02e 100644
--- a/src/mame/drivers/canyon.c
+++ b/src/mame/drivers/canyon.c
@@ -240,14 +240,14 @@ static MACHINE_DRIVER_START( canyon )
MDRV_CPU_VBLANK_INT(nmi_line_pulse, 1)
MDRV_WATCHDOG_VBLANK_INIT(8)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(22 * 1000000 / 15750))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
+
MDRV_GFXDECODE(canyon)
MDRV_PALETTE_LENGTH(4)
diff --git a/src/mame/drivers/capbowl.c b/src/mame/drivers/capbowl.c
index 12887383fa9..8c30f6fbb57 100644
--- a/src/mame/drivers/capbowl.c
+++ b/src/mame/drivers/capbowl.c
@@ -362,10 +362,10 @@ static MACHINE_DRIVER_START( capbowl )
MDRV_NVRAM_HANDLER(capbowl)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(capbowl)
MDRV_VIDEO_UPDATE(capbowl)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(360, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 359, 0, 244)
@@ -395,6 +395,7 @@ static MACHINE_DRIVER_START( bowlrama )
MDRV_CPU_PROGRAM_MAP(bowlrama_map,0)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 359, 0, 239)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/cardline.c b/src/mame/drivers/cardline.c
index 150d784f5a4..040eb8bfa26 100644
--- a/src/mame/drivers/cardline.c
+++ b/src/mame/drivers/cardline.c
@@ -199,14 +199,14 @@ static MACHINE_DRIVER_START( cardline )
MDRV_CPU_DATA_MAP(mem_data,0)
MDRV_CPU_IO_MAP(mem_io,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 35*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(cardline)
MDRV_PALETTE_LENGTH(512)
MDRV_PALETTE_INIT(cardline)
diff --git a/src/mame/drivers/carjmbre.c b/src/mame/drivers/carjmbre.c
index d671972133c..b4f80a567f6 100644
--- a/src/mame/drivers/carjmbre.c
+++ b/src/mame/drivers/carjmbre.c
@@ -194,14 +194,14 @@ static MACHINE_DRIVER_START( carjmbre )
MDRV_CPU_IO_MAP(carjmbre_sound_readport,carjmbre_sound_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(carjmbre)
MDRV_PALETTE_LENGTH(64)
diff --git a/src/mame/drivers/carpolo.c b/src/mame/drivers/carpolo.c
index 083313c7140..c6ff6760889 100644
--- a/src/mame/drivers/carpolo.c
+++ b/src/mame/drivers/carpolo.c
@@ -241,17 +241,17 @@ static MACHINE_DRIVER_START( carpolo )
MDRV_CPU_VBLANK_INT(carpolo_timer_interrupt,1) /* this not strictly VBLANK,
but it's supposed to happen 60
times a sec, so it's a good place */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_START(carpolo)
MDRV_MACHINE_RESET(carpolo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 239, 0, 255)
+
MDRV_GFXDECODE(carpolo)
MDRV_PALETTE_LENGTH(12*2+2*16+4*2)
diff --git a/src/mame/drivers/carrera.c b/src/mame/drivers/carrera.c
index 1a3ea0e1113..cafcbfd78e7 100644
--- a/src/mame/drivers/carrera.c
+++ b/src/mame/drivers/carrera.c
@@ -309,21 +309,21 @@ static MACHINE_DRIVER_START( carrera )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
+
MDRV_GFXDECODE(carrera)
MDRV_PALETTE_LENGTH(32)
MDRV_PALETTE_INIT(carrera)
MDRV_VIDEO_START(carrera)
MDRV_VIDEO_UPDATE(carrera)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
diff --git a/src/mame/drivers/cave.c b/src/mame/drivers/cave.c
index 4cad2fcbdcc..889d42c805c 100644
--- a/src/mame/drivers/cave.c
+++ b/src/mame/drivers/cave.c
@@ -2020,17 +2020,17 @@ static MACHINE_DRIVER_START( dfeveron )
MDRV_CPU_PROGRAM_MAP(dfeveron_readmem,dfeveron_writemem)
MDRV_CPU_VBLANK_INT(cave_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(cave)
MDRV_NVRAM_HANDLER(cave)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
+
MDRV_GFXDECODE(dfeveron)
MDRV_PALETTE_LENGTH(0x8000) /* $8000 palette entries for consistency with the other games */
@@ -2059,17 +2059,17 @@ static MACHINE_DRIVER_START( ddonpach )
MDRV_CPU_PROGRAM_MAP(ddonpach_readmem,ddonpach_writemem)
MDRV_CPU_VBLANK_INT(cave_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(cave)
MDRV_NVRAM_HANDLER(cave)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
+
MDRV_GFXDECODE(ddonpach)
MDRV_PALETTE_LENGTH(0x8000 + 0x40*16) // $400 extra entries for layers 1&2
@@ -2098,17 +2098,17 @@ static MACHINE_DRIVER_START( donpachi )
MDRV_CPU_PROGRAM_MAP(donpachi_readmem,donpachi_writemem)
MDRV_CPU_VBLANK_INT(cave_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(cave)
MDRV_NVRAM_HANDLER(cave)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
+
MDRV_GFXDECODE(donpachi)
MDRV_PALETTE_LENGTH(0x8000) /* $8000 palette entries for consistency with the other games */
@@ -2142,17 +2142,17 @@ static MACHINE_DRIVER_START( esprade )
MDRV_CPU_PROGRAM_MAP(esprade_readmem,esprade_writemem)
MDRV_CPU_VBLANK_INT(cave_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(cave)
MDRV_NVRAM_HANDLER(cave)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
+
MDRV_GFXDECODE(esprade)
MDRV_PALETTE_LENGTH(0x8000)
@@ -2180,16 +2180,16 @@ static MACHINE_DRIVER_START( gaia )
MDRV_CPU_PROGRAM_MAP(gaia_readmem,gaia_writemem)
MDRV_CPU_VBLANK_INT(cave_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(cave)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
+
MDRV_GFXDECODE(esprade)
MDRV_PALETTE_LENGTH(0x8000)
@@ -2217,17 +2217,17 @@ static MACHINE_DRIVER_START( guwange )
MDRV_CPU_PROGRAM_MAP(guwange_readmem,guwange_writemem)
MDRV_CPU_VBLANK_INT(cave_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(cave)
MDRV_NVRAM_HANDLER(cave)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
+
MDRV_GFXDECODE(esprade)
MDRV_PALETTE_LENGTH(0x8000)
@@ -2259,17 +2259,17 @@ static MACHINE_DRIVER_START( hotdogst )
MDRV_CPU_PROGRAM_MAP(hotdogst_sound_readmem,hotdogst_sound_writemem)
MDRV_CPU_IO_MAP(hotdogst_sound_readport,hotdogst_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(cave)
MDRV_NVRAM_HANDLER(cave)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 384-1, 0, 240-1)
+
MDRV_GFXDECODE(hotdogst)
MDRV_PALETTE_LENGTH(0x8000) /* $8000 palette entries for consistency with the other games */
@@ -2309,17 +2309,17 @@ static MACHINE_DRIVER_START( korokoro )
MDRV_CPU_PROGRAM_MAP(korokoro_readmem,korokoro_writemem)
MDRV_CPU_VBLANK_INT(cave_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(cave)
MDRV_NVRAM_HANDLER(korokoro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1-2, 0, 240-1-1)
+
MDRV_GFXDECODE(korokoro)
MDRV_PALETTE_LENGTH(0x8000) /* $8000 palette entries for consistency with the other games */
@@ -2353,18 +2353,19 @@ static MACHINE_DRIVER_START( mazinger )
MDRV_CPU_PROGRAM_MAP(mazinger_sound_readmem,mazinger_sound_writemem)
MDRV_CPU_IO_MAP(mazinger_sound_readport,mazinger_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_WATCHDOG_TIME_INIT(ATTOTIME_IN_SEC(3)) /* a guess, and certainly wrong */
MDRV_MACHINE_RESET(cave)
MDRV_NVRAM_HANDLER(cave)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 384-1, 0, 240-1)
+
MDRV_GFXDECODE(mazinger)
MDRV_PALETTE_LENGTH(0x8000) /* $8000 palette entries for consistency with the other games */
@@ -2409,18 +2410,19 @@ static MACHINE_DRIVER_START( metmqstr )
MDRV_CPU_PROGRAM_MAP(metmqstr_sound_readmem,metmqstr_sound_writemem)
MDRV_CPU_IO_MAP(metmqstr_sound_readport,metmqstr_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_WATCHDOG_TIME_INIT(ATTOTIME_IN_SEC(3)) /* a guess, and certainly wrong */
MDRV_MACHINE_RESET(cave) /* start with the watchdog armed */
MDRV_NVRAM_HANDLER(cave)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x200, 240)
MDRV_SCREEN_VISIBLE_AREA(0x7d, 0x7d + 0x180-1, 0, 240-1)
+
MDRV_GFXDECODE(donpachi)
MDRV_PALETTE_LENGTH(0x8000) /* $8000 palette entries for consistency with the other games */
@@ -2466,17 +2468,17 @@ static MACHINE_DRIVER_START( pwrinst2 )
MDRV_CPU_PROGRAM_MAP(pwrinst2_sound_readmem,pwrinst2_sound_writemem)
MDRV_CPU_IO_MAP(pwrinst2_sound_readport,pwrinst2_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(cave)
MDRV_NVRAM_HANDLER(cave)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x200, 240)
MDRV_SCREEN_VISIBLE_AREA(0x70, 0x70 + 0x140-1, 0, 240-1)
+
MDRV_GFXDECODE(pwrinst2)
MDRV_PALETTE_LENGTH(0x8000+0x2800)
@@ -2526,18 +2528,19 @@ static MACHINE_DRIVER_START( sailormn )
MDRV_CPU_PROGRAM_MAP(sailormn_sound_readmem,sailormn_sound_writemem)
MDRV_CPU_IO_MAP(sailormn_sound_readport,sailormn_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
// MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(cave)
MDRV_NVRAM_HANDLER(cave)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320+1, 240)
MDRV_SCREEN_VISIBLE_AREA(0+1, 320+1-1, 0, 240-1)
+
MDRV_GFXDECODE(sailormn)
MDRV_PALETTE_LENGTH(0x8000) /* $8000 palette entries for consistency with the other games */
@@ -2575,16 +2578,16 @@ static MACHINE_DRIVER_START( uopoko )
MDRV_CPU_PROGRAM_MAP(uopoko_readmem,uopoko_writemem)
MDRV_CPU_VBLANK_INT(cave_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(15625/271.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(cave)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(15625/271.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
+
MDRV_GFXDECODE(uopoko)
MDRV_PALETTE_LENGTH(0x8000)
diff --git a/src/mame/drivers/cball.c b/src/mame/drivers/cball.c
index 988af13011d..d80ed51eb6b 100644
--- a/src/mame/drivers/cball.c
+++ b/src/mame/drivers/cball.c
@@ -205,14 +205,15 @@ static MACHINE_DRIVER_START( cball )
MDRV_CPU_ADD(M6800, 12096000 / 16) /* ? */
MDRV_CPU_PROGRAM_MAP(cpu_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_MACHINE_RESET(cball)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 223)
+
MDRV_GFXDECODE(cball)
MDRV_PALETTE_LENGTH(6)
diff --git a/src/mame/drivers/cbasebal.c b/src/mame/drivers/cbasebal.c
index 96bf22a7c5c..0d0517a108a 100644
--- a/src/mame/drivers/cbasebal.c
+++ b/src/mame/drivers/cbasebal.c
@@ -257,16 +257,18 @@ static MACHINE_DRIVER_START( cbasebal )
MDRV_CPU_IO_MAP(cbasebal_portmap,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1) /* ??? */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(cbasebal)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
+
MDRV_GFXDECODE(cbasebal)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/cbuster.c b/src/mame/drivers/cbuster.c
index 14cab1bfa19..7b644b8b890 100644
--- a/src/mame/drivers/cbuster.c
+++ b/src/mame/drivers/cbuster.c
@@ -351,14 +351,16 @@ static MACHINE_DRIVER_START( twocrude )
MDRV_CPU_ADD(H6280,32220000/4) /* Custom chip 45, Audio section crystal is 32.220 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(cbuster)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/ccastles.c b/src/mame/drivers/ccastles.c
index c8a886a893d..50b3a9d7bae 100644
--- a/src/mame/drivers/ccastles.c
+++ b/src/mame/drivers/ccastles.c
@@ -475,11 +475,10 @@ static MACHINE_DRIVER_START( ccastles )
MDRV_WATCHDOG_VBLANK_INIT(8)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(ccastles)
MDRV_PALETTE_LENGTH(32)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, 0, HTOTAL - 1, VTOTAL, 0, VTOTAL - 1) /* will be adjusted later */
diff --git a/src/mame/drivers/cchasm.c b/src/mame/drivers/cchasm.c
index 252b5fe9dda..34bd6f52543 100644
--- a/src/mame/drivers/cchasm.c
+++ b/src/mame/drivers/cchasm.c
@@ -161,13 +161,12 @@ static MACHINE_DRIVER_START( cchasm )
MDRV_CPU_PROGRAM_MAP(sound_memmap,0)
MDRV_CPU_IO_MAP(sound_portmap,0)
- MDRV_SCREEN_REFRESH_RATE(40)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(40)
MDRV_SCREEN_SIZE(400, 300)
MDRV_SCREEN_VISIBLE_AREA(0, 1024-1, 0, 768-1)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(cchasm)
diff --git a/src/mame/drivers/cclimber.c b/src/mame/drivers/cclimber.c
index 565eef2ce16..36836455245 100644
--- a/src/mame/drivers/cclimber.c
+++ b/src/mame/drivers/cclimber.c
@@ -788,15 +788,16 @@ static MACHINE_DRIVER_START( cclimber )
MDRV_CPU_IO_MAP(cclimber_portmap,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(cclimber)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(cclimber)
MDRV_PALETTE_LENGTH(16*4+8*4)
@@ -842,14 +843,14 @@ static MACHINE_DRIVER_START( swimmer )
MDRV_CPU_IO_MAP(swimmer_sound_portmap,0)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, (double)4000000/16384) /* IRQs are triggered by the main CPU */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(swimmer)
MDRV_PALETTE_LENGTH(64*8+4*8)
diff --git a/src/mame/drivers/centiped.c b/src/mame/drivers/centiped.c
index 021708a5b3a..653049d72e3 100644
--- a/src/mame/drivers/centiped.c
+++ b/src/mame/drivers/centiped.c
@@ -1631,17 +1631,17 @@ static MACHINE_DRIVER_START( centiped )
MDRV_CPU_ADD_TAG("main", M6502, 12096000/8) /* 1.512 MHz (slows down to 0.75MHz while accessing playfield RAM) */
MDRV_CPU_PROGRAM_MAP(centiped_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_START(centiped)
MDRV_MACHINE_RESET(centiped)
MDRV_NVRAM_HANDLER(atari_vg)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(centiped)
MDRV_PALETTE_LENGTH(4+4*4*4*4)
@@ -1758,15 +1758,15 @@ static MACHINE_DRIVER_START( bullsdrt )
MDRV_CPU_PROGRAM_MAP(bullsdrt_map,0)
MDRV_CPU_IO_MAP(bullsdrt_port_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_NVRAM_HANDLER(atari_vg)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(centiped)
MDRV_PALETTE_LENGTH(4+4*4*4*4)
diff --git a/src/mame/drivers/chaknpop.c b/src/mame/drivers/chaknpop.c
index 6669d05d82d..3a253341f7b 100644
--- a/src/mame/drivers/chaknpop.c
+++ b/src/mame/drivers/chaknpop.c
@@ -291,16 +291,16 @@ static MACHINE_DRIVER_START( chaknpop )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(chaknpop)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(chaknpop)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/cham24.c b/src/mame/drivers/cham24.c
index 7187d76897d..b35716e3c36 100644
--- a/src/mame/drivers/cham24.c
+++ b/src/mame/drivers/cham24.c
@@ -255,15 +255,15 @@ static MACHINE_DRIVER_START( cham24 )
MDRV_CPU_ADD_TAG("main", N2A03, N2A03_DEFAULTCLOCK)
MDRV_CPU_PROGRAM_MAP(cham24_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET( cham24 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 262)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(cham24)
MDRV_PALETTE_LENGTH(8*4*16)
diff --git a/src/mame/drivers/champbas.c b/src/mame/drivers/champbas.c
index 3fe25a62561..4ca86a73c63 100644
--- a/src/mame/drivers/champbas.c
+++ b/src/mame/drivers/champbas.c
@@ -274,14 +274,14 @@ static MACHINE_DRIVER_START( champbas )
MDRV_CPU_ADD(Z80, 18432000/6)
MDRV_CPU_PROGRAM_MAP(sub_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(champbas)
MDRV_PALETTE_LENGTH(128*4)
diff --git a/src/mame/drivers/champbwl.c b/src/mame/drivers/champbwl.c
index 1df9168c505..509a4615344 100644
--- a/src/mame/drivers/champbwl.c
+++ b/src/mame/drivers/champbwl.c
@@ -335,16 +335,16 @@ static MACHINE_DRIVER_START( champbwl )
MDRV_CPU_PROGRAM_MAP(champbwl_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(57.5)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(57.5)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(champbwl)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/changela.c b/src/mame/drivers/changela.c
index fd009bfb86a..27681c44e52 100644
--- a/src/mame/drivers/changela.c
+++ b/src/mame/drivers/changela.c
@@ -484,14 +484,15 @@ static MACHINE_DRIVER_START( changela )
MDRV_CPU_ADD(M68705,2500000)
MDRV_CPU_PROGRAM_MAP(mcu_readmem,mcu_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(changela)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 262) /* vert size is a guess */
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x40)
MDRV_VIDEO_START(changela)
diff --git a/src/mame/drivers/cheekyms.c b/src/mame/drivers/cheekyms.c
index 5d7bfa40492..d6a974c050d 100644
--- a/src/mame/drivers/cheekyms.c
+++ b/src/mame/drivers/cheekyms.c
@@ -127,14 +127,14 @@ static MACHINE_DRIVER_START( cheekyms )
MDRV_CPU_IO_MAP(portmap,0)
MDRV_CPU_VBLANK_INT(cheekyms_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
+
MDRV_GFXDECODE(cheekyms)
MDRV_PALETTE_LENGTH(0xc0)
diff --git a/src/mame/drivers/cherrym.c b/src/mame/drivers/cherrym.c
index dd6b20b8d03..74395bce627 100644
--- a/src/mame/drivers/cherrym.c
+++ b/src/mame/drivers/cherrym.c
@@ -376,13 +376,13 @@ static MACHINE_DRIVER_START( cmv801 )
MDRV_CPU_IO_MAP(cm_io_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
//MDRV_NVRAM_HANDLER(cmv801)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/cherrym2.c b/src/mame/drivers/cherrym2.c
index eb198b9c4aa..9fdbc3ec399 100644
--- a/src/mame/drivers/cherrym2.c
+++ b/src/mame/drivers/cherrym2.c
@@ -356,13 +356,13 @@ static MACHINE_DRIVER_START( cm2v841 )
MDRV_CPU_IO_MAP(cm_io_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
//MDRV_NVRAM_HANDLER(cmv801)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/chinagat.c b/src/mame/drivers/chinagat.c
index 450789d5638..81d8edff8ae 100644
--- a/src/mame/drivers/chinagat.c
+++ b/src/mame/drivers/chinagat.c
@@ -503,17 +503,18 @@ static MACHINE_DRIVER_START( chinagat )
MDRV_CPU_ADD(Z80, 3579545) /* 3.579545 MHz */
MDRV_CPU_PROGRAM_MAP(sound_map,0)
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100) /* heavy interleaving to sync up sprite<->main cpu's */
MDRV_MACHINE_RESET(chinagat)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 29*8-1)
+
MDRV_GFXDECODE(chinagat)
MDRV_PALETTE_LENGTH(384)
@@ -550,17 +551,18 @@ static MACHINE_DRIVER_START( saiyugb1 )
MDRV_CPU_PROGRAM_MAP(i8748_map,0)
MDRV_CPU_IO_MAP(i8748_portmap,0)
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100) /* heavy interleaving to sync up sprite<->main cpu's */
MDRV_MACHINE_RESET(chinagat)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 29*8-1)
+
MDRV_GFXDECODE(chinagat)
MDRV_PALETTE_LENGTH(384)
@@ -593,17 +595,18 @@ static MACHINE_DRIVER_START( saiyugb2 )
MDRV_CPU_ADD(Z80, 3579545) /* 3.579545 MHz oscillator */
MDRV_CPU_PROGRAM_MAP(ym2203c_sound_map,0)
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100) /* heavy interleaving to sync up sprite<->main cpu's */
MDRV_MACHINE_RESET(chinagat)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 29*8-1)
+
MDRV_GFXDECODE(chinagat)
MDRV_PALETTE_LENGTH(384)
diff --git a/src/mame/drivers/chinsan.c b/src/mame/drivers/chinsan.c
index 46b5c32fbc0..9f2fdef26fa 100644
--- a/src/mame/drivers/chinsan.c
+++ b/src/mame/drivers/chinsan.c
@@ -466,12 +466,13 @@ static MACHINE_DRIVER_START( chinsan )
MDRV_MACHINE_RESET( chinsan )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_VISIBLE_AREA(24, 512-24-1, 16, 256-16-1)
+
MDRV_GFXDECODE(chinsan)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/chqflag.c b/src/mame/drivers/chqflag.c
index f63cf784575..06235ff8913 100644
--- a/src/mame/drivers/chqflag.c
+++ b/src/mame/drivers/chqflag.c
@@ -369,15 +369,18 @@ static MACHINE_DRIVER_START( chqflag )
/* audio CPU */ /* ? */
MDRV_CPU_PROGRAM_MAP(chqflag_readmem_sound,chqflag_writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(12*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(1024)
MDRV_VIDEO_START(chqflag)
diff --git a/src/mame/drivers/cidelsa.c b/src/mame/drivers/cidelsa.c
index 7892f385e0c..639b54a31c4 100644
--- a/src/mame/drivers/cidelsa.c
+++ b/src/mame/drivers/cidelsa.c
@@ -524,13 +524,12 @@ static MACHINE_DRIVER_START( destryer )
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(8+64)
MDRV_PALETTE_INIT(cdp1869)
MDRV_VIDEO_START(cdp1869)
MDRV_VIDEO_UPDATE(cdp1869)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(DESTRYER_CHR2, CDP1869_SCREEN_WIDTH, CDP1869_HBLANK_END, CDP1869_HBLANK_START, CDP1869_TOTAL_SCANLINES_PAL, CDP1869_SCANLINE_VBLANK_END_PAL, CDP1869_SCANLINE_VBLANK_START_PAL)
MDRV_SCREEN_DEFAULT_POSITION(1.226, 0.012, 1.4, 0.044)
@@ -558,13 +557,12 @@ static MACHINE_DRIVER_START( destryea )
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(8+64)
MDRV_PALETTE_INIT(cdp1869)
MDRV_VIDEO_START(cdp1869)
MDRV_VIDEO_UPDATE(cdp1869)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(DESTRYER_CHR2, CDP1869_SCREEN_WIDTH, CDP1869_HBLANK_END, CDP1869_HBLANK_START, CDP1869_TOTAL_SCANLINES_PAL, CDP1869_SCANLINE_VBLANK_END_PAL, CDP1869_SCANLINE_VBLANK_START_PAL)
MDRV_SCREEN_DEFAULT_POSITION(1.226, 0.012, 1.4, 0.044)
@@ -591,13 +589,12 @@ static MACHINE_DRIVER_START( altair )
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(8+64)
MDRV_PALETTE_INIT(cdp1869)
MDRV_VIDEO_START(cdp1869)
MDRV_VIDEO_UPDATE(cdp1869)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(ALTAIR_CHR2, CDP1869_SCREEN_WIDTH, CDP1869_HBLANK_END, CDP1869_HBLANK_START, CDP1869_TOTAL_SCANLINES_PAL, CDP1869_SCANLINE_VBLANK_END_PAL, CDP1869_SCANLINE_VBLANK_START_PAL)
MDRV_SCREEN_DEFAULT_POSITION(1.226, 0.012, 1.4, 0.044)
@@ -629,13 +626,12 @@ static MACHINE_DRIVER_START( draco )
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(8+64)
MDRV_PALETTE_INIT(cdp1869)
MDRV_VIDEO_START(cdp1869)
MDRV_VIDEO_UPDATE(cdp1869)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(DRACO_CHR2, CDP1869_SCREEN_WIDTH, CDP1869_HBLANK_END, CDP1869_HBLANK_START, CDP1869_TOTAL_SCANLINES_PAL, CDP1869_SCANLINE_VBLANK_END_PAL, CDP1869_SCANLINE_VBLANK_START_PAL)
MDRV_SCREEN_DEFAULT_POSITION(1.226, 0.012, 1.360, 0.024)
diff --git a/src/mame/drivers/cinemat.c b/src/mame/drivers/cinemat.c
index b1ef7cd41e9..43c110e212a 100644
--- a/src/mame/drivers/cinemat.c
+++ b/src/mame/drivers/cinemat.c
@@ -990,16 +990,15 @@ static MACHINE_DRIVER_START( cinemat_nojmi_4k )
MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT(check_coins,1)
- MDRV_SCREEN_REFRESH_RATE(38)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_START(cinemat)
MDRV_MACHINE_RESET(cinemat)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(38)
MDRV_SCREEN_SIZE(400, 300)
MDRV_SCREEN_VISIBLE_AREA(0, 1023, 0, 767)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(cinemat_bilevel)
@@ -1116,8 +1115,6 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( solarq )
MDRV_IMPORT_FROM(cinemat_jmi_16k)
MDRV_IMPORT_FROM(solarq_sound)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_VIDEO_START(cinemat_64level)
MACHINE_DRIVER_END
@@ -1125,6 +1122,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( boxingb )
MDRV_IMPORT_FROM(cinemat_jmi_32k)
MDRV_IMPORT_FROM(boxingb_sound)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 1024, 0, 788)
MDRV_VIDEO_START(cinemat_color)
MACHINE_DRIVER_END
@@ -1132,6 +1130,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( wotw )
MDRV_IMPORT_FROM(cinemat_jmi_16k)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 1120, 0, 767)
MDRV_IMPORT_FROM(wotw_sound)
MACHINE_DRIVER_END
@@ -1147,6 +1146,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( demon )
MDRV_IMPORT_FROM(cinemat_jmi_16k)
MDRV_IMPORT_FROM(demon_sound)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 1024, 0, 805)
MACHINE_DRIVER_END
@@ -1156,6 +1156,7 @@ static MACHINE_DRIVER_START( qb3 )
MDRV_IMPORT_FROM(qb3_sound)
MDRV_CPU_MODIFY("main")
MDRV_CPU_DATA_MAP(data_map_qb3,0)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 1120, 0, 780)
MDRV_VIDEO_START(cinemat_qb3color)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/circus.c b/src/mame/drivers/circus.c
index 7bc3f6fe898..4e69b24745a 100644
--- a/src/mame/drivers/circus.c
+++ b/src/mame/drivers/circus.c
@@ -274,14 +274,14 @@ static MACHINE_DRIVER_START( circus )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(3500) /* frames per second, vblank duration (complete guess) */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(circus)
MDRV_PALETTE_LENGTH(2)
@@ -309,14 +309,14 @@ static MACHINE_DRIVER_START( robotbwl )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(3500) /* frames per second, vblank duration (complete guess) */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(robotbwl)
MDRV_PALETTE_LENGTH(2)
@@ -343,14 +343,14 @@ static MACHINE_DRIVER_START( crash )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(3500) /* frames per second, vblank duration (complete guess) */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(circus)
MDRV_PALETTE_LENGTH(2)
@@ -377,14 +377,14 @@ static MACHINE_DRIVER_START( ripcord )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
//MDRV_CPU_VBLANK_INT(ripcord_interrupt,1) //AT
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(3500) /* frames per second, vblank duration (complete guess) */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(circus)
MDRV_PALETTE_LENGTH(2)
diff --git a/src/mame/drivers/circusc.c b/src/mame/drivers/circusc.c
index 0f4ed43f6e8..07c89e2fbfc 100644
--- a/src/mame/drivers/circusc.c
+++ b/src/mame/drivers/circusc.c
@@ -310,16 +310,17 @@ static MACHINE_DRIVER_START( circusc )
MDRV_CPU_ADD(Z80,14318180/4)
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_START(circusc)
MDRV_MACHINE_RESET(circusc)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(circusc)
MDRV_PALETTE_LENGTH(16*16+16*16)
diff --git a/src/mame/drivers/cischeat.c b/src/mame/drivers/cischeat.c
index b9e197ee6c6..7c52c4b01fc 100644
--- a/src/mame/drivers/cischeat.c
+++ b/src/mame/drivers/cischeat.c
@@ -1767,15 +1767,18 @@ static MACHINE_DRIVER_START( bigrun )
MDRV_CPU_PROGRAM_MAP(bigrun_sound_readmem,bigrun_sound_writemem)
MDRV_CPU_VBLANK_INT(irq4_line_hold,CISCHEAT_SOUND_INTERRUPT_NUM)
- MDRV_SCREEN_REFRESH_RATE(30)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(20)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK | VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(30)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(bigrun)
MDRV_PALETTE_LENGTH(16*16 * 3 + 64*16 * 2 + 64*16) /* scroll 0,1,2; road 0,1; sprites */
@@ -1816,7 +1819,9 @@ static MACHINE_DRIVER_START( cischeat )
MDRV_CPU_PROGRAM_MAP(cischeat_sound_readmem,cischeat_sound_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-8-1)
+
MDRV_GFXDECODE(cischeat)
MDRV_PALETTE_LENGTH(32*16 * 3 + 64*16 * 2 + 128*16) /* scroll 0,1,2; road 0,1; sprites */
@@ -1895,14 +1900,16 @@ static MACHINE_DRIVER_START( scudhamm )
MDRV_CPU_PROGRAM_MAP(readmem_scudhamm,writemem_scudhamm)
MDRV_CPU_VBLANK_INT(interrupt_scudhamm,INTERRUPT_NUM_SCUDHAMM)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK | VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(30)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500 * 3) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK | VIDEO_HAS_SHADOWS)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0 +16, 256-1 -16)
+
MDRV_GFXDECODE(scudhamm)
MDRV_PALETTE_LENGTH(16*16+16*16+128*16)
diff --git a/src/mame/drivers/citycon.c b/src/mame/drivers/citycon.c
index be5b83e7abb..4aac4ca5a12 100644
--- a/src/mame/drivers/citycon.c
+++ b/src/mame/drivers/citycon.c
@@ -216,14 +216,14 @@ static MACHINE_DRIVER_START( citycon )
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(citycon)
MDRV_PALETTE_LENGTH(640+1024) /* 640 real palette + 1024 virtual palette */
diff --git a/src/mame/drivers/clayshoo.c b/src/mame/drivers/clayshoo.c
index 94e556fb3d9..8316661f18d 100644
--- a/src/mame/drivers/clayshoo.c
+++ b/src/mame/drivers/clayshoo.c
@@ -304,10 +304,9 @@ static MACHINE_DRIVER_START( clayshoo )
MDRV_MACHINE_START(clayshoo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(clayshoo)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 64, 255)
diff --git a/src/mame/drivers/cliffhgr.c b/src/mame/drivers/cliffhgr.c
index 144e4294640..2a0d3cb2bec 100644
--- a/src/mame/drivers/cliffhgr.c
+++ b/src/mame/drivers/cliffhgr.c
@@ -749,8 +749,9 @@ static MACHINE_DRIVER_START( cliffhgr )
MDRV_IMPORT_FROM(tms9928a)
/* override video rendering and raw screen info */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_SELF_RENDER)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_SELF_RENDER)
MDRV_VIDEO_UPDATE(cliff)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_RAW_PARAMS(13500000, 858, 0, 720, 262.5, 21, 262.5)
/* sound hardware */
diff --git a/src/mame/drivers/cloak.c b/src/mame/drivers/cloak.c
index 8435ac3f566..63a8482b39b 100644
--- a/src/mame/drivers/cloak.c
+++ b/src/mame/drivers/cloak.c
@@ -343,17 +343,18 @@ static MACHINE_DRIVER_START( cloak )
MDRV_CPU_PROGRAM_MAP(slave_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(5)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 3*8, 32*8-1)
+
MDRV_GFXDECODE(cloak)
MDRV_PALETTE_LENGTH(64)
diff --git a/src/mame/drivers/cloud9.c b/src/mame/drivers/cloud9.c
index 62a7384db1e..6574535693d 100644
--- a/src/mame/drivers/cloud9.c
+++ b/src/mame/drivers/cloud9.c
@@ -467,11 +467,10 @@ static MACHINE_DRIVER_START( cloud9 )
MDRV_WATCHDOG_VBLANK_INIT(8)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(cloud9)
MDRV_PALETTE_LENGTH(64)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE((float)PIXEL_CLOCK / (float)VTOTAL / (float)HTOTAL)
MDRV_SCREEN_SIZE(HTOTAL, VTOTAL)
diff --git a/src/mame/drivers/clshroad.c b/src/mame/drivers/clshroad.c
index 6bb957d9f79..08a9bea454f 100644
--- a/src/mame/drivers/clshroad.c
+++ b/src/mame/drivers/clshroad.c
@@ -313,16 +313,16 @@ static MACHINE_DRIVER_START( firebatl )
MDRV_CPU_PROGRAM_MAP(clshroad_sound_readmem,clshroad_sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1) /* IRQ, no NMI */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(clshroad)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x120, 0x100)
MDRV_SCREEN_VISIBLE_AREA(0, 0x120-1, 0x0+16, 0x100-16-1)
+
MDRV_GFXDECODE(firebatl)
MDRV_PALETTE_LENGTH(512+64*4)
@@ -350,16 +350,16 @@ static MACHINE_DRIVER_START( clshroad )
MDRV_CPU_PROGRAM_MAP(clshroad_sound_readmem,clshroad_sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1) /* IRQ, no NMI */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(clshroad)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x120, 0x100)
MDRV_SCREEN_VISIBLE_AREA(0, 0x120-1, 0x0+16, 0x100-16-1)
+
MDRV_GFXDECODE(clshroad)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/cninja.c b/src/mame/drivers/cninja.c
index 8568fc59d25..dc44f10a179 100644
--- a/src/mame/drivers/cninja.c
+++ b/src/mame/drivers/cninja.c
@@ -792,13 +792,16 @@ static MACHINE_DRIVER_START( cninja )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_MACHINE_RESET(cninja)
- MDRV_SCREEN_REFRESH_RATE(58)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(cninja)
MDRV_PALETTE_LENGTH(2048)
@@ -838,13 +841,16 @@ static MACHINE_DRIVER_START( stoneage )
MDRV_CPU_PROGRAM_MAP(stoneage_s_readmem,stoneage_s_writemem)
MDRV_MACHINE_RESET(cninja)
- MDRV_SCREEN_REFRESH_RATE(58)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(cninja)
MDRV_PALETTE_LENGTH(2048)
@@ -881,13 +887,16 @@ static MACHINE_DRIVER_START( edrandy )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_MACHINE_RESET(cninja)
- MDRV_SCREEN_REFRESH_RATE(58)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(cninja)
MDRV_PALETTE_LENGTH(2048)
@@ -927,13 +936,16 @@ static MACHINE_DRIVER_START( robocop2 )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_MACHINE_RESET(cninja)
- MDRV_SCREEN_REFRESH_RATE(60)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(robocop2)
MDRV_PALETTE_LENGTH(2048)
@@ -975,13 +987,15 @@ static MACHINE_DRIVER_START( mutantf )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem_mutantf,sound_writemem_mutantf)
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(mutantf)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/cntsteer.c b/src/mame/drivers/cntsteer.c
index 86d8d2fda8d..14875e8bffb 100644
--- a/src/mame/drivers/cntsteer.c
+++ b/src/mame/drivers/cntsteer.c
@@ -727,11 +727,10 @@ static MACHINE_DRIVER_START( cntsteer )
// MDRV_CPU_PROGRAM_MAP(sound_map,0)
// MDRV_CPU_VBLANK_INT(nmi_line_pulse,16) /* ? */ // should be interrupt, 16?
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
@@ -764,11 +763,10 @@ static MACHINE_DRIVER_START( zerotrgt )
MDRV_CPU_VBLANK_INT(irq0_line_pulse,16) /* ? */ // should be interrupt, 16?
MDRV_CPU_PERIODIC_INT(sound_interrupt, 1000)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
diff --git a/src/mame/drivers/coinmstr.c b/src/mame/drivers/coinmstr.c
index 184ef3bfec3..a1042758181 100644
--- a/src/mame/drivers/coinmstr.c
+++ b/src/mame/drivers/coinmstr.c
@@ -639,21 +639,21 @@ static MACHINE_DRIVER_START( coinmstr )
MDRV_CPU_PROGRAM_MAP(coinmstr_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 46*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(coinmstr)
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(coinmstr)
MDRV_VIDEO_UPDATE(coinmstr)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
diff --git a/src/mame/drivers/cojag.c b/src/mame/drivers/cojag.c
index 5579adc3d68..64ec5c9ba6b 100644
--- a/src/mame/drivers/cojag.c
+++ b/src/mame/drivers/cojag.c
@@ -1008,9 +1008,9 @@ static MACHINE_DRIVER_START( cojagr3k )
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(COJAG_PIXEL_CLOCK/2, 456, 42, 402, 262, 17, 257)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
diff --git a/src/mame/drivers/combatsc.c b/src/mame/drivers/combatsc.c
index bd4a6d73bd9..242576d3301 100644
--- a/src/mame/drivers/combatsc.c
+++ b/src/mame/drivers/combatsc.c
@@ -668,17 +668,18 @@ static MACHINE_DRIVER_START( combasc )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(combasc_readmem_sound,combasc_writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(20)
MDRV_MACHINE_RESET(combasc)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(combasc)
MDRV_PALETTE_LENGTH(8*16*16)
@@ -710,17 +711,18 @@ static MACHINE_DRIVER_START( combascb )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(combasc_readmem_sound,combasc_writemem_sound) /* FAKE */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(20)
MDRV_MACHINE_RESET(combasc)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(combascb)
MDRV_PALETTE_LENGTH(8*16*16)
diff --git a/src/mame/drivers/comebaby.c b/src/mame/drivers/comebaby.c
index f27384dd39b..935fa790ec1 100644
--- a/src/mame/drivers/comebaby.c
+++ b/src/mame/drivers/comebaby.c
@@ -81,12 +81,13 @@ static MACHINE_DRIVER_START( comebaby )
MDRV_CPU_PROGRAM_MAP(comebaby_map, 0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_VIDEO_START(comebaby)
diff --git a/src/mame/drivers/commando.c b/src/mame/drivers/commando.c
index e94575b4a49..4670b3e6532 100644
--- a/src/mame/drivers/commando.c
+++ b/src/mame/drivers/commando.c
@@ -247,14 +247,16 @@ static MACHINE_DRIVER_START( commando )
MDRV_CPU_PROGRAM_MAP(sound_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 4)
+ // video hardware
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(commando)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/compgolf.c b/src/mame/drivers/compgolf.c
index ac4af3a3aae..0d6f4861db4 100644
--- a/src/mame/drivers/compgolf.c
+++ b/src/mame/drivers/compgolf.c
@@ -213,14 +213,14 @@ static MACHINE_DRIVER_START( compgolf )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(1*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_PALETTE_INIT(compgolf)
MDRV_GFXDECODE(compgolf)
diff --git a/src/mame/drivers/contra.c b/src/mame/drivers/contra.c
index 6df134a8586..949729215bb 100644
--- a/src/mame/drivers/contra.c
+++ b/src/mame/drivers/contra.c
@@ -255,15 +255,16 @@ static MACHINE_DRIVER_START( contra )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(37*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 35*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(contra)
MDRV_PALETTE_LENGTH(2*8*16*16)
diff --git a/src/mame/drivers/coolpool.c b/src/mame/drivers/coolpool.c
index 8a20baa5392..46aad0cc90d 100644
--- a/src/mame/drivers/coolpool.c
+++ b/src/mame/drivers/coolpool.c
@@ -697,10 +697,9 @@ static MACHINE_DRIVER_START( amerdart )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(tms340x0)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(40000000/6, 212*2, 0, 161*2, 262, 0, 241)
@@ -727,10 +726,9 @@ static MACHINE_DRIVER_START( coolpool )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(tms340x0)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(40000000/6, 424, 0, 320, 262, 0, 240)
diff --git a/src/mame/drivers/coolridr.c b/src/mame/drivers/coolridr.c
index 242f552c2c1..e070d669d87 100644
--- a/src/mame/drivers/coolridr.c
+++ b/src/mame/drivers/coolridr.c
@@ -190,13 +190,13 @@ static MACHINE_DRIVER_START( coolridr )
MDRV_GFXDECODE(coolridr)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 64*8-1)
+
MDRV_PALETTE_LENGTH(0x2000)
MDRV_MACHINE_RESET(coolridr)
diff --git a/src/mame/drivers/cop01.c b/src/mame/drivers/cop01.c
index d4cf10a2bdc..a6b96998dd8 100644
--- a/src/mame/drivers/cop01.c
+++ b/src/mame/drivers/cop01.c
@@ -425,14 +425,14 @@ static MACHINE_DRIVER_START( cop01 )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(cop01)
MDRV_PALETTE_LENGTH(16+8*16+16*16)
@@ -466,14 +466,14 @@ static MACHINE_DRIVER_START( mightguy )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(mightguy_sound_readport,mightguy_sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(cop01)
MDRV_PALETTE_LENGTH(16+8*16+16*16)
diff --git a/src/mame/drivers/copsnrob.c b/src/mame/drivers/copsnrob.c
index 855b45686f7..0364095b968 100644
--- a/src/mame/drivers/copsnrob.c
+++ b/src/mame/drivers/copsnrob.c
@@ -260,14 +260,14 @@ static MACHINE_DRIVER_START( copsnrob )
MDRV_CPU_ADD(M6502,14318180/16) /* 894886.25 kHz */
MDRV_CPU_PROGRAM_MAP(main_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 26*8-1)
+
MDRV_GFXDECODE(copsnrob)
MDRV_PALETTE_LENGTH(2)
diff --git a/src/mame/drivers/cosmic.c b/src/mame/drivers/cosmic.c
index 1d6ae29f83f..4541d763d81 100644
--- a/src/mame/drivers/cosmic.c
+++ b/src/mame/drivers/cosmic.c
@@ -989,10 +989,9 @@ static MACHINE_DRIVER_START( cosmic )
/* basic machine hardware */
MDRV_CPU_ADD_TAG("main", Z80,10816000/6) /* 1.802 MHz*/
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
@@ -1057,13 +1056,13 @@ static MACHINE_DRIVER_START( cosmicg )
MDRV_CPU_IO_MAP(cosmicg_readport,cosmicg_writeport)
MDRV_CPU_VBLANK_INT(cosmicg_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
+
MDRV_PALETTE_LENGTH(16)
MDRV_PALETTE_INIT(cosmicg)
diff --git a/src/mame/drivers/couple.c b/src/mame/drivers/couple.c
index 79d1fb33be5..226b2f3715c 100644
--- a/src/mame/drivers/couple.c
+++ b/src/mame/drivers/couple.c
@@ -447,15 +447,16 @@ static MACHINE_DRIVER_START( couple )
MDRV_CPU_IO_MAP(merit_io,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(couple)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(couple)
MDRV_PALETTE_LENGTH(0x100)
MDRV_PALETTE_INIT(couple)
@@ -463,7 +464,7 @@ static MACHINE_DRIVER_START( couple )
MDRV_VIDEO_START(couple)
MDRV_VIDEO_UPDATE(couple)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
MDRV_SPEAKER_STANDARD_MONO("mono")
diff --git a/src/mame/drivers/cowrace.c b/src/mame/drivers/cowrace.c
index 8a9412c05d4..c4078b1d481 100644
--- a/src/mame/drivers/cowrace.c
+++ b/src/mame/drivers/cowrace.c
@@ -171,14 +171,14 @@ static MACHINE_DRIVER_START( cowrace )
MDRV_CPU_IO_MAP(io_map_sound_cowrace,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1) // NMI by main CPU
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1)
+
MDRV_GFXDECODE(cowrace)
MDRV_PALETTE_LENGTH(0x1000)
diff --git a/src/mame/drivers/cps1.c b/src/mame/drivers/cps1.c
index 53fd9e8dd17..6bdf8bf4104 100644
--- a/src/mame/drivers/cps1.c
+++ b/src/mame/drivers/cps1.c
@@ -3472,14 +3472,14 @@ static MACHINE_DRIVER_START( cps1 )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
+
MDRV_GFXDECODE(cps1)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/cps2.c b/src/mame/drivers/cps2.c
index 0a391f12e07..6087bb1e2fd 100644
--- a/src/mame/drivers/cps2.c
+++ b/src/mame/drivers/cps2.c
@@ -1245,17 +1245,20 @@ static MACHINE_DRIVER_START( cps2 )
MDRV_CPU_PROGRAM_MAP(qsound_readmem,qsound_writemem)
MDRV_CPU_PERIODIC_INT(irq0_line_hold, 251) /* 251 is good (see 'mercy mercy mercy'section of sgemf attract mode for accurate sound sync */
- MDRV_SCREEN_REFRESH_RATE(59.633333)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
// MDRV_INTERLEAVE(262) /* 262 scanlines, for raster effects */
MDRV_NVRAM_HANDLER(cps2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.633333)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
+
MDRV_GFXDECODE(cps2)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/cps3.c b/src/mame/drivers/cps3.c
index a2032d3bd1d..58da0252741 100644
--- a/src/mame/drivers/cps3.c
+++ b/src/mame/drivers/cps3.c
@@ -2729,12 +2729,10 @@ static MACHINE_DRIVER_START( cps3 )
MDRV_CPU_VBLANK_INT(cps3_vbl_interrupt,1)
MDRV_CPU_PERIODIC_INT(cps3_other_interrupt,80) /* ?source? */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(512*2, 224*2)
MDRV_SCREEN_VISIBLE_AREA(0, (384*1)-1, 0, 223/*511*/)
diff --git a/src/mame/drivers/crbaloon.c b/src/mame/drivers/crbaloon.c
index e3e552196f1..34bef4db9c7 100644
--- a/src/mame/drivers/crbaloon.c
+++ b/src/mame/drivers/crbaloon.c
@@ -370,7 +370,7 @@ static MACHINE_DRIVER_START( crbaloon )
MDRV_MACHINE_RESET(crballoon)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_ALWAYS_UPDATE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
MDRV_VIDEO_START(crbaloon)
MDRV_VIDEO_UPDATE(crbaloon)
@@ -378,6 +378,7 @@ static MACHINE_DRIVER_START( crbaloon )
MDRV_PALETTE_LENGTH(32)
MDRV_PALETTE_INIT(crbaloon)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
diff --git a/src/mame/drivers/crimfght.c b/src/mame/drivers/crimfght.c
index 92dfd581e1c..8f0d7808017 100644
--- a/src/mame/drivers/crimfght.c
+++ b/src/mame/drivers/crimfght.c
@@ -373,16 +373,18 @@ static MACHINE_DRIVER_START( crimfght )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(crimfght_readmem_sound,crimfght_writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(54) /* adjusted - compared with PCB speed */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(crimfght)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(54) /* adjusted - compared with PCB speed */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(512)
MDRV_VIDEO_START(crimfght)
diff --git a/src/mame/drivers/crospang.c b/src/mame/drivers/crospang.c
index 80e67288d62..06a583627b4 100644
--- a/src/mame/drivers/crospang.c
+++ b/src/mame/drivers/crospang.c
@@ -413,11 +413,10 @@ static MACHINE_DRIVER_START( crospang )
MDRV_CPU_PROGRAM_MAP(crospang_sound_readmem,crospang_sound_writemem)
MDRV_CPU_IO_MAP(crospang_sound_readport,crospang_sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 30*8-1)
@@ -452,11 +451,10 @@ static MACHINE_DRIVER_START( bestri )
MDRV_CPU_PROGRAM_MAP(crospang_sound_readmem,crospang_sound_writemem)
MDRV_CPU_IO_MAP(crospang_sound_readport,crospang_sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 30*8-1)
diff --git a/src/mame/drivers/crshrace.c b/src/mame/drivers/crshrace.c
index aff64753a23..5a21c005e80 100644
--- a/src/mame/drivers/crshrace.c
+++ b/src/mame/drivers/crshrace.c
@@ -632,13 +632,15 @@ static MACHINE_DRIVER_START( crshrace )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(crshrace)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/crystal.c b/src/mame/drivers/crystal.c
index 94131df997e..07f0e552757 100644
--- a/src/mame/drivers/crystal.c
+++ b/src/mame/drivers/crystal.c
@@ -826,17 +826,17 @@ static MACHINE_DRIVER_START( crystal )
MDRV_CPU_PROGRAM_MAP(crystal_mem,0)
MDRV_CPU_VBLANK_INT(crystal_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(crystal)
MDRV_NVRAM_HANDLER(generic_0fill)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_PALETTE_LENGTH(8192)
MDRV_VIDEO_START(crystal)
diff --git a/src/mame/drivers/cshooter.c b/src/mame/drivers/cshooter.c
index 6a5d1ecfd01..4fb4c13c826 100644
--- a/src/mame/drivers/cshooter.c
+++ b/src/mame/drivers/cshooter.c
@@ -479,16 +479,16 @@ static MACHINE_DRIVER_START( cshooter )
MDRV_CPU_PROGRAM_MAP(s_readmem,s_writemem)
MDRV_CPU_IO_MAP(s_readport,s_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(cshooter)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-1-16)
+
MDRV_GFXDECODE(cshooter)
MDRV_PALETTE_LENGTH(0x1000)
@@ -508,17 +508,16 @@ static MACHINE_DRIVER_START( airraid )
MDRV_CPU_PROGRAM_MAP(s2_readmem,s2_writemem)
MDRV_CPU_IO_MAP(s_readport,s_writeport)
-
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(cshooter)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-1-16)
+
MDRV_GFXDECODE(cshooter)
MDRV_PALETTE_LENGTH(0x1000)
diff --git a/src/mame/drivers/csk.c b/src/mame/drivers/csk.c
index aa49c27a945..0f2d829fd9d 100644
--- a/src/mame/drivers/csk.c
+++ b/src/mame/drivers/csk.c
@@ -739,15 +739,16 @@ static MACHINE_DRIVER_START( cpoker )
MDRV_CPU_IO_MAP(cpoker_map,0)
MDRV_CPU_VBLANK_INT(cpoker_interrupt,8)
- MDRV_SCREEN_REFRESH_RATE(57)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(cpk)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(57)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0, 32*8-1)
+
MDRV_GFXDECODE(cpoker)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/cubocd32.c b/src/mame/drivers/cubocd32.c
index 69003518683..8745f559da8 100644
--- a/src/mame/drivers/cubocd32.c
+++ b/src/mame/drivers/cubocd32.c
@@ -269,17 +269,19 @@ static MACHINE_DRIVER_START( cd32 )
MDRV_CPU_PROGRAM_MAP(cd32_map,0)
MDRV_CPU_VBLANK_INT(amiga_scanline_callback, 312)
- MDRV_SCREEN_REFRESH_RATE(59.997)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(amiga)
MDRV_NVRAM_HANDLER(cd32)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.997)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512*2, 312)
MDRV_SCREEN_VISIBLE_AREA((129-8)*2, (449+8-1)*2, 44-8, 300+8-1)
+
MDRV_PALETTE_LENGTH(4096)
MDRV_PALETTE_INIT(amiga)
diff --git a/src/mame/drivers/cultures.c b/src/mame/drivers/cultures.c
index 90314397e52..bf7a9161798 100644
--- a/src/mame/drivers/cultures.c
+++ b/src/mame/drivers/cultures.c
@@ -362,14 +362,14 @@ static MACHINE_DRIVER_START( cultures )
MDRV_CPU_IO_MAP(cultures_io_map,0)
MDRV_CPU_VBLANK_INT(cultures_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(culture)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/cvs.c b/src/mame/drivers/cvs.c
index 17016589037..7db87901ea7 100644
--- a/src/mame/drivers/cvs.c
+++ b/src/mame/drivers/cvs.c
@@ -1011,7 +1011,7 @@ static MACHINE_DRIVER_START( cvs )
MDRV_MACHINE_START(cvs)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_ALWAYS_UPDATE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
MDRV_VIDEO_START(cvs)
MDRV_VIDEO_UPDATE(cvs)
@@ -1019,6 +1019,7 @@ static MACHINE_DRIVER_START( cvs )
MDRV_PALETTE_LENGTH((256+4)*8+8+1)
MDRV_PALETTE_INIT(cvs)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 30*8-1, 1*8, 32*8-1)
diff --git a/src/mame/drivers/cyberbal.c b/src/mame/drivers/cyberbal.c
index bb1ea8149a0..fba5f39fcb7 100644
--- a/src/mame/drivers/cyberbal.c
+++ b/src/mame/drivers/cyberbal.c
@@ -466,17 +466,17 @@ static MACHINE_DRIVER_START( cyberbal )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(interleaved)
MDRV_PALETTE_LENGTH(4096)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS-2 chip to generate video signals */
MDRV_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz, 456*2, 0, 336*2, 262, 0, 240)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS-2 chip to generate video signals */
@@ -512,11 +512,11 @@ static MACHINE_DRIVER_START( cyberb2p )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(cyberbal)
MDRV_PALETTE_LENGTH(2048)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS-2 chip to generate video signals */
diff --git a/src/mame/drivers/cybertnk.c b/src/mame/drivers/cybertnk.c
index d22f90ab80d..de5feb8f76a 100644
--- a/src/mame/drivers/cybertnk.c
+++ b/src/mame/drivers/cybertnk.c
@@ -574,16 +574,16 @@ static MACHINE_DRIVER_START( cybertnk )
MDRV_CPU_ADD(Z80,3579500)
MDRV_CPU_PROGRAM_MAP(sound_mem,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_INTERLEAVE(100)//arbitrary value,needed to get the communication to work
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(cybertnk)
MDRV_PALETTE_LENGTH(0x4000)
diff --git a/src/mame/drivers/dacholer.c b/src/mame/drivers/dacholer.c
index b28b2a1cd46..95808d1b437 100644
--- a/src/mame/drivers/dacholer.c
+++ b/src/mame/drivers/dacholer.c
@@ -344,14 +344,14 @@ static MACHINE_DRIVER_START( dacholer )
MDRV_CPU_IO_MAP(snd_io_map, 0)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 120) // too high?
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-1-16)
+
MDRV_PALETTE_LENGTH(16)
MDRV_GFXDECODE(dacholer)
diff --git a/src/mame/drivers/dambustr.c b/src/mame/drivers/dambustr.c
index 1ce89c988ce..d7a149615fd 100644
--- a/src/mame/drivers/dambustr.c
+++ b/src/mame/drivers/dambustr.c
@@ -190,15 +190,15 @@ static MACHINE_DRIVER_START( dambustr )
MDRV_CPU_ADD_TAG("main", Z80, 18432000/6) /* 3.072 MHz */
MDRV_CPU_PROGRAM_MAP(dambustr_readmem, dambustr_writemem)
- MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
-
MDRV_MACHINE_RESET(galaxian)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(dambustr)
MDRV_PALETTE_LENGTH(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 5c2c143bba5..d4d8779bbb7 100644
--- a/src/mame/drivers/darius.c
+++ b/src/mame/drivers/darius.c
@@ -854,26 +854,25 @@ static MACHINE_DRIVER_START( darius )
MDRV_MACHINE_RESET(darius)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(darius)
MDRV_PALETTE_LENGTH(4096*2)
MDRV_DEFAULT_LAYOUT(layout_darius)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 29*8-1)
- MDRV_SCREEN_ADD("middle", 0x000)
+ MDRV_SCREEN_ADD("middle", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 29*8-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/darkhors.c b/src/mame/drivers/darkhors.c
index 891b3fcc539..9080d75333a 100644
--- a/src/mame/drivers/darkhors.c
+++ b/src/mame/drivers/darkhors.c
@@ -602,16 +602,16 @@ static MACHINE_DRIVER_START( darkhors )
MDRV_CPU_PROGRAM_MAP(darkhors_readmem,darkhors_writemem)
MDRV_CPU_VBLANK_INT(darkhors,3)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(darkhors)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x190, 0x100)
MDRV_SCREEN_VISIBLE_AREA(0, 0x190-1, 8, 0x100-8-1)
+
MDRV_GFXDECODE(darkhors)
MDRV_PALETTE_LENGTH(0x10000)
diff --git a/src/mame/drivers/darkmist.c b/src/mame/drivers/darkmist.c
index a0c7b5ffada..28e8d5745d4 100644
--- a/src/mame/drivers/darkmist.c
+++ b/src/mame/drivers/darkmist.c
@@ -255,14 +255,14 @@ static MACHINE_DRIVER_START( darkmist )
MDRV_CPU_PROGRAM_MAP(t5182_map, 0)
MDRV_CPU_IO_MAP(t5182_io, 0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
+
MDRV_GFXDECODE(darkmist)
MDRV_PALETTE_INIT(darkmist)
MDRV_PALETTE_LENGTH(0x100*4)
diff --git a/src/mame/drivers/darkseal.c b/src/mame/drivers/darkseal.c
index f96f16d8c8d..d3c21443346 100644
--- a/src/mame/drivers/darkseal.c
+++ b/src/mame/drivers/darkseal.c
@@ -295,14 +295,16 @@ static MACHINE_DRIVER_START( darkseal )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(darkseal)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/dassault.c b/src/mame/drivers/dassault.c
index decba949a73..0fe8b510785 100644
--- a/src/mame/drivers/dassault.c
+++ b/src/mame/drivers/dassault.c
@@ -566,15 +566,18 @@ static MACHINE_DRIVER_START( dassault )
/* audio CPU */ /* Accurate */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
MDRV_INTERLEAVE(140) /* 140 CPU slices per frame */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(dassault)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/dblewing.c b/src/mame/drivers/dblewing.c
index 67a95181d90..b115e39329c 100644
--- a/src/mame/drivers/dblewing.c
+++ b/src/mame/drivers/dblewing.c
@@ -549,14 +549,14 @@ static MACHINE_DRIVER_START( dblewing )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_PALETTE_LENGTH(4096)
MDRV_GFXDECODE(dblewing)
diff --git a/src/mame/drivers/dbz.c b/src/mame/drivers/dbz.c
index 7ac4ba9f454..b6057556730 100644
--- a/src/mame/drivers/dbz.c
+++ b/src/mame/drivers/dbz.c
@@ -446,16 +446,18 @@ static MACHINE_DRIVER_START( dbz )
MDRV_CPU_PROGRAM_MAP(dbz_sound_readmem, dbz_sound_writemem)
MDRV_CPU_IO_MAP(0,dbz_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(55)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(dbz)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(55)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 48*8-1, 0, 32*8-1)
+
MDRV_VIDEO_START(dbz)
MDRV_VIDEO_UPDATE(dbz)
MDRV_PALETTE_LENGTH(0x4000/2)
diff --git a/src/mame/drivers/dcheese.c b/src/mame/drivers/dcheese.c
index a4970272ec5..1eb975ac12b 100644
--- a/src/mame/drivers/dcheese.c
+++ b/src/mame/drivers/dcheese.c
@@ -411,11 +411,12 @@ static MACHINE_DRIVER_START( dcheese )
MDRV_CPU_PERIODIC_INT(irq1_line_hold, 480) /* accurate for fredmem */
MDRV_MACHINE_START(dcheese)
- MDRV_SCREEN_REFRESH_RATE(60)
+
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(360, 262) /* guess, need to see what the games write to the vid registers */
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
@@ -438,6 +439,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( fredmem )
MDRV_IMPORT_FROM(dcheese)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 359, 0, 239)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/dcon.c b/src/mame/drivers/dcon.c
index 796ee66789f..3cc7b005e9c 100644
--- a/src/mame/drivers/dcon.c
+++ b/src/mame/drivers/dcon.c
@@ -281,15 +281,16 @@ static MACHINE_DRIVER_START( dcon )
SEIBU_SOUND_SYSTEM_CPU(4000000) /* Perhaps 14318180/4? */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(dcon)
MDRV_PALETTE_LENGTH(2048)
@@ -309,15 +310,16 @@ static MACHINE_DRIVER_START( sdgndmps )
SEIBU2_SOUND_SYSTEM_CPU(14318180/4)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(dcon)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/dday.c b/src/mame/drivers/dday.c
index 7d00b46a600..8bcae74eadb 100644
--- a/src/mame/drivers/dday.c
+++ b/src/mame/drivers/dday.c
@@ -261,18 +261,19 @@ static MACHINE_DRIVER_START( dday )
MDRV_CPU_ADD(Z80, 2000000) /* 2 MHz ? */
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(dday)
MDRV_PALETTE_LENGTH(256)
MDRV_PALETTE_INIT(dday)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
MDRV_VIDEO_START(dday)
MDRV_VIDEO_UPDATE(dday)
diff --git a/src/mame/drivers/ddayjlc.c b/src/mame/drivers/ddayjlc.c
index 1974dab5b95..e4b821b43e3 100644
--- a/src/mame/drivers/ddayjlc.c
+++ b/src/mame/drivers/ddayjlc.c
@@ -408,11 +408,10 @@ static MACHINE_DRIVER_START( ddayjlc )
MDRV_INTERLEAVE(100)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/ddealer.c b/src/mame/drivers/ddealer.c
index 62a76be4cd3..06d009ec61e 100644
--- a/src/mame/drivers/ddealer.c
+++ b/src/mame/drivers/ddealer.c
@@ -192,15 +192,16 @@ static MACHINE_DRIVER_START( ddealer )
MDRV_CPU_VBLANK_INT(ddealer_interrupt,1)
MDRV_CPU_PERIODIC_INT(irq1_line_hold, 112)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(jalmah)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x400)
MDRV_MACHINE_RESET(ddealer)
diff --git a/src/mame/drivers/ddenlovr.c b/src/mame/drivers/ddenlovr.c
index 6558a07bb7f..6d5de16c2a4 100644
--- a/src/mame/drivers/ddenlovr.c
+++ b/src/mame/drivers/ddenlovr.c
@@ -6525,14 +6525,14 @@ static MACHINE_DRIVER_START( ddenlovr )
MDRV_CPU_PROGRAM_MAP(ddenlovr_readmem,ddenlovr_writemem)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(336, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 336-1, 5, 256-16+5-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_VIDEO_START(ddenlovr)
@@ -6640,14 +6640,14 @@ static MACHINE_DRIVER_START( quizchq )
MDRV_CPU_IO_MAP(quizchq_readport,quizchq_writeport)
MDRV_CPU_VBLANK_INT(quizchq_irq,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(336, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 336-1, 5, 256-16+5-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_VIDEO_START(ddenlovr)
@@ -6715,14 +6715,14 @@ static MACHINE_DRIVER_START( mmpanic )
MDRV_CPU_IO_MAP(mmpanic_sound_readport,mmpanic_sound_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1) // NMI by main cpu
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(336, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 336-1, 5, 256-16+5-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_VIDEO_START(mmpanic) // extra layers
@@ -6779,14 +6779,14 @@ static MACHINE_DRIVER_START( hanakanz )
MDRV_CPU_IO_MAP(hanakanz_readport,hanakanz_writeport)
MDRV_CPU_VBLANK_INT(hanakanz_irq,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(336, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 336-1, 5, 256-11-1)
+
MDRV_PALETTE_LENGTH(0x200)
MDRV_VIDEO_START(hanakanz) // blitter commands in the roms are shuffled around
diff --git a/src/mame/drivers/ddragon.c b/src/mame/drivers/ddragon.c
index b31b5ccecd1..321ecd2702e 100644
--- a/src/mame/drivers/ddragon.c
+++ b/src/mame/drivers/ddragon.c
@@ -983,11 +983,10 @@ static MACHINE_DRIVER_START( ddragon )
MDRV_MACHINE_RESET(ddragon)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(ddragon)
MDRV_PALETTE_LENGTH(384)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(MAIN_CLOCK/2, 384, 0, 256, 272, 0, 240)
@@ -1049,11 +1048,10 @@ static MACHINE_DRIVER_START( ddragon2 )
MDRV_MACHINE_RESET(ddragon)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(ddragon)
MDRV_PALETTE_LENGTH(384)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(MAIN_CLOCK/2, 384, 0, 256, 272, 0, 240)
diff --git a/src/mame/drivers/ddragon3.c b/src/mame/drivers/ddragon3.c
index 3de6d74b9da..8ce2cd23998 100644
--- a/src/mame/drivers/ddragon3.c
+++ b/src/mame/drivers/ddragon3.c
@@ -511,14 +511,14 @@ static MACHINE_DRIVER_START( ddragon3 )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(readmem_sound, writemem_sound)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(ddragon3)
MDRV_PALETTE_LENGTH(768)
@@ -555,6 +555,7 @@ static MACHINE_DRIVER_START( ctribe )
MDRV_CPU_MODIFY("audio")
MDRV_CPU_PROGRAM_MAP(ctribe_readmem_sound,ctribe_writemem_sound)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_VIDEO_UPDATE(ctribe)
diff --git a/src/mame/drivers/ddrible.c b/src/mame/drivers/ddrible.c
index a2f3ee72909..58ece4375f0 100644
--- a/src/mame/drivers/ddrible.c
+++ b/src/mame/drivers/ddrible.c
@@ -351,17 +351,18 @@ static MACHINE_DRIVER_START( ddribble )
MDRV_CPU_ADD(M6809, XTAL_18_432MHz/12) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(readmem_cpu2,writemem_cpu2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* we need heavy synch */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
/* MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1) */
+
MDRV_GFXDECODE(ddrible)
MDRV_PALETTE_LENGTH(64 + 256)
diff --git a/src/mame/drivers/ddz.c b/src/mame/drivers/ddz.c
index 1fb2ff6fd5e..4375ccd52bd 100644
--- a/src/mame/drivers/ddz.c
+++ b/src/mame/drivers/ddz.c
@@ -56,17 +56,17 @@ static MACHINE_DRIVER_START( ddz )
MDRV_CPU_PROGRAM_MAP(ddz_mem,0)
MDRV_CPU_VBLANK_INT(ddz_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
//MDRV_MACHINE_RESET(ddz)
//MDRV_NVRAM_HANDLER(generic_0fill)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_PALETTE_LENGTH(8192)
MDRV_VIDEO_START(ddz)
diff --git a/src/mame/drivers/deadang.c b/src/mame/drivers/deadang.c
index e0c77286de3..b09ef90a8d7 100644
--- a/src/mame/drivers/deadang.c
+++ b/src/mame/drivers/deadang.c
@@ -289,17 +289,18 @@ static MACHINE_DRIVER_START( deadang )
SEIBU3A_SOUND_SYSTEM_CPU(XTAL_14_31818MHz/4)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(1) // the game stops working with higher interleave rates..
MDRV_MACHINE_RESET(seibu_sound_2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(deadang)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/dec0.c b/src/mame/drivers/dec0.c
index 4f0ea204ffe..84a39bf5658 100644
--- a/src/mame/drivers/dec0.c
+++ b/src/mame/drivers/dec0.c
@@ -936,14 +936,14 @@ static MACHINE_DRIVER_START( hbarrel )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(dec0_s_readmem,dec0_s_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57.41)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 57.41 Hz, 529us Vblank */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(dec0)
MDRV_PALETTE_LENGTH(1024)
@@ -979,14 +979,14 @@ static MACHINE_DRIVER_START( baddudes )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(dec0_s_readmem,dec0_s_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57.41)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 57.41 Hz, 529us Vblank */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(dec0)
MDRV_PALETTE_LENGTH(1024)
@@ -1022,14 +1022,14 @@ static MACHINE_DRIVER_START( birdtry )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(dec0_s_readmem,dec0_s_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57.41)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 57.41 Hz, 529us Vblank */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(dec0)
MDRV_PALETTE_LENGTH(1024)
@@ -1068,15 +1068,16 @@ static MACHINE_DRIVER_START( robocop )
MDRV_CPU_ADD(H6280,21477200/16) /* 21.4772MHz clock */
MDRV_CPU_PROGRAM_MAP(robocop_sub_readmem,robocop_sub_writemem)
- MDRV_SCREEN_REFRESH_RATE(57.41)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 57.41 Hz, 529us Vblank */)
MDRV_INTERLEAVE(50) /* Interleave between HuC6280 & 68000 */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(57.41)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 57.41 Hz, 529us Vblank */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(dec0)
MDRV_PALETTE_LENGTH(1024)
@@ -1112,14 +1113,14 @@ static MACHINE_DRIVER_START( robocopb )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(dec0_s_readmem,dec0_s_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57.41)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 57.41 Hz, 529us Vblank */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(dec0)
MDRV_PALETTE_LENGTH(1024)
@@ -1158,15 +1159,16 @@ static MACHINE_DRIVER_START( hippodrm )
MDRV_CPU_ADD(H6280,21477200/16) /* 21.4772MHz clock */
MDRV_CPU_PROGRAM_MAP(hippodrm_sub_readmem,hippodrm_sub_writemem)
- MDRV_SCREEN_REFRESH_RATE(57.41)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 57.41 Hz, 529us Vblank */)
MDRV_INTERLEAVE(5) /* Interleave between H6280 & 68000 */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(57.41)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 57.41 Hz, 529us Vblank */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(dec0)
MDRV_PALETTE_LENGTH(1024)
@@ -1202,14 +1204,14 @@ static MACHINE_DRIVER_START( slyspy )
/* audio CPU */ /* verified on pcb (6Mhz is XIN on pin 10 of H6280, verified on pcb */
MDRV_CPU_PROGRAM_MAP(slyspy_s_readmem,slyspy_s_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57.41)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 57.41 Hz, 529us Vblank */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(dec0)
MDRV_PALETTE_LENGTH(1024)
@@ -1245,14 +1247,14 @@ static MACHINE_DRIVER_START( midres )
/* audio CPU */ /* verified on pcb (6Mhz is XIN on pin 10 of H6280, verified on pcb */
MDRV_CPU_PROGRAM_MAP(midres_s_readmem,midres_s_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57.41)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 57.41 Hz, 529us Vblank */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(midres)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/dec8.c b/src/mame/drivers/dec8.c
index 265778f26e0..078726a4297 100644
--- a/src/mame/drivers/dec8.c
+++ b/src/mame/drivers/dec8.c
@@ -2093,14 +2093,17 @@ static MACHINE_DRIVER_START( cobracom )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(dec8_s_readmem,dec8_s_writemem)
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(cobracom)
MDRV_PALETTE_LENGTH(256)
@@ -2132,14 +2135,17 @@ static MACHINE_DRIVER_START( ghostb )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(dec8_s_readmem,dec8_s_writemem)
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(ghostb)
MDRV_PALETTE_LENGTH(1024)
@@ -2173,14 +2179,17 @@ static MACHINE_DRIVER_START( srdarwin )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(dec8_s_readmem,dec8_s_writemem)
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(srdarwin)
MDRV_PALETTE_LENGTH(144)
@@ -2212,14 +2221,17 @@ static MACHINE_DRIVER_START( gondo )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(dec8_s_readmem,oscar_s_writemem)
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(gondo)
MDRV_PALETTE_LENGTH(1024)
@@ -2255,15 +2267,18 @@ static MACHINE_DRIVER_START( oscar )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(dec8_s_readmem,oscar_s_writemem)
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */)
MDRV_INTERLEAVE(40) /* 40 CPU slices per frame */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(oscar)
MDRV_PALETTE_LENGTH(512)
@@ -2297,15 +2312,18 @@ static MACHINE_DRIVER_START( lastmiss )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(ym3526_s_readmem,ym3526_s_writemem)
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */)
MDRV_INTERLEAVE(200)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(shackled)
MDRV_PALETTE_LENGTH(1024)
@@ -2339,15 +2357,18 @@ static MACHINE_DRIVER_START( shackled )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(ym3526_s_readmem,ym3526_s_writemem)
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */)
MDRV_INTERLEAVE(80)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* 58Hz, 529ms Vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(shackled)
MDRV_PALETTE_LENGTH(1024)
@@ -2382,15 +2403,18 @@ static MACHINE_DRIVER_START( csilver )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(csilver_s_readmem,csilver_s_writemem)
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(shackled)
MDRV_PALETTE_LENGTH(1024)
@@ -2426,14 +2450,17 @@ static MACHINE_DRIVER_START( garyoret )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(dec8_s_readmem,oscar_s_writemem)
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 58Hz, 529ms Vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(gondo)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/deco156.c b/src/mame/drivers/deco156.c
index af50c2047e2..31e11fce456 100644
--- a/src/mame/drivers/deco156.c
+++ b/src/mame/drivers/deco156.c
@@ -428,15 +428,18 @@ static MACHINE_DRIVER_START( hvysmsh )
MDRV_CPU_PROGRAM_MAP(hvysmsh_map,0)
MDRV_CPU_VBLANK_INT(deco32_vbl_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(hvysmsh)
MDRV_PALETTE_LENGTH(1024)
@@ -464,15 +467,18 @@ static MACHINE_DRIVER_START( wcvol95 )
MDRV_CPU_PROGRAM_MAP(wcvol95_map,0)
MDRV_CPU_VBLANK_INT(deco32_vbl_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(hvysmsh)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/deco32.c b/src/mame/drivers/deco32.c
index bd7fd163bd7..6ce708cd4b6 100644
--- a/src/mame/drivers/deco32.c
+++ b/src/mame/drivers/deco32.c
@@ -1884,13 +1884,16 @@ static MACHINE_DRIVER_START( captaven )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_MACHINE_RESET(deco32)
- MDRV_SCREEN_REFRESH_RATE(60)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(42*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(captaven)
MDRV_PALETTE_LENGTH(2048)
@@ -1928,14 +1931,17 @@ static MACHINE_DRIVER_START( fghthist )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(42*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(fghthist)
MDRV_PALETTE_LENGTH(2048)
@@ -1971,14 +1977,17 @@ static MACHINE_DRIVER_START( fghthsta )
MDRV_CPU_ADD(H6280, 32220000/8) /* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(42*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(fghthist)
MDRV_PALETTE_LENGTH(2048)
@@ -2016,14 +2025,17 @@ static MACHINE_DRIVER_START( dragngun )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_MACHINE_RESET(deco32)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(42*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(dragngun)
MDRV_PALETTE_LENGTH(2048)
@@ -2067,14 +2079,17 @@ static MACHINE_DRIVER_START( lockload )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_MACHINE_RESET(deco32)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(42*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(dragngun)
MDRV_PALETTE_LENGTH(2048)
@@ -2118,14 +2133,17 @@ static MACHINE_DRIVER_START( tattass )
MDRV_CPU_PROGRAM_MAP(sound_readmem_tattass,sound_writemem_tattass)
MDRV_CPU_PERIODIC_INT(tattass_snd_interrupt, 489) /* Fixed FIRQ of 489Hz as measured on real (pinball) machine */
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_NVRAM_HANDLER(tattass)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(42*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tattass)
MDRV_PALETTE_LENGTH(2048)
@@ -2152,14 +2170,17 @@ static MACHINE_DRIVER_START( nslasher )
MDRV_CPU_PROGRAM_MAP(nslasher_sound,0)
MDRV_CPU_IO_MAP(nslasher_io_sound,0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(42*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(nslasher)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/deco_mlc.c b/src/mame/drivers/deco_mlc.c
index b94bef69693..6d77338d6a1 100644
--- a/src/mame/drivers/deco_mlc.c
+++ b/src/mame/drivers/deco_mlc.c
@@ -439,14 +439,15 @@ static MACHINE_DRIVER_START( avengrgs )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_MACHINE_RESET(mlc)
- MDRV_SCREEN_REFRESH_RATE(58)
MDRV_NVRAM_HANDLER(93C46) /* Actually 93c45 */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(deco_mlc)
MDRV_PALETTE_LENGTH(2048)
@@ -470,14 +471,15 @@ static MACHINE_DRIVER_START( mlc )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_MACHINE_RESET(mlc)
- MDRV_SCREEN_REFRESH_RATE(58)
MDRV_NVRAM_HANDLER(93C46) /* Actually 93c45 */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(deco_mlc)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/decocass.c b/src/mame/drivers/decocass.c
index 1b84614dcbc..cd68561a894 100644
--- a/src/mame/drivers/decocass.c
+++ b/src/mame/drivers/decocass.c
@@ -393,17 +393,18 @@ static MACHINE_DRIVER_START( decocass )
MDRV_CPU_PROGRAM_MAP(decocass_mcu_map,0)
MDRV_CPU_IO_MAP(decocass_mcu_portmap,0)
- MDRV_SCREEN_REFRESH_RATE(57)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(3072) /* frames per second, vblank duration */)
MDRV_INTERLEAVE(7) /* interleave CPUs */
MDRV_MACHINE_RESET(decocass)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(57)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(3072) /* frames per second, vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(decocass)
MDRV_PALETTE_LENGTH(32+2*8+2*4)
@@ -651,6 +652,7 @@ static MACHINE_DRIVER_START( czeroize )
/* basic machine hardware */
MDRV_IMPORT_FROM(decocass)
MDRV_MACHINE_RESET(czeroize)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(1*8, 32*8-1, 1*8, 31*8-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/deniam.c b/src/mame/drivers/deniam.c
index e7a8f331c12..45b198ad580 100644
--- a/src/mame/drivers/deniam.c
+++ b/src/mame/drivers/deniam.c
@@ -330,16 +330,16 @@ static MACHINE_DRIVER_START( deniam16b )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(deniam)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(24*8, 64*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(deniam)
MDRV_PALETTE_LENGTH(2048)
@@ -365,16 +365,16 @@ static MACHINE_DRIVER_START( deniam16c )
MDRV_CPU_PROGRAM_MAP(deniam16c_readmem,deniam16c_writemem)
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(deniam)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(24*8, 64*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(deniam)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/destroyr.c b/src/mame/drivers/destroyr.c
index 7e10fbd259f..f89b7d4306e 100644
--- a/src/mame/drivers/destroyr.c
+++ b/src/mame/drivers/destroyr.c
@@ -343,15 +343,15 @@ static MACHINE_DRIVER_START( destroyr )
MDRV_CPU_PROGRAM_MAP(destroyr_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_assert, 4)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(destroyr)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
+
MDRV_GFXDECODE(destroyr)
MDRV_PALETTE_LENGTH(8)
MDRV_PALETTE_INIT(destroyr)
diff --git a/src/mame/drivers/dgpix.c b/src/mame/drivers/dgpix.c
index a8ab0864fdc..8270b3f44fd 100644
--- a/src/mame/drivers/dgpix.c
+++ b/src/mame/drivers/dgpix.c
@@ -327,16 +327,16 @@ static MACHINE_DRIVER_START( dgpix )
running at 16.9MHz
*/
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(flashroms)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(dgpix)
diff --git a/src/mame/drivers/dietgo.c b/src/mame/drivers/dietgo.c
index d4228c256d7..2e4485d0636 100644
--- a/src/mame/drivers/dietgo.c
+++ b/src/mame/drivers/dietgo.c
@@ -210,14 +210,14 @@ static MACHINE_DRIVER_START( dietgo )
MDRV_CPU_ADD(H6280, XTAL_32_22MHz/4/3) /* Custom chip 45; XIN is 32.220MHZ/4, verified on pcb */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_PALETTE_LENGTH(1024)
MDRV_GFXDECODE(dietgo)
diff --git a/src/mame/drivers/discoboy.c b/src/mame/drivers/discoboy.c
index 58fc8129272..cf459e98668 100644
--- a/src/mame/drivers/discoboy.c
+++ b/src/mame/drivers/discoboy.c
@@ -486,12 +486,13 @@ static MACHINE_DRIVER_START( discoboy )
MDRV_CPU_VBLANK_INT(nmi_line_pulse,32)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(8*8, 512-1-8*8, 0+8, 256-1-8)
+
MDRV_GFXDECODE(discoboy)
MDRV_PALETTE_LENGTH(0x1000)
diff --git a/src/mame/drivers/diverboy.c b/src/mame/drivers/diverboy.c
index 5feedf3dc25..9207f572671 100644
--- a/src/mame/drivers/diverboy.c
+++ b/src/mame/drivers/diverboy.c
@@ -201,15 +201,16 @@ static MACHINE_DRIVER_START( diverboy )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(snd_readmem,snd_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(diverboy)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8+4, 40*8+1, 2*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x400)
MDRV_VIDEO_START(diverboy)
diff --git a/src/mame/drivers/djboy.c b/src/mame/drivers/djboy.c
index a8b4f53a3d9..2cbc80b517d 100644
--- a/src/mame/drivers/djboy.c
+++ b/src/mame/drivers/djboy.c
@@ -841,15 +841,15 @@ static MACHINE_DRIVER_START( djboy )
MDRV_CPU_IO_MAP(cpu2_port_am,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
-
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
+
MDRV_GFXDECODE(djboy)
MDRV_PALETTE_LENGTH(0x200)
diff --git a/src/mame/drivers/djmain.c b/src/mame/drivers/djmain.c
index 0c6c2576d83..c4ee5d164f9 100644
--- a/src/mame/drivers/djmain.c
+++ b/src/mame/drivers/djmain.c
@@ -1225,17 +1225,17 @@ static MACHINE_DRIVER_START( djmain )
MDRV_CPU_PROGRAM_MAP(memory_map, 0)
MDRV_CPU_VBLANK_INT(vb_interrupt, 1)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(djmain)
MDRV_MACHINE_RESET(djmain)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(12, 512-12-1, 0, 384-1)
+
MDRV_PALETTE_LENGTH(0x4440/4)
MDRV_GFXDECODE(djmain)
MDRV_VIDEO_START(djmain)
diff --git a/src/mame/drivers/dkong.c b/src/mame/drivers/dkong.c
index 4ec501d0807..4acad8dedf4 100644
--- a/src/mame/drivers/dkong.c
+++ b/src/mame/drivers/dkong.c
@@ -1552,9 +1552,10 @@ static MACHINE_DRIVER_START( dkong_base )
MDRV_MACHINE_RESET(dkong)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
+
MDRV_GFXDECODE(dkong)
MDRV_PALETTE_LENGTH(DK2B_PALETTE_LENGTH)
@@ -1633,9 +1634,10 @@ static MACHINE_DRIVER_START( dkong3 )
MDRV_MACHINE_RESET(dkong3)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
+
MDRV_GFXDECODE(dkong)
MDRV_PALETTE_LENGTH(DK3_PALETTE_LENGTH)
diff --git a/src/mame/drivers/dlair.c b/src/mame/drivers/dlair.c
index 391e017056a..162ee3a8731 100644
--- a/src/mame/drivers/dlair.c
+++ b/src/mame/drivers/dlair.c
@@ -810,7 +810,9 @@ static MACHINE_DRIVER_START( dlair )
MDRV_MACHINE_RESET(dlair)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_SELF_RENDER)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_SELF_RENDER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(59.94)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
@@ -849,7 +851,7 @@ static MACHINE_DRIVER_START( dleuro )
MDRV_MACHINE_RESET(dlair)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(50)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/dmndrby.c b/src/mame/drivers/dmndrby.c
index 61bbec9e8c3..15ade6b2f73 100644
--- a/src/mame/drivers/dmndrby.c
+++ b/src/mame/drivers/dmndrby.c
@@ -180,14 +180,14 @@ static MACHINE_DRIVER_START( dderby )
MDRV_CPU_PROGRAM_MAP(memmap,0)
MDRV_CPU_VBLANK_INT(dderby_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
+
MDRV_GFXDECODE(dmndrby)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/docastle.c b/src/mame/drivers/docastle.c
index a8dbee17e37..b85abc2ef29 100644
--- a/src/mame/drivers/docastle.c
+++ b/src/mame/drivers/docastle.c
@@ -640,14 +640,15 @@ static MACHINE_DRIVER_START( docastle )
MDRV_CPU_PROGRAM_MAP(docastle_map3, 0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse, 1)
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 4*8, 28*8-1)
+
MDRV_GFXDECODE(docastle)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/dogfgt.c b/src/mame/drivers/dogfgt.c
index 10ff684e1ff..7261eb6a071 100644
--- a/src/mame/drivers/dogfgt.c
+++ b/src/mame/drivers/dogfgt.c
@@ -248,15 +248,16 @@ static MACHINE_DRIVER_START( dogfgt )
MDRV_CPU_ADD(M6502, 1500000) /* 1.5 MHz ???? */
MDRV_CPU_PROGRAM_MAP(sub_readmem,sub_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(dogfgt)
MDRV_PALETTE_LENGTH(16+64)
diff --git a/src/mame/drivers/dominob.c b/src/mame/drivers/dominob.c
index d1eeb652316..bf003ba50dd 100644
--- a/src/mame/drivers/dominob.c
+++ b/src/mame/drivers/dominob.c
@@ -256,14 +256,14 @@ static MACHINE_DRIVER_START( dominob )
MDRV_CPU_IO_MAP(portmap,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(dominob)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/dooyong.c b/src/mame/drivers/dooyong.c
index 0d9fa3d62b1..eec8c27f010 100644
--- a/src/mame/drivers/dooyong.c
+++ b/src/mame/drivers/dooyong.c
@@ -983,16 +983,18 @@ static MACHINE_DRIVER_START( lastday )
/* audio CPU */ /* ??? */
MDRV_CPU_PROGRAM_MAP(lastday_sound_readmem,lastday_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(lastday)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(lastday)
MDRV_PALETTE_LENGTH(1024)
@@ -1015,16 +1017,18 @@ static MACHINE_DRIVER_START( gulfstrm )
/* audio CPU */ /* ??? */
MDRV_CPU_PROGRAM_MAP(lastday_sound_readmem,lastday_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_START(lastday)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(lastday)
MDRV_PALETTE_LENGTH(1024)
@@ -1047,16 +1051,18 @@ static MACHINE_DRIVER_START( pollux )
/* audio CPU */ /* ??? */
MDRV_CPU_PROGRAM_MAP(pollux_sound_readmem,pollux_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(lastday)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(lastday)
MDRV_PALETTE_LENGTH(1024)
@@ -1079,16 +1085,18 @@ static MACHINE_DRIVER_START( bluehawk )
/* audio CPU */ /* ??? */
MDRV_CPU_PROGRAM_MAP(bluehawk_sound_readmem,bluehawk_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(lastday)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(bluehawk)
MDRV_PALETTE_LENGTH(1024)
@@ -1111,16 +1119,18 @@ static MACHINE_DRIVER_START( flytiger )
/* audio CPU */ /* ??? */
MDRV_CPU_PROGRAM_MAP(bluehawk_sound_readmem,bluehawk_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(lastday)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(flytiger)
MDRV_PALETTE_LENGTH(1024)
@@ -1143,14 +1153,14 @@ static MACHINE_DRIVER_START( primella )
/* audio CPU */ /* ??? */
MDRV_CPU_PROGRAM_MAP(bluehawk_sound_readmem,bluehawk_sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 0*8, 32*8-1 )
+
MDRV_GFXDECODE(primella)
MDRV_PALETTE_LENGTH(1024)
@@ -1181,14 +1191,16 @@ static MACHINE_DRIVER_START( rshark )
/* audio CPU */ /* measured on super-x */
MDRV_CPU_PROGRAM_MAP(bluehawk_sound_readmem,bluehawk_sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(rshark)
MDRV_PALETTE_LENGTH(2048)
@@ -1211,14 +1223,16 @@ static MACHINE_DRIVER_START( superx ) // dif mem map
/* audio CPU */ /* measured on super-x */
MDRV_CPU_PROGRAM_MAP(bluehawk_sound_readmem,bluehawk_sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(rshark)
MDRV_PALETTE_LENGTH(2048)
@@ -1241,14 +1255,16 @@ static MACHINE_DRIVER_START( popbingo )
/* audio CPU */ /* measured on super-x */
MDRV_CPU_PROGRAM_MAP(bluehawk_sound_readmem,bluehawk_sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(popbingo)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/dorachan.c b/src/mame/drivers/dorachan.c
index 39821f8b195..15297b6a049 100644
--- a/src/mame/drivers/dorachan.c
+++ b/src/mame/drivers/dorachan.c
@@ -216,10 +216,9 @@ static MACHINE_DRIVER_START( dorachan )
MDRV_CPU_VBLANK_INT(irq0_line_hold,2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(dorachan)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 31*8-1)
diff --git a/src/mame/drivers/dotrikun.c b/src/mame/drivers/dotrikun.c
index b26db063d46..2fcd275f138 100644
--- a/src/mame/drivers/dotrikun.c
+++ b/src/mame/drivers/dotrikun.c
@@ -70,13 +70,12 @@ static MACHINE_DRIVER_START( dotrikun )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(dotrikun)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 192-1)
diff --git a/src/mame/drivers/dragrace.c b/src/mame/drivers/dragrace.c
index 6767a6aea8c..e0450160c7e 100644
--- a/src/mame/drivers/dragrace.c
+++ b/src/mame/drivers/dragrace.c
@@ -328,15 +328,16 @@ static MACHINE_DRIVER_START( dragrace )
MDRV_CPU_PROGRAM_MAP(dragrace_readmem, dragrace_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 4)
MDRV_WATCHDOG_VBLANK_INIT(8)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_MACHINE_RESET(dragrace)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
+
MDRV_GFXDECODE(dragrace)
MDRV_PALETTE_LENGTH(16)
MDRV_PALETTE_INIT(dragrace)
diff --git a/src/mame/drivers/dreamwld.c b/src/mame/drivers/dreamwld.c
index 4af0f6201e4..4f951477768 100644
--- a/src/mame/drivers/dreamwld.c
+++ b/src/mame/drivers/dreamwld.c
@@ -450,11 +450,10 @@ static MACHINE_DRIVER_START( dreamwld )
MDRV_CPU_PROGRAM_MAP(dreamwld_map, 0)
MDRV_CPU_VBLANK_INT(irq4_line_hold,1) // 4, 5, or 6, all point to the same place
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512,256)
MDRV_SCREEN_VISIBLE_AREA(0, 304-1, 0, 224-1)
diff --git a/src/mame/drivers/drgnmst.c b/src/mame/drivers/drgnmst.c
index 6ca91206cac..beaf4c79e29 100644
--- a/src/mame/drivers/drgnmst.c
+++ b/src/mame/drivers/drgnmst.c
@@ -366,15 +366,16 @@ static MACHINE_DRIVER_START( drgnmst )
/* Program and Data Maps are internal to the MCU */
MDRV_CPU_IO_MAP(drgnmst_sound_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(drgnmst)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, 56*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x2000)
MDRV_VIDEO_START(drgnmst)
diff --git a/src/mame/drivers/dribling.c b/src/mame/drivers/dribling.c
index 2042e769647..21f7f815d81 100644
--- a/src/mame/drivers/dribling.c
+++ b/src/mame/drivers/dribling.c
@@ -303,16 +303,18 @@ static MACHINE_DRIVER_START( dribling )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(dribling_irq_gen,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(dribling)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 40, 255)
+
MDRV_PALETTE_LENGTH(256)
MDRV_PALETTE_INIT(dribling)
diff --git a/src/mame/drivers/drmicro.c b/src/mame/drivers/drmicro.c
index a3f23175e46..b4e9b10193f 100644
--- a/src/mame/drivers/drmicro.c
+++ b/src/mame/drivers/drmicro.c
@@ -234,15 +234,16 @@ static MACHINE_DRIVER_START( drmicro )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(drmicro_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(drmicro)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/drtomy.c b/src/mame/drivers/drtomy.c
index c3eeca5fbca..5239db89fe4 100644
--- a/src/mame/drivers/drtomy.c
+++ b/src/mame/drivers/drtomy.c
@@ -254,14 +254,14 @@ static MACHINE_DRIVER_START( drtomy )
MDRV_CPU_PROGRAM_MAP(drtomy_map,0)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
+
MDRV_GFXDECODE(drtomy)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/drw80pkr.c b/src/mame/drivers/drw80pkr.c
index 9af84919654..6870d9ecc0c 100644
--- a/src/mame/drivers/drw80pkr.c
+++ b/src/mame/drivers/drw80pkr.c
@@ -225,11 +225,11 @@ static MACHINE_DRIVER_START( drw80pkr )
MDRV_CPU_IO_MAP(drw80pkr_io_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE((31+1)*8, (31+1)*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 24*8-1, 0*8, 27*8-1)
diff --git a/src/mame/drivers/dunhuang.c b/src/mame/drivers/dunhuang.c
index 8651adc73d9..6846b2cdf57 100644
--- a/src/mame/drivers/dunhuang.c
+++ b/src/mame/drivers/dunhuang.c
@@ -678,15 +678,16 @@ static MACHINE_DRIVER_START( dunhuang )
MDRV_CPU_IO_MAP(dunhuang_io_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_WATCHDOG_TIME_INIT(ATTOTIME_IN_SEC(5))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0+8, 512-8-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(dunhuang)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/dwarfd.c b/src/mame/drivers/dwarfd.c
index 6b6b635ce9b..1f9dc1fb3e4 100644
--- a/src/mame/drivers/dwarfd.c
+++ b/src/mame/drivers/dwarfd.c
@@ -691,14 +691,15 @@ static MACHINE_DRIVER_START( dwarfd )
MDRV_CPU_IO_MAP(io_map, 0)
MDRV_CPU_VBLANK_INT(dwarfd_interrupt,NUM_LINES+4) //16 +vblank + 1 unused
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(272*2, 200)
MDRV_SCREEN_VISIBLE_AREA(0, 272*2-1, 0, 200-1)
+
MDRV_GFXDECODE(dwarfd)
MDRV_PALETTE_LENGTH(0x100)
MDRV_PALETTE_INIT(dwarfd)
diff --git a/src/mame/drivers/dynadice.c b/src/mame/drivers/dynadice.c
index 661d13d8118..5d9cf178e8a 100644
--- a/src/mame/drivers/dynadice.c
+++ b/src/mame/drivers/dynadice.c
@@ -205,13 +205,12 @@ static MACHINE_DRIVER_START( dynadice )
MDRV_CPU_PROGRAM_MAP(dynadice_sound_map,0)
MDRV_CPU_IO_MAP(dynadice_sound_io_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256+16, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 34*8-1, 3*8, 28*8-1)
diff --git a/src/mame/drivers/dynax.c b/src/mame/drivers/dynax.c
index 30a3efce9d7..ac5636c5003 100644
--- a/src/mame/drivers/dynax.c
+++ b/src/mame/drivers/dynax.c
@@ -3607,17 +3607,18 @@ static MACHINE_DRIVER_START( hanamai )
MDRV_CPU_IO_MAP(hanamai_io_map,0)
MDRV_CPU_VBLANK_INT(sprtmtch_vblank_interrupt,1) /* IM 0 needs an opcode on the data bus */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(adpcm)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1-4, 16+8, 255-8)
+
MDRV_PALETTE_LENGTH(512)
MDRV_PALETTE_INIT(sprtmtch) // static palette
@@ -3661,17 +3662,18 @@ static MACHINE_DRIVER_START( hnoridur )
MDRV_CPU_IO_MAP(hnoridur_io_map,0)
MDRV_CPU_VBLANK_INT(sprtmtch_vblank_interrupt,1) /* IM 0 needs an opcode on the data bus */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(adpcm)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1-4, 16, 256-1)
+
MDRV_PALETTE_LENGTH(16*256)
MDRV_VIDEO_START(hnoridur)
@@ -3714,16 +3716,16 @@ static MACHINE_DRIVER_START( sprtmtch )
MDRV_CPU_IO_MAP(sprtmtch_io_map,0)
MDRV_CPU_VBLANK_INT(sprtmtch_vblank_interrupt,1) /* IM 0 needs an opcode on the data bus */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 256-1)
+
MDRV_PALETTE_LENGTH(512)
MDRV_PALETTE_INIT(sprtmtch) // static palette
@@ -3754,16 +3756,16 @@ static MACHINE_DRIVER_START( mjfriday )
MDRV_CPU_IO_MAP(mjfriday_io_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-1)
+
MDRV_PALETTE_LENGTH(512)
MDRV_PALETTE_INIT(sprtmtch) // static palette
@@ -3827,7 +3829,8 @@ static MACHINE_DRIVER_START( yarunara )
MDRV_NVRAM_HANDLER(generic_0fill)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_VISIBLE_AREA(0, 336-1, 8, 256-1-8-1)
MACHINE_DRIVER_END
@@ -3900,18 +3903,17 @@ static MACHINE_DRIVER_START( jantouki )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(512)
MDRV_DEFAULT_LAYOUT(layout_dualhuov)
- MDRV_SCREEN_ADD("top", 0x000)
+ MDRV_SCREEN_ADD("top", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 256-1)
- MDRV_SCREEN_ADD("bottom", 0x000)
+ MDRV_SCREEN_ADD("bottom", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
@@ -4057,14 +4059,14 @@ static MACHINE_DRIVER_START( htengoku )
MDRV_NVRAM_HANDLER(generic_0fill)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 336-1, 0+8, 256-1-8)
+
MDRV_PALETTE_LENGTH(16*256)
MDRV_VIDEO_START(htengoku)
@@ -4112,16 +4114,16 @@ static MACHINE_DRIVER_START( tenkai )
MDRV_CPU_IO_MAP(tenkai_io_map,0)
MDRV_CPU_VBLANK_INT(tenkai_interrupt,3)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 4, 255-8-4)
+
MDRV_PALETTE_LENGTH(16*256)
MDRV_VIDEO_START(mjelctrn)
diff --git a/src/mame/drivers/dynduke.c b/src/mame/drivers/dynduke.c
index b12c1e48135..131611a02ec 100644
--- a/src/mame/drivers/dynduke.c
+++ b/src/mame/drivers/dynduke.c
@@ -278,17 +278,20 @@ static MACHINE_DRIVER_START( dynduke )
SEIBU_SOUND_SYSTEM_CPU(14318180/4)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(60)
MDRV_MACHINE_RESET(seibu_sound_2)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(dynduke)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/egghunt.c b/src/mame/drivers/egghunt.c
index 81eb9a20c9d..b9174536796 100644
--- a/src/mame/drivers/egghunt.c
+++ b/src/mame/drivers/egghunt.c
@@ -394,16 +394,16 @@ static MACHINE_DRIVER_START( egghunt )
MDRV_CPU_ADD(Z80,12000000/2) /* 6 MHz ?*/
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(egghunt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, 56*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(egghunt)
MDRV_PALETTE_LENGTH(0x800)
diff --git a/src/mame/drivers/embargo.c b/src/mame/drivers/embargo.c
index 8c1c78bcba3..b228a841558 100644
--- a/src/mame/drivers/embargo.c
+++ b/src/mame/drivers/embargo.c
@@ -237,10 +237,9 @@ static MACHINE_DRIVER_START( embargo )
MDRV_MACHINE_START(embargo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(embargo)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
diff --git a/src/mame/drivers/enigma2.c b/src/mame/drivers/enigma2.c
index 8fff1b803b8..0b3ebecff4a 100644
--- a/src/mame/drivers/enigma2.c
+++ b/src/mame/drivers/enigma2.c
@@ -573,10 +573,9 @@ static MACHINE_DRIVER_START( enigma2 )
MDRV_MACHINE_RESET(enigma2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(enigma2)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
@@ -604,10 +603,9 @@ static MACHINE_DRIVER_START( enigma2a )
MDRV_MACHINE_RESET(enigma2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(enigma2a)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
diff --git a/src/mame/drivers/eolith.c b/src/mame/drivers/eolith.c
index d8123183052..005f2b115c8 100644
--- a/src/mame/drivers/eolith.c
+++ b/src/mame/drivers/eolith.c
@@ -262,13 +262,12 @@ static MACHINE_DRIVER_START( eolith45 )
/* sound cpu */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(eolith)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
diff --git a/src/mame/drivers/eolith16.c b/src/mame/drivers/eolith16.c
index 92bdd223cdd..be1e4a3e874 100644
--- a/src/mame/drivers/eolith16.c
+++ b/src/mame/drivers/eolith16.c
@@ -167,16 +167,16 @@ static MACHINE_DRIVER_START( eolith16 )
MDRV_CPU_PROGRAM_MAP(eolith16_map,0)
MDRV_CPU_VBLANK_INT(eolith_speedup,262)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(eolith16_eeprom)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 199)
+
MDRV_PALETTE_LENGTH(256)
MDRV_PALETTE_INIT(eolith16)
diff --git a/src/mame/drivers/epos.c b/src/mame/drivers/epos.c
index 5a507213c5e..89166994993 100644
--- a/src/mame/drivers/epos.c
+++ b/src/mame/drivers/epos.c
@@ -352,12 +352,12 @@ static MACHINE_DRIVER_START( epos )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(epos)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(272, 241)
MDRV_SCREEN_VISIBLE_AREA(0, 271, 0, 235)
@@ -376,12 +376,12 @@ static MACHINE_DRIVER_START( dealer )
MDRV_CPU_IO_MAP(dealer_readport,dealer_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(epos)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(272, 241)
MDRV_SCREEN_VISIBLE_AREA(0, 271, 0, 235)
diff --git a/src/mame/drivers/eprom.c b/src/mame/drivers/eprom.c
index aecbf3d31a6..968a93d65a8 100644
--- a/src/mame/drivers/eprom.c
+++ b/src/mame/drivers/eprom.c
@@ -431,11 +431,11 @@ static MACHINE_DRIVER_START( eprom )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(eprom)
MDRV_PALETTE_LENGTH(2048)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses a SYNGEN chip to generate video signals */
@@ -462,11 +462,11 @@ static MACHINE_DRIVER_START( klaxp )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(eprom)
MDRV_PALETTE_LENGTH(2048)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses a SYNGEN chip to generate video signals */
@@ -492,11 +492,11 @@ static MACHINE_DRIVER_START( guts )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(guts)
MDRV_PALETTE_LENGTH(2048)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses a SYNGEN chip to generate video signals */
diff --git a/src/mame/drivers/equites.c b/src/mame/drivers/equites.c
index 8d1820b3030..f2bf0e1ef00 100644
--- a/src/mame/drivers/equites.c
+++ b/src/mame/drivers/equites.c
@@ -668,14 +668,16 @@ static MACHINE_DRIVER_START( equites )
MDRV_CPU_PROGRAM_MAP(equites_map,0)
MDRV_CPU_VBLANK_INT(equites_interrupt, 2)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256 +BMPAD*2, 256 +BMPAD*2)
MDRV_SCREEN_VISIBLE_AREA(0 +BMPAD, 256-1 +BMPAD, 24 +BMPAD, 232-1 +BMPAD)
+
MDRV_PALETTE_LENGTH(384)
MDRV_GFXDECODE(equites)
@@ -695,15 +697,18 @@ static MACHINE_DRIVER_START( splndrbt )
MDRV_CPU_PROGRAM_MAP(splndrbt_map, 0)
MDRV_CPU_VBLANK_INT(splndrbt_interrupt, 2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
MDRV_MACHINE_RESET(splndrbt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 64, 256-1)
+
MDRV_PALETTE_LENGTH(1536)
MDRV_GFXDECODE(splndrbt)
diff --git a/src/mame/drivers/ertictac.c b/src/mame/drivers/ertictac.c
index b51303f0f8d..5a4df22771e 100644
--- a/src/mame/drivers/ertictac.c
+++ b/src/mame/drivers/ertictac.c
@@ -383,15 +383,16 @@ static MACHINE_DRIVER_START( ertictac )
MDRV_CPU_PROGRAM_MAP(ertictac_map,0)
MDRV_CPU_VBLANK_INT(ertictac_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(ertictac)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 255)
+
MDRV_PALETTE_LENGTH(256)
MDRV_PALETTE_INIT(ertictac)
diff --git a/src/mame/drivers/esd16.c b/src/mame/drivers/esd16.c
index b13f77821df..f5584e976d0 100644
--- a/src/mame/drivers/esd16.c
+++ b/src/mame/drivers/esd16.c
@@ -536,14 +536,14 @@ static MACHINE_DRIVER_START( multchmp )
MDRV_CPU_IO_MAP(multchmp_sound_readport,multchmp_sound_writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,32) /* IRQ By Main CPU */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x140, 0x100)
MDRV_SCREEN_VISIBLE_AREA(0, 0x140-1, 0+8, 0x100-8-1)
+
MDRV_GFXDECODE(esd16)
MDRV_PALETTE_LENGTH(768)
diff --git a/src/mame/drivers/esh.c b/src/mame/drivers/esh.c
index 51ed6749df5..717bc088d6d 100644
--- a/src/mame/drivers/esh.c
+++ b/src/mame/drivers/esh.c
@@ -292,8 +292,8 @@ static MACHINE_DRIVER_START( esh )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/espial.c b/src/mame/drivers/espial.c
index 18201b820b1..d777715fc99 100644
--- a/src/mame/drivers/espial.c
+++ b/src/mame/drivers/espial.c
@@ -322,16 +322,16 @@ static MACHINE_DRIVER_START( espial )
MDRV_CPU_IO_MAP(0,sound_writeport)
MDRV_CPU_VBLANK_INT(espial_sound_nmi_gen,4)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(espial)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(espial)
MDRV_PALETTE_LENGTH(256)
@@ -354,6 +354,7 @@ static MACHINE_DRIVER_START( netwars )
MDRV_CPU_PROGRAM_MAP(netwars_readmem,netwars_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_SIZE(32*8, 64*8)
MDRV_VIDEO_START(netwars)
diff --git a/src/mame/drivers/ettrivia.c b/src/mame/drivers/ettrivia.c
index 59eda521472..7de325b0a2f 100644
--- a/src/mame/drivers/ettrivia.c
+++ b/src/mame/drivers/ettrivia.c
@@ -232,16 +232,16 @@ static MACHINE_DRIVER_START( ettrivia )
MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT(ettrivia_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(ettrivia)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/exctsccr.c b/src/mame/drivers/exctsccr.c
index 23705eaf8e5..1c4a2f2f935 100644
--- a/src/mame/drivers/exctsccr.c
+++ b/src/mame/drivers/exctsccr.c
@@ -397,14 +397,14 @@ static MACHINE_DRIVER_START( exctsccr )
MDRV_CPU_PROGRAM_MAP(mcu_map,0)
#endif
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(exctsccr)
MDRV_PALETTE_LENGTH(48*8)
@@ -445,14 +445,14 @@ static MACHINE_DRIVER_START( exctsccb )
MDRV_CPU_ADD(Z80, 3072000) /* 3.072 MHz ? */
MDRV_CPU_PROGRAM_MAP(bl_sound_readmem,bl_sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(exctsccr)
MDRV_PALETTE_LENGTH(48*8)
diff --git a/src/mame/drivers/exedexes.c b/src/mame/drivers/exedexes.c
index 004524c5865..79704e11954 100644
--- a/src/mame/drivers/exedexes.c
+++ b/src/mame/drivers/exedexes.c
@@ -232,14 +232,16 @@ static MACHINE_DRIVER_START( exedexes )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(exedexes)
MDRV_PALETTE_LENGTH(64*4+64*4+16*16+16*16)
diff --git a/src/mame/drivers/exerion.c b/src/mame/drivers/exerion.c
index 7ba91038f76..d35ccd53d88 100644
--- a/src/mame/drivers/exerion.c
+++ b/src/mame/drivers/exerion.c
@@ -287,9 +287,10 @@ static MACHINE_DRIVER_START( exerion )
MDRV_CPU_PROGRAM_MAP(sub_map,0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(EXERION_PIXEL_CLOCK, EXERION_HTOTAL, EXERION_HBEND, EXERION_HBSTART, EXERION_VTOTAL, EXERION_VBEND, EXERION_VBSTART)
+
MDRV_GFXDECODE(exerion)
MDRV_PALETTE_LENGTH(256*3)
diff --git a/src/mame/drivers/exidy.c b/src/mame/drivers/exidy.c
index 6b87c266081..99d897ef6b2 100644
--- a/src/mame/drivers/exidy.c
+++ b/src/mame/drivers/exidy.c
@@ -785,12 +785,13 @@ static MACHINE_DRIVER_START( base )
MDRV_CPU_VBLANK_INT(exidy_vblank_interrupt,1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_ALWAYS_UPDATE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
MDRV_VIDEO_START(exidy)
MDRV_VIDEO_UPDATE(exidy)
MDRV_GFXDECODE(exidy)
MDRV_PALETTE_LENGTH(8)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(EXIDY_PIXEL_CLOCK, EXIDY_HTOTAL, EXIDY_HBEND, EXIDY_HBSTART, EXIDY_VTOTAL, EXIDY_VBEND, EXIDY_VBSTART)
diff --git a/src/mame/drivers/exidy440.c b/src/mame/drivers/exidy440.c
index b5627555573..00135382ee0 100644
--- a/src/mame/drivers/exidy440.c
+++ b/src/mame/drivers/exidy440.c
@@ -1034,9 +1034,10 @@ static MACHINE_DRIVER_START( exidy440 )
MDRV_NVRAM_HANDLER(exidy440)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(EXIDY440_PIXEL_CLOCK, EXIDY440_HTOTAL, EXIDY440_HBEND, EXIDY440_HBSTART, EXIDY440_VTOTAL, EXIDY440_VBEND, EXIDY440_VBSTART)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(exidy440)
@@ -1054,6 +1055,7 @@ static MACHINE_DRIVER_START( topsecex )
MDRV_IMPORT_FROM(exidy440)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_RAW_PARAMS(EXIDY440_PIXEL_CLOCK, EXIDY440_HTOTAL, EXIDY440_HBEND, EXIDY440_HBSTART, EXIDY440_VTOTAL, EXIDY440_VBEND, TOPSECEX_VBSTART)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/expro02.c b/src/mame/drivers/expro02.c
index 36c6a04443c..126f9a499e5 100644
--- a/src/mame/drivers/expro02.c
+++ b/src/mame/drivers/expro02.c
@@ -321,14 +321,14 @@ static MACHINE_DRIVER_START( galsnew )
/* CALC01 MCU @ 16Mhz (unknown type, simulated) */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-32-1)
+
MDRV_GFXDECODE(1x4bit_1x4bit)
MDRV_PALETTE_LENGTH(2048 + 32768)
MDRV_MACHINE_RESET( galsnew )
diff --git a/src/mame/drivers/exprraid.c b/src/mame/drivers/exprraid.c
index 4ce03e208b1..0ad84741d32 100644
--- a/src/mame/drivers/exprraid.c
+++ b/src/mame/drivers/exprraid.c
@@ -312,14 +312,15 @@ static MACHINE_DRIVER_START( exprraid )
MDRV_CPU_ADD(M6809, 2000000) /* 2 MHz ??? */
MDRV_CPU_PROGRAM_MAP(slave_map, 0)
/* IRQs are caused by the YM3526 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(exprraid)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/exterm.c b/src/mame/drivers/exterm.c
index 9fd61fdec7a..b30fb101e3d 100644
--- a/src/mame/drivers/exterm.c
+++ b/src/mame/drivers/exterm.c
@@ -497,10 +497,9 @@ static MACHINE_DRIVER_START( exterm )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(2048+32768)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(40000000/8, 318, 0, 256, 264, 0, 240)
diff --git a/src/mame/drivers/exzisus.c b/src/mame/drivers/exzisus.c
index 26d686c1eda..b7e800d4bd8 100644
--- a/src/mame/drivers/exzisus.c
+++ b/src/mame/drivers/exzisus.c
@@ -341,15 +341,16 @@ static MACHINE_DRIVER_START( exzisus )
MDRV_CPU_PROGRAM_MAP(cpuc_readmem,cpuc_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(exzisus)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/f-32.c b/src/mame/drivers/f-32.c
index 6096e966fed..73a21961d17 100644
--- a/src/mame/drivers/f-32.c
+++ b/src/mame/drivers/f-32.c
@@ -149,13 +149,12 @@ static MACHINE_DRIVER_START( mosaicf2 )
MDRV_CPU_IO_MAP(mosaicf2_io,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 223)
diff --git a/src/mame/drivers/f1gp.c b/src/mame/drivers/f1gp.c
index 8eb98847ebf..1560fc09dde 100644
--- a/src/mame/drivers/f1gp.c
+++ b/src/mame/drivers/f1gp.c
@@ -579,14 +579,15 @@ static MACHINE_DRIVER_START( f1gp )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(f1gp)
MDRV_PALETTE_LENGTH(2048)
@@ -617,15 +618,15 @@ static MACHINE_DRIVER_START( f1gpb )
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)
/* NO sound CPU */
-
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(f1gp)
MDRV_PALETTE_LENGTH(2048)
@@ -651,6 +652,7 @@ static MACHINE_DRIVER_START( f1gp2 )
/* video hardware */
MDRV_GFXDECODE(f1gp2)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
MDRV_VIDEO_START(f1gp2)
diff --git a/src/mame/drivers/fantland.c b/src/mame/drivers/fantland.c
index 530d0852aa7..0489d460f25 100644
--- a/src/mame/drivers/fantland.c
+++ b/src/mame/drivers/fantland.c
@@ -820,18 +820,18 @@ static MACHINE_DRIVER_START( fantland )
MDRV_CPU_PERIODIC_INT(fantland_sound_irq, 8000)
// NMI when soundlatch is written
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(fantland)
MDRV_INTERLEAVE(8000/60) // sound irq must feed the DAC at 8kHz
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(352,256)
MDRV_SCREEN_VISIBLE_AREA(0, 352-1, 0, 256-1)
+
MDRV_GFXDECODE(fantland)
MDRV_PALETTE_LENGTH(256)
@@ -871,16 +871,16 @@ static MACHINE_DRIVER_START( galaxygn )
MDRV_CPU_IO_MAP(fantland_sound_iomap, 0)
// IRQ by YM2151, NMI when soundlatch is written
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(fantland)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(352,256)
MDRV_SCREEN_VISIBLE_AREA(0, 352-1, 0, 256-1)
+
MDRV_GFXDECODE(fantland)
MDRV_PALETTE_LENGTH(256)
@@ -923,16 +923,16 @@ static MACHINE_DRIVER_START( borntofi )
MDRV_CPU_ADD(I8088, 18432000/3) // 8088 - AMD P8088-2 CPU, running at 6.144MHz [18.432/3]
MDRV_CPU_PROGRAM_MAP(borntofi_sound_map, 0)
- MDRV_SCREEN_REFRESH_RATE(54) // 54 Hz
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(borntofi)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(54) // 54 Hz
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(352,256)
MDRV_SCREEN_VISIBLE_AREA(0, 352-1, 0, 256-1)
+
MDRV_GFXDECODE(fantland)
MDRV_PALETTE_LENGTH(256)
@@ -970,16 +970,16 @@ static MACHINE_DRIVER_START( wheelrun )
MDRV_CPU_PROGRAM_MAP(wheelrun_sound_map, 0)
// IRQ by YM3526, NMI when soundlatch is written
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(fantland)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256,224)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 224-1)
+
MDRV_GFXDECODE(fantland)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/fastfred.c b/src/mame/drivers/fastfred.c
index 0e5a9d05891..a6ec5ce4be2 100644
--- a/src/mame/drivers/fastfred.c
+++ b/src/mame/drivers/fastfred.c
@@ -565,14 +565,14 @@ static MACHINE_DRIVER_START( fastfred )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,4)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) //CLOCK/16/60
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(fastfred)
MDRV_PALETTE_LENGTH(32*8)
diff --git a/src/mame/drivers/fastlane.c b/src/mame/drivers/fastlane.c
index 2555d1aa49e..a0c9047ba7d 100644
--- a/src/mame/drivers/fastlane.c
+++ b/src/mame/drivers/fastlane.c
@@ -281,14 +281,14 @@ static MACHINE_DRIVER_START( fastlane )
MDRV_CPU_PROGRAM_MAP(fastlane_readmem,fastlane_writemem)
MDRV_CPU_VBLANK_INT(fastlane_interrupt,16) /* 1 IRQ + ??? NMI (generated by the 007121) */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(37*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 35*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(fastlane)
MDRV_PALETTE_LENGTH(1024*16)
diff --git a/src/mame/drivers/fcombat.c b/src/mame/drivers/fcombat.c
index 685ffb93230..239681c4c31 100644
--- a/src/mame/drivers/fcombat.c
+++ b/src/mame/drivers/fcombat.c
@@ -318,9 +318,10 @@ static MACHINE_DRIVER_START( fcombat )
MDRV_CPU_PROGRAM_MAP(fcombat_readmem2,fcombat_writemem2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(FCOMBAT_PIXEL_CLOCK, FCOMBAT_HTOTAL, FCOMBAT_HBEND, FCOMBAT_HBSTART, FCOMBAT_VTOTAL, FCOMBAT_VBEND, FCOMBAT_VBSTART)
+
MDRV_GFXDECODE(fcombat)
MDRV_PALETTE_LENGTH(256*3)
diff --git a/src/mame/drivers/fcrash.c b/src/mame/drivers/fcrash.c
index 824967cb9c6..9fa5c30f207 100644
--- a/src/mame/drivers/fcrash.c
+++ b/src/mame/drivers/fcrash.c
@@ -330,14 +330,14 @@ static MACHINE_DRIVER_START( fcrash )
// /* audio CPU */
// MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
+
MDRV_GFXDECODE(cps1)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/fgoal.c b/src/mame/drivers/fgoal.c
index 62cd1de93e5..5bc0b35a675 100644
--- a/src/mame/drivers/fgoal.c
+++ b/src/mame/drivers/fgoal.c
@@ -368,13 +368,14 @@ static MACHINE_DRIVER_START( fgoal )
MDRV_CPU_PROGRAM_MAP(cpu_map, 0)
MDRV_MACHINE_RESET(fgoal)
- MDRV_SCREEN_REFRESH_RATE(60)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 263)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 16, 255)
+
MDRV_GFXDECODE(fgoal)
MDRV_PALETTE_LENGTH(128 + 16 + 1)
diff --git a/src/mame/drivers/filetto.c b/src/mame/drivers/filetto.c
index c2ecae19b99..58b9665cdc8 100644
--- a/src/mame/drivers/filetto.c
+++ b/src/mame/drivers/filetto.c
@@ -742,13 +742,13 @@ static MACHINE_DRIVER_START( filetto )
MDRV_GFXDECODE(filetto)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(640, 480)
MDRV_SCREEN_VISIBLE_AREA(0*8, 640-1, 0*8, 480-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_MACHINE_RESET(filetto)
diff --git a/src/mame/drivers/finalizr.c b/src/mame/drivers/finalizr.c
index d947bc7a6a4..ecd7acf3f40 100644
--- a/src/mame/drivers/finalizr.c
+++ b/src/mame/drivers/finalizr.c
@@ -414,14 +414,14 @@ static MACHINE_DRIVER_START( finalizr )
MDRV_CPU_PROGRAM_MAP(i8039_readmem,i8039_writemem)
MDRV_CPU_IO_MAP(i8039_readport,i8039_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 35*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(finalizr)
MDRV_PALETTE_LENGTH(2*16*16)
diff --git a/src/mame/drivers/findout.c b/src/mame/drivers/findout.c
index e09ae2858a5..95e15b672a9 100644
--- a/src/mame/drivers/findout.c
+++ b/src/mame/drivers/findout.c
@@ -448,17 +448,17 @@ static MACHINE_DRIVER_START( findout )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(findout)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(48, 511-48, 16, 255-16)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(generic_bitmapped)
diff --git a/src/mame/drivers/firebeat.c b/src/mame/drivers/firebeat.c
index 7f6dde89bfe..9edadf6a3c1 100644
--- a/src/mame/drivers/firebeat.c
+++ b/src/mame/drivers/firebeat.c
@@ -591,6 +591,7 @@ static void GCU_w(int chip, UINT32 offset, UINT32 data, UINT32 mem_mask)
COMBINE_DATA( &gcu[chip].visible_area );
if (ACCESSING_LSW32)
{
+ int numscreens = video_screen_count(Machine->config);
int screen = chip;
int width, height;
screen_state *state = &Machine->screen[screen];
@@ -604,7 +605,7 @@ static void GCU_w(int chip, UINT32 offset, UINT32 data, UINT32 mem_mask)
visarea.max_y = height-1;
// only try and update the screen if the driver says we have one
- if(Machine->config->screen[screen].tag)
+ if (screen < numscreens)
video_screen_configure(screen, visarea.max_x + 1, visarea.max_y + 1, &visarea, Machine->screen[screen].refresh);
}
break;
@@ -1995,21 +1996,19 @@ static MACHINE_DRIVER_START(firebeat)
MDRV_CPU_PROGRAM_MAP(firebeat_map, 0)
MDRV_CPU_VBLANK_INT(firebeat_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(firebeat)
MDRV_NVRAM_HANDLER(firebeat)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
- MDRV_PALETTE_LENGTH(32768)
-
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
+ MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(640, 480)
MDRV_SCREEN_VISIBLE_AREA(0, 639, 0, 479)
+ MDRV_PALETTE_LENGTH(32768)
+
MDRV_VIDEO_START(firebeat)
MDRV_VIDEO_UPDATE(firebeat)
@@ -2039,17 +2038,16 @@ static MACHINE_DRIVER_START(firebeat2)
MDRV_NVRAM_HANDLER(firebeat)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_PALETTE_LENGTH(32768)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_SIZE(640, 480)
MDRV_SCREEN_VISIBLE_AREA(0, 639, 0, 479)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
diff --git a/src/mame/drivers/firetrap.c b/src/mame/drivers/firetrap.c
index b639aa51fa3..244c015bcf8 100644
--- a/src/mame/drivers/firetrap.c
+++ b/src/mame/drivers/firetrap.c
@@ -583,15 +583,16 @@ static MACHINE_DRIVER_START( firetrap )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
/* IRQs are caused by the ADPCM chip */
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(firetrap)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(firetrap)
MDRV_PALETTE_LENGTH(256)
@@ -622,14 +623,15 @@ static MACHINE_DRIVER_START( firetpbl )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
/* IRQs are caused by the ADPCM chip */
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(firetrap)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/firetrk.c b/src/mame/drivers/firetrk.c
index fcf8c1b4e88..7191d02124b 100644
--- a/src/mame/drivers/firetrk.c
+++ b/src/mame/drivers/firetrk.c
@@ -1054,15 +1054,15 @@ static MACHINE_DRIVER_START( firetrk )
MDRV_CPU_VBLANK_INT(firetrk_interrupt, 1)
MDRV_WATCHDOG_VBLANK_INIT(5)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(firetrk)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(firetrk)
MDRV_PALETTE_INIT(firetrk)
diff --git a/src/mame/drivers/fitfight.c b/src/mame/drivers/fitfight.c
index abc5143c4a3..c38ec5e7547 100644
--- a/src/mame/drivers/fitfight.c
+++ b/src/mame/drivers/fitfight.c
@@ -762,15 +762,16 @@ static MACHINE_DRIVER_START( fitfight )
MDRV_CPU_IO_MAP(snd_io, 0)
MDRV_CPU_VBLANK_INT(snd_irq,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(fitfight)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(2*8, 39*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x800)
MDRV_VIDEO_START(fitfight)
@@ -788,15 +789,16 @@ static MACHINE_DRIVER_START( bbprot )
MDRV_CPU_PROGRAM_MAP(bbprot_main_map,0)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(prot)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(2*8, 39*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x2000)
MDRV_VIDEO_START(fitfight)
diff --git a/src/mame/drivers/flkatck.c b/src/mame/drivers/flkatck.c
index 56a0e9a9792..bcd1cfd713e 100644
--- a/src/mame/drivers/flkatck.c
+++ b/src/mame/drivers/flkatck.c
@@ -278,17 +278,18 @@ static MACHINE_DRIVER_START( flkatck )
MDRV_CPU_ADD(Z80,3579545) /* NEC D780C-1, 3.579545 MHz */
MDRV_CPU_PROGRAM_MAP(flkatck_readmem_sound,flkatck_writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(flkatck)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(37*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 35*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(flkatck)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/flower.c b/src/mame/drivers/flower.c
index 11cfc4da1f3..53d5b4f4b36 100644
--- a/src/mame/drivers/flower.c
+++ b/src/mame/drivers/flower.c
@@ -247,14 +247,14 @@ static MACHINE_DRIVER_START( flower )
MDRV_CPU_PROGRAM_MAP(flower_sound_cpu,0)
MDRV_CPU_PERIODIC_INT(sn_irq, 90) /* periodic interrupt, don't know about the frequency */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(34*8, 33*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 34*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(flower)
MDRV_PALETTE_INIT(flower)
diff --git a/src/mame/drivers/flstory.c b/src/mame/drivers/flstory.c
index c88c5c05c30..3032991b29b 100644
--- a/src/mame/drivers/flstory.c
+++ b/src/mame/drivers/flstory.c
@@ -694,17 +694,18 @@ static MACHINE_DRIVER_START( flstory )
MDRV_CPU_ADD(M68705,4000000) /* ??? */
MDRV_CPU_PROGRAM_MAP(flstory_m68705_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
MDRV_MACHINE_RESET(ta7630)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(flstory)
MDRV_PALETTE_LENGTH(512)
@@ -741,17 +742,18 @@ static MACHINE_DRIVER_START( onna34ro )
// MDRV_CPU_ADD(M68705,4000000) /* ??? */
// MDRV_CPU_PROGRAM_MAP(m68705_readmem,m68705_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
MDRV_MACHINE_RESET(ta7630)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(flstory)
MDRV_PALETTE_LENGTH(512)
@@ -788,17 +790,18 @@ static MACHINE_DRIVER_START( victnine )
// MDRV_CPU_ADD(M68705,4000000) /* ??? */
// MDRV_CPU_PROGRAM_MAP(m68705_readmem,m68705_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
MDRV_MACHINE_RESET(ta7630)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(flstory)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/flyball.c b/src/mame/drivers/flyball.c
index 3851bd04a27..8b0f7f56fb4 100644
--- a/src/mame/drivers/flyball.c
+++ b/src/mame/drivers/flyball.c
@@ -263,15 +263,15 @@ static MACHINE_DRIVER_START( flyball )
MDRV_CPU_PROGRAM_MAP(flyball_map, 0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(flyball)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
+
MDRV_GFXDECODE(flyball)
MDRV_PALETTE_LENGTH(4)
diff --git a/src/mame/drivers/foodf.c b/src/mame/drivers/foodf.c
index 73ce7c78c3a..1205784d4d6 100644
--- a/src/mame/drivers/foodf.c
+++ b/src/mame/drivers/foodf.c
@@ -382,11 +382,10 @@ static MACHINE_DRIVER_START( foodf )
MDRV_WATCHDOG_VBLANK_INIT(8)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(foodf)
MDRV_PALETTE_LENGTH(256)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/2, 384, 0, 256, 259, 0, 224)
diff --git a/src/mame/drivers/fortecar.c b/src/mame/drivers/fortecar.c
index 08be545f1f2..b51c99cab18 100644
--- a/src/mame/drivers/fortecar.c
+++ b/src/mame/drivers/fortecar.c
@@ -149,14 +149,14 @@ static MACHINE_DRIVER_START( fortecar )
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
+
MDRV_GFXDECODE(fortecar)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/freekick.c b/src/mame/drivers/freekick.c
index 4438024fbb1..4c312b08ac0 100644
--- a/src/mame/drivers/freekick.c
+++ b/src/mame/drivers/freekick.c
@@ -664,15 +664,16 @@ static MACHINE_DRIVER_START( base )
MDRV_CPU_PERIODIC_INT(irq0_line_hold, 50*3) //??
MDRV_CPU_VBLANK_INT(freekick_irqgen,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(freekick)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x200)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
diff --git a/src/mame/drivers/frogger.c b/src/mame/drivers/frogger.c
index c9a785925d7..bd249a1f949 100644
--- a/src/mame/drivers/frogger.c
+++ b/src/mame/drivers/frogger.c
@@ -236,8 +236,6 @@ static MACHINE_DRIVER_START( frogger )
MDRV_CPU_ADD_TAG("main", Z80, 18432000/6) /* 3.072 MHz */
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
- MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
-
MDRV_CPU_ADD(Z80,14318000/8)
/* audio CPU */ /* 1.78975 MHz */
MDRV_CPU_PROGRAM_MAP(frogger_sound_readmem,frogger_sound_writemem)
@@ -246,10 +244,12 @@ static MACHINE_DRIVER_START( frogger )
MDRV_MACHINE_RESET(scramble)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
+ MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(frogger)
MDRV_PALETTE_LENGTH(32+64+2+1) /* 32 for characters, 64 for stars, 2 for bullets, 1 for background */
diff --git a/src/mame/drivers/fromanc2.c b/src/mame/drivers/fromanc2.c
index e75eed53a79..25bf5883cdf 100644
--- a/src/mame/drivers/fromanc2.c
+++ b/src/mame/drivers/fromanc2.c
@@ -721,19 +721,18 @@ static MACHINE_DRIVER_START( fromanc2 )
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(fromanc2)
MDRV_PALETTE_LENGTH(4096)
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
@@ -774,19 +773,18 @@ static MACHINE_DRIVER_START( fromancr )
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(fromancr)
MDRV_PALETTE_LENGTH(4096)
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
@@ -823,20 +821,19 @@ static MACHINE_DRIVER_START( fromanc4 )
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(fromancr)
MDRV_PALETTE_LENGTH(4096)
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(2048, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/fromance.c b/src/mame/drivers/fromance.c
index e1f90f33ab6..f79522aaa55 100644
--- a/src/mame/drivers/fromance.c
+++ b/src/mame/drivers/fromance.c
@@ -1066,15 +1066,15 @@ static MACHINE_DRIVER_START( nekkyoku )
MDRV_CPU_PROGRAM_MAP(nekkyoku_readmem_sub,nekkyoku_writemem_sub)
MDRV_CPU_IO_MAP(nekkyoku_readport_sub,nekkyoku_writeport_sub)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(fromance)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
+
MDRV_GFXDECODE(fromance)
MDRV_PALETTE_LENGTH(1024)
@@ -1104,15 +1104,15 @@ static MACHINE_DRIVER_START( idolmj )
MDRV_CPU_PROGRAM_MAP(fromance_readmem_sub,fromance_writemem_sub)
MDRV_CPU_IO_MAP(fromance_readport_sub,idolmj_writeport_sub)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(fromance)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
+
MDRV_GFXDECODE(fromance)
MDRV_PALETTE_LENGTH(2048)
@@ -1142,15 +1142,15 @@ static MACHINE_DRIVER_START( fromance )
MDRV_CPU_PROGRAM_MAP(fromance_readmem_sub,fromance_writemem_sub)
MDRV_CPU_IO_MAP(fromance_readport_sub,fromance_writeport_sub)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(fromance)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 352-1, 0, 240-1)
+
MDRV_GFXDECODE(fromance)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/funkybee.c b/src/mame/drivers/funkybee.c
index 3d3c6dc7219..18e2b61d825 100644
--- a/src/mame/drivers/funkybee.c
+++ b/src/mame/drivers/funkybee.c
@@ -308,14 +308,14 @@ static MACHINE_DRIVER_START( funkybee )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(12, 32*8-1-12, 0*8, 28*8-1)
+
MDRV_GFXDECODE(funkybee)
MDRV_PALETTE_LENGTH(32)
diff --git a/src/mame/drivers/funkyjet.c b/src/mame/drivers/funkyjet.c
index c136bc24b7a..2066e7c2b6c 100644
--- a/src/mame/drivers/funkyjet.c
+++ b/src/mame/drivers/funkyjet.c
@@ -374,14 +374,14 @@ static MACHINE_DRIVER_START( funkyjet )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(funkyjet)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/funworld.c b/src/mame/drivers/funworld.c
index 34ec77a0760..5d965c30b1f 100644
--- a/src/mame/drivers/funworld.c
+++ b/src/mame/drivers/funworld.c
@@ -1456,13 +1456,13 @@ static MACHINE_DRIVER_START( funworld )
MDRV_CPU_PROGRAM_MAP(funworld_map, 0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE((124+1)*4, (30+1)*8) // Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1).
MDRV_SCREEN_VISIBLE_AREA(0*4, 96*4-1, 0*8, 29*8-1) // Taken from MC6845 init, registers 01 & 06.
@@ -1476,7 +1476,7 @@ static MACHINE_DRIVER_START( funworld )
MDRV_VIDEO_START(funworld)
MDRV_VIDEO_UPDATE(funworld)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
// sound hardware
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -1500,6 +1500,7 @@ static MACHINE_DRIVER_START( magiccrd )
MDRV_CPU_REPLACE("main", M65C02, MASTER_CLOCK/8) // 2MHz
MDRV_CPU_PROGRAM_MAP(magiccrd_map, 0)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_SIZE((123+1)*4, (36+1)*8) // Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1).
// MDRV_SCREEN_VISIBLE_AREA(0*4, 112*4-1, 0*8, 34*8-1) // Taken from MC6845 init, registers 01 & 06.
MDRV_SCREEN_VISIBLE_AREA(0*4, 98*4-1, 0*8, 32*8-1) // adjusted to screen for testing purposes.
@@ -1538,18 +1539,18 @@ static MACHINE_DRIVER_START( snookr10 )
MDRV_CPU_PROGRAM_MAP(snookr10_map, 0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse, 1)
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE((128+1)*4, (30+1)*8)
MDRV_SCREEN_VISIBLE_AREA(0*4, 96*4-1, 0*8, 30*8-1)
// MDRV_SCREEN_SIZE((124+1)*4, (30+1)*8)
// MDRV_SCREEN_VISIBLE_AREA(0*4, 96*4-1, 0*8, 29*8-1)
-// MDRV_DEVICE_ADD("crtc", MC6845, 0)
+// MDRV_DEVICE_ADD("crtc", MC6845)
MDRV_GFXDECODE(sn10)
diff --git a/src/mame/drivers/funybubl.c b/src/mame/drivers/funybubl.c
index 2fa2baf3fb9..d589047284e 100644
--- a/src/mame/drivers/funybubl.c
+++ b/src/mame/drivers/funybubl.c
@@ -253,11 +253,10 @@ static MACHINE_DRIVER_START( funybubl )
MDRV_CPU_ADD(Z80,8000000/2) /* 4 MHz?? */
MDRV_CPU_PROGRAM_MAP(soundreadmem,soundwritemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(12*8, 512-12*8-1, 16, 256-16-1)
diff --git a/src/mame/drivers/fuukifg2.c b/src/mame/drivers/fuukifg2.c
index b1a47a78534..dac265cc08b 100644
--- a/src/mame/drivers/fuukifg2.c
+++ b/src/mame/drivers/fuukifg2.c
@@ -567,16 +567,16 @@ static MACHINE_DRIVER_START( fuuki16 )
MDRV_CPU_PROGRAM_MAP(fuuki16_sound_readmem,fuuki16_sound_writemem)
MDRV_CPU_IO_MAP(fuuki16_sound_readport,fuuki16_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_START(fuuki16)
MDRV_MACHINE_RESET(fuuki16)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-16-1)
+
MDRV_GFXDECODE(fuuki16)
MDRV_PALETTE_LENGTH(0x800*4)
diff --git a/src/mame/drivers/fuukifg3.c b/src/mame/drivers/fuukifg3.c
index aa4c808bd5f..c1155afc78f 100644
--- a/src/mame/drivers/fuukifg3.c
+++ b/src/mame/drivers/fuukifg3.c
@@ -607,16 +607,18 @@ static MACHINE_DRIVER_START( fuuki32 )
MDRV_CPU_PROGRAM_MAP(fuuki32_sound_readmem,fuuki32_sound_writemem)
MDRV_CPU_IO_MAP(fuuki32_sound_readport,fuuki32_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_START(fuuki32)
MDRV_MACHINE_RESET(fuuki32)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER) // | VIDEO_BUFFERS_SPRITERAM ) // Buffered by 2 frames
+ //MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM) // Buffered by 2 frames
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 30*8-1)
+
MDRV_GFXDECODE(fuuki32)
MDRV_PALETTE_LENGTH(0x4000/2)
diff --git a/src/mame/drivers/gaelco.c b/src/mame/drivers/gaelco.c
index 02f67f56d67..63e8cabe0e0 100644
--- a/src/mame/drivers/gaelco.c
+++ b/src/mame/drivers/gaelco.c
@@ -225,15 +225,16 @@ static MACHINE_DRIVER_START( bigkarnk )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(bigkarnk_readmem_snd,bigkarnk_writemem_snd)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
+
MDRV_GFXDECODE(0x100000)
MDRV_PALETTE_LENGTH(1024)
@@ -475,14 +476,14 @@ static MACHINE_DRIVER_START( maniacsq )
MDRV_CPU_PROGRAM_MAP(maniacsq_readmem,maniacsq_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
+
MDRV_GFXDECODE(0x100000)
MDRV_PALETTE_LENGTH(1024)
@@ -1111,15 +1112,16 @@ static MACHINE_DRIVER_START( squash )
MDRV_CPU_PROGRAM_MAP(squash_readmem,squash_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
+
MDRV_GFXDECODE(0x100000)
MDRV_PALETTE_LENGTH(1024)
@@ -1278,15 +1280,16 @@ static MACHINE_DRIVER_START( thoop )
MDRV_CPU_PROGRAM_MAP(squash_readmem,thoop_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
+
MDRV_GFXDECODE(0x100000)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/gaelco2.c b/src/mame/drivers/gaelco2.c
index 7e34d366712..a8ff1005d53 100644
--- a/src/mame/drivers/gaelco2.c
+++ b/src/mame/drivers/gaelco2.c
@@ -195,14 +195,16 @@ static MACHINE_DRIVER_START( maniacsq )
MDRV_CPU_PROGRAM_MAP(maniacsq_readmem, maniacsq_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold, 1)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(59.1)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
+
MDRV_GFXDECODE(0x0080000)
MDRV_PALETTE_LENGTH(4096*16 - 16) /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
@@ -346,16 +348,18 @@ static MACHINE_DRIVER_START( bang )
MDRV_CPU_PROGRAM_MAP(bang_readmem, bang_writemem)
MDRV_CPU_VBLANK_INT(bang_interrupt, 6)
- MDRV_SCREEN_REFRESH_RATE(59.1)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(gaelco2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.1)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
+
MDRV_GFXDECODE(0x0200000)
MDRV_PALETTE_LENGTH(4096*16 - 16) /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
@@ -549,14 +553,16 @@ static MACHINE_DRIVER_START( alighunt )
MDRV_CPU_PROGRAM_MAP(alighunt_readmem, alighunt_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold, 1)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(59.1)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
+
MDRV_GFXDECODE(0x0400000)
MDRV_PALETTE_LENGTH(4096*16 - 16) /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
@@ -811,19 +817,19 @@ static MACHINE_DRIVER_START( touchgo )
MDRV_CPU_VBLANK_INT(irq6_line_hold, 1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
MDRV_GFXDECODE(0x0400000)
MDRV_PALETTE_LENGTH(4096*16 - 16) /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(59.1)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_SIZE(64*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 480-1, 16, 256-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(59.1)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
@@ -1013,16 +1019,18 @@ static MACHINE_DRIVER_START( snowboar )
MDRV_CPU_PROGRAM_MAP(snowboar_readmem, snowboar_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold, 1)
- MDRV_SCREEN_REFRESH_RATE(59.1)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(gaelco2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.1)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 384-1, 16, 256-1)
+
MDRV_GFXDECODE(0x0400000)
MDRV_PALETTE_LENGTH(4096*16 - 16) /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
@@ -1259,19 +1267,19 @@ static MACHINE_DRIVER_START( wrally2 )
MDRV_NVRAM_HANDLER(gaelco2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
MDRV_GFXDECODE(0x0200000)
MDRV_PALETTE_LENGTH(4096*16 - 16) /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(59.1)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_SIZE(384, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 384-1, 16, 256-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(59.1)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
diff --git a/src/mame/drivers/gaelco3d.c b/src/mame/drivers/gaelco3d.c
index be4ddf3902b..84339cd13a5 100644
--- a/src/mame/drivers/gaelco3d.c
+++ b/src/mame/drivers/gaelco3d.c
@@ -953,19 +953,19 @@ static MACHINE_DRIVER_START( gaelco3d )
MDRV_CPU_PROGRAM_MAP(adsp_program_map,0)
MDRV_CPU_DATA_MAP(adsp_data_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(gaelco3d)
MDRV_NVRAM_HANDLER(93C66B)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(576, 432)
MDRV_SCREEN_VISIBLE_AREA(0, 575, 0, 431)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(gaelco3d)
diff --git a/src/mame/drivers/gaiden.c b/src/mame/drivers/gaiden.c
index 714e8feca1c..dac431eb89d 100644
--- a/src/mame/drivers/gaiden.c
+++ b/src/mame/drivers/gaiden.c
@@ -971,16 +971,17 @@ static MACHINE_DRIVER_START( shadoww )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
/* IRQs are triggered by the YM2203 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(raiga)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(gaiden)
MDRV_PALETTE_LENGTH(4096)
@@ -1011,6 +1012,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( raiga )
MDRV_IMPORT_FROM(shadoww)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_VIDEO_START(raiga)
@@ -1029,14 +1031,14 @@ static MACHINE_DRIVER_START( drgnbowl )
MDRV_CPU_PROGRAM_MAP(drgnbowl_sound_map,0)
MDRV_CPU_IO_MAP(drgnbowl_sound_port_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(drgnbowl)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/galaga.c b/src/mame/drivers/galaga.c
index 87a9976ae5f..7c653745e7c 100644
--- a/src/mame/drivers/galaga.c
+++ b/src/mame/drivers/galaga.c
@@ -1647,17 +1647,18 @@ static MACHINE_DRIVER_START( bosco )
MDRV_CPU_IO_MAP(namco_54xx_map_io,0)
MDRV_WATCHDOG_VBLANK_INIT(8)
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
MDRV_MACHINE_RESET(bosco)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(bosco)
MDRV_PALETTE_LENGTH(64*4+64*4+4+64)
@@ -1705,17 +1706,18 @@ static MACHINE_DRIVER_START( galaga )
MDRV_CPU_IO_MAP(namco_54xx_map_io,0)
MDRV_WATCHDOG_VBLANK_INIT(8)
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
MDRV_MACHINE_RESET(galaga)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(galaga)
MDRV_PALETTE_LENGTH(64*4+64*4+64)
@@ -1778,17 +1780,18 @@ static MACHINE_DRIVER_START( xevious )
MDRV_CPU_IO_MAP(namco_54xx_map_io,0)
MDRV_WATCHDOG_VBLANK_INIT(8)
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(1000) /* 1000 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
MDRV_MACHINE_RESET(xevious)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(xevious)
MDRV_PALETTE_LENGTH(128*4+64*8+64*2)
@@ -1850,18 +1853,19 @@ static MACHINE_DRIVER_START( digdug )
MDRV_CPU_PROGRAM_MAP(digdug_map,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,2) /* 64V */
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
MDRV_MACHINE_RESET(digdug)
MDRV_NVRAM_HANDLER(atari_vg)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(digdug)
MDRV_PALETTE_LENGTH(16*2+64*4+64*4)
diff --git a/src/mame/drivers/galaxia.c b/src/mame/drivers/galaxia.c
index 881cab68b87..3f86f9af5e4 100644
--- a/src/mame/drivers/galaxia.c
+++ b/src/mame/drivers/galaxia.c
@@ -149,14 +149,14 @@ static MACHINE_DRIVER_START( galaxia )
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
// MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1)
+
MDRV_GFXDECODE(galaxia)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/galaxian.c b/src/mame/drivers/galaxian.c
index 3adc6caa593..767bd25eca6 100644
--- a/src/mame/drivers/galaxian.c
+++ b/src/mame/drivers/galaxian.c
@@ -4287,11 +4287,10 @@ static MACHINE_DRIVER_START( galaxian_base )
MDRV_MACHINE_RESET(galaxian)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(galaxian)
MDRV_PALETTE_LENGTH(32+2+64) /* 32 for the characters, 2 for the bullets, 64 for the stars */
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
@@ -4706,6 +4705,8 @@ static MACHINE_DRIVER_START( rockclim )
MDRV_VIDEO_START(rockclim)
MDRV_PALETTE_LENGTH(64+64+2) /* 64 colors only, but still uses bullets so we need to keep the palette big */
MDRV_PALETTE_INIT(rockclim)
+
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_SIZE(64*8, 32*8)
MACHINE_DRIVER_END
@@ -4736,10 +4737,10 @@ static MACHINE_DRIVER_START( drivfrcg )
MDRV_CPU_IO_MAP(drivfrcg_io,0)
MDRV_CPU_VBLANK_INT(hunchbks_vh_interrupt,1)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
@@ -4782,11 +4783,10 @@ static MACHINE_DRIVER_START( hunchbkg )
MDRV_CPU_IO_MAP(hunchbkg_io,0)
MDRV_CPU_VBLANK_INT(hunchbks_vh_interrupt,1)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(galaxian)
MDRV_PALETTE_LENGTH(32+2+64) /* 32 for the characters, 2 for the bullets, 64 for the stars */
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
@@ -4846,11 +4846,10 @@ static MACHINE_DRIVER_START( racknrol )
MDRV_CPU_IO_MAP(racknrol_io,0)
MDRV_CPU_VBLANK_INT(hunchbks_vh_interrupt,1)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(galaxian)
MDRV_PALETTE_LENGTH(32)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
@@ -4905,11 +4904,10 @@ static MACHINE_DRIVER_START( hexpoola )
MDRV_CPU_IO_MAP(hexpoola_io,0)
MDRV_CPU_VBLANK_INT(hunchbks_vh_interrupt,1)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(galaxian)
MDRV_PALETTE_LENGTH(32)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
diff --git a/src/mame/drivers/galivan.c b/src/mame/drivers/galivan.c
index 11f89f89bfe..9d2cf330ef0 100644
--- a/src/mame/drivers/galivan.c
+++ b/src/mame/drivers/galivan.c
@@ -568,16 +568,16 @@ static MACHINE_DRIVER_START( galivan )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
MDRV_CPU_PERIODIC_INT(irq0_line_hold, 7250) /* timed interrupt, ?? Hz */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(galivan)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(galivan)
MDRV_PALETTE_LENGTH(8*16+16*16+256*16)
@@ -612,16 +612,16 @@ static MACHINE_DRIVER_START( ninjemak )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
MDRV_CPU_PERIODIC_INT(irq0_line_hold, 7250) /* timed interrupt, ?? Hz */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(galivan)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(ninjemak)
MDRV_PALETTE_LENGTH(8*16+16*16+256*16)
diff --git a/src/mame/drivers/galpani2.c b/src/mame/drivers/galpani2.c
index 6c8618e4fca..5ea816def09 100644
--- a/src/mame/drivers/galpani2.c
+++ b/src/mame/drivers/galpani2.c
@@ -468,17 +468,17 @@ static MACHINE_DRIVER_START( galpani2 )
MDRV_CPU_PROGRAM_MAP(galpani2_mem2, 0)
MDRV_CPU_VBLANK_INT(galpani2_interrupt2,GALPANI2_INTERRUPTS_NUM2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(galpani2)
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-1-16)
+
MDRV_GFXDECODE(galpani2)
MDRV_PALETTE_LENGTH(0x4000 + 0x200 + 0x8000) // sprites, bg8, bg15
diff --git a/src/mame/drivers/galpani3.c b/src/mame/drivers/galpani3.c
index f6d0000c67a..6a08265b3e7 100644
--- a/src/mame/drivers/galpani3.c
+++ b/src/mame/drivers/galpani3.c
@@ -375,13 +375,14 @@ static MACHINE_DRIVER_START( galpani3 )
MDRV_CPU_PROGRAM_MAP(galpani3_map,0)
MDRV_CPU_VBLANK_INT(galpani3_vblank, 3)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x4000)
MDRV_VIDEO_START(galpani3)
diff --git a/src/mame/drivers/galpanic.c b/src/mame/drivers/galpanic.c
index 71ee4b6fce3..4c08998ee93 100644
--- a/src/mame/drivers/galpanic.c
+++ b/src/mame/drivers/galpanic.c
@@ -934,14 +934,14 @@ static MACHINE_DRIVER_START( galpanic )
MDRV_CPU_PROGRAM_MAP(galpanic,0)
MDRV_CPU_VBLANK_INT(galpanic_interrupt,2)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* frames per second, vblank duration */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 224-1)
+
MDRV_GFXDECODE(galpanic)
MDRV_PALETTE_LENGTH(1024 + 32768)
diff --git a/src/mame/drivers/galspnbl.c b/src/mame/drivers/galspnbl.c
index 93fd6901b98..5dc3ed8f26f 100644
--- a/src/mame/drivers/galspnbl.c
+++ b/src/mame/drivers/galspnbl.c
@@ -308,14 +308,15 @@ static MACHINE_DRIVER_START( galspnbl )
/* audio CPU */ /* 4 MHz ??? */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
/* NMI is caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
+
MDRV_GFXDECODE(galspnbl)
MDRV_PALETTE_LENGTH(1024 + 32768)
diff --git a/src/mame/drivers/gamecstl.c b/src/mame/drivers/gamecstl.c
index 7b91bbb8edb..024d2662add 100644
--- a/src/mame/drivers/gamecstl.c
+++ b/src/mame/drivers/gamecstl.c
@@ -448,18 +448,18 @@ static MACHINE_DRIVER_START(gamecstl)
MDRV_CPU_PROGRAM_MAP(gamecstl_map, 0)
MDRV_CPU_IO_MAP(gamecstl_io, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(gamecstl)
MDRV_NVRAM_HANDLER( mc146818 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(640, 480)
MDRV_SCREEN_VISIBLE_AREA(0, 639, 0, 199)
+
MDRV_GFXDECODE(CGA)
MDRV_PALETTE_LENGTH(16)
diff --git a/src/mame/drivers/gaplus.c b/src/mame/drivers/gaplus.c
index c8a9007df0e..0b26a70cbb8 100644
--- a/src/mame/drivers/gaplus.c
+++ b/src/mame/drivers/gaplus.c
@@ -768,16 +768,17 @@ static MACHINE_DRIVER_START( gaplus )
MDRV_CPU_PROGRAM_MAP(readmem_cpu3,writemem_cpu3)
MDRV_CPU_VBLANK_INT(irq0_line_assert,1)
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* a high value to ensure proper synchronization of the CPUs */
MDRV_MACHINE_RESET(gaplus)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(gaplus)
MDRV_PALETTE_LENGTH(64*4+64*8)
diff --git a/src/mame/drivers/gauntlet.c b/src/mame/drivers/gauntlet.c
index 375a40171d1..1f136af4708 100644
--- a/src/mame/drivers/gauntlet.c
+++ b/src/mame/drivers/gauntlet.c
@@ -541,11 +541,11 @@ static MACHINE_DRIVER_START( gauntlet )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(gauntlet)
MDRV_PALETTE_LENGTH(1024)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses a SYNGEN chip to generate video signals */
diff --git a/src/mame/drivers/gberet.c b/src/mame/drivers/gberet.c
index 32b5b02b510..6edc3f0f9a7 100644
--- a/src/mame/drivers/gberet.c
+++ b/src/mame/drivers/gberet.c
@@ -554,14 +554,15 @@ static MACHINE_DRIVER_START( gberet )
MDRV_CPU_PROGRAM_MAP(gberet_map, 0)
MDRV_CPU_VBLANK_INT(gberet_interrupt, 32) // 1 IRQ + 16 NMI (generated by a custom IC)
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(30)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(gberet)
MDRV_PALETTE_LENGTH(2*16*16)
@@ -584,6 +585,7 @@ static MACHINE_DRIVER_START( gberetb )
MDRV_CPU_PROGRAM_MAP(gberetb_map, 0)
MDRV_CPU_VBLANK_INT(gberet_interrupt, 16) // 1 IRQ + 8 NMI
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
@@ -601,6 +603,7 @@ static MACHINE_DRIVER_START( mrgoemon )
MDRV_CPU_PROGRAM_MAP(mrgoemon_map, 0)
MDRV_CPU_VBLANK_INT(gberet_interrupt, 16) // 1 IRQ + 8 NMI
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/gbusters.c b/src/mame/drivers/gbusters.c
index 63470b117a0..1166bcfce47 100644
--- a/src/mame/drivers/gbusters.c
+++ b/src/mame/drivers/gbusters.c
@@ -305,16 +305,18 @@ static MACHINE_DRIVER_START( gbusters )
/* audio CPU */ /* ? */
MDRV_CPU_PROGRAM_MAP(gbusters_readmem_sound,gbusters_writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(gbusters)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(1024)
MDRV_VIDEO_START(gbusters)
diff --git a/src/mame/drivers/gcpinbal.c b/src/mame/drivers/gcpinbal.c
index 5033065f010..1616167c06b 100644
--- a/src/mame/drivers/gcpinbal.c
+++ b/src/mame/drivers/gcpinbal.c
@@ -383,14 +383,14 @@ static MACHINE_DRIVER_START( gcpinbal )
MDRV_CPU_PROGRAM_MAP(gcpinbal_readmem,gcpinbal_writemem)
MDRV_CPU_VBLANK_INT(gcpinbal_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* frames per second, vblank duration */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(gcpinbal)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/gdrawpkr.c b/src/mame/drivers/gdrawpkr.c
index 1095e1bbd6a..e90f909cf14 100644
--- a/src/mame/drivers/gdrawpkr.c
+++ b/src/mame/drivers/gdrawpkr.c
@@ -569,13 +569,13 @@ static MACHINE_DRIVER_START( gdrawpkr )
MDRV_CPU_PROGRAM_MAP(gdrawpkr_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE((39+1)*8, (31+1)*8) /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1) */
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 31*8-1) /* Taken from MC6845 init, registers 01 & 06 */
@@ -587,7 +587,7 @@ static MACHINE_DRIVER_START( gdrawpkr )
MDRV_VIDEO_START(gdrawpkr)
MDRV_VIDEO_UPDATE(gdrawpkr)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
// sound hardware
MDRV_SPEAKER_STANDARD_MONO("mono")
diff --git a/src/mame/drivers/genesis.c b/src/mame/drivers/genesis.c
index df97decb2cb..05604437e25 100644
--- a/src/mame/drivers/genesis.c
+++ b/src/mame/drivers/genesis.c
@@ -788,18 +788,20 @@ static MACHINE_DRIVER_START( genesis_base )
MDRV_CPU_PROGRAM_MAP(genesis_z80_readmem, genesis_z80_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1) /* from vdp at scanline 0xe0 */
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_INTERLEAVE(100)
MDRV_MACHINE_START(genesis)
MDRV_MACHINE_RESET(genesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(342,262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 223)
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(genesis)
diff --git a/src/mame/drivers/getrivia.c b/src/mame/drivers/getrivia.c
index 31400f35dca..5bba8c8ef88 100644
--- a/src/mame/drivers/getrivia.c
+++ b/src/mame/drivers/getrivia.c
@@ -398,14 +398,14 @@ static MACHINE_DRIVER_START( getrivia )
MDRV_CPU_PROGRAM_MAP(getrivia_map,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(48, 511-48, 16, 255-16)
+
MDRV_PALETTE_LENGTH(256)
MDRV_MACHINE_RESET(getrivia)
diff --git a/src/mame/drivers/ghosteo.c b/src/mame/drivers/ghosteo.c
index c815b8d7f52..ed59a572773 100644
--- a/src/mame/drivers/ghosteo.c
+++ b/src/mame/drivers/ghosteo.c
@@ -486,13 +486,14 @@ static MACHINE_DRIVER_START( bballoon )
MDRV_CPU_PROGRAM_MAP(bballoon_map,0)
MDRV_CPU_VBLANK_INT(bballoon_interrupt,1)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(1024, 1024)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(bballoon)
diff --git a/src/mame/drivers/gijoe.c b/src/mame/drivers/gijoe.c
index 61d1d65e4ba..3972edc0833 100644
--- a/src/mame/drivers/gijoe.c
+++ b/src/mame/drivers/gijoe.c
@@ -350,17 +350,19 @@ static MACHINE_DRIVER_START( gijoe )
/* audio CPU */ /* Amuse & confirmed. z80e */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(gijoe)
MDRV_NVRAM_HANDLER(gijoe)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(24, 24+288-1, 16, 16+224-1)
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(gijoe)
diff --git a/src/mame/drivers/ginganin.c b/src/mame/drivers/ginganin.c
index 675f01895fd..0a40a2b8e47 100644
--- a/src/mame/drivers/ginganin.c
+++ b/src/mame/drivers/ginganin.c
@@ -358,14 +358,14 @@ static MACHINE_DRIVER_START( ginganin )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(ginganin_sound_interrupt,60) /* Takahiro Nogi. 1999/09/27 (1 -> 60) */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0 + 16 , 255 - 16)
+
MDRV_GFXDECODE(ginganin)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/gladiatr.c b/src/mame/drivers/gladiatr.c
index f40334b511a..19e80f0df19 100644
--- a/src/mame/drivers/gladiatr.c
+++ b/src/mame/drivers/gladiatr.c
@@ -694,17 +694,18 @@ static MACHINE_DRIVER_START( ppking )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(ppking_cpu3_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(ppking)
MDRV_PALETTE_LENGTH(1024)
@@ -742,18 +743,19 @@ static MACHINE_DRIVER_START( gladiatr )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(gladiatr_cpu3_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(gladiator)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(gladiatr)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/glass.c b/src/mame/drivers/glass.c
index c437673df10..e1abf20b9b5 100644
--- a/src/mame/drivers/glass.c
+++ b/src/mame/drivers/glass.c
@@ -206,16 +206,16 @@ static MACHINE_DRIVER_START( glass )
MDRV_CPU_PROGRAM_MAP(glass_readmem,glass_writemem)
MDRV_CPU_VBLANK_INT(glass_interrupt, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(glass)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 368-1, 16, 256-1)
+
MDRV_GFXDECODE(glass)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/gng.c b/src/mame/drivers/gng.c
index fd6e1dcb741..6120545fef2 100644
--- a/src/mame/drivers/gng.c
+++ b/src/mame/drivers/gng.c
@@ -348,16 +348,18 @@ static MACHINE_DRIVER_START( gng )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(gng)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(gng)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/go2000.c b/src/mame/drivers/go2000.c
index 643f76dfdf8..9829d330e34 100644
--- a/src/mame/drivers/go2000.c
+++ b/src/mame/drivers/go2000.c
@@ -171,15 +171,16 @@ static MACHINE_DRIVER_START( go2000 )
MDRV_CPU_PROGRAM_MAP(go2000_readmem,go2000_writemem)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(go2000)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x800)
MDRV_VIDEO_START(go2000)
diff --git a/src/mame/drivers/goal92.c b/src/mame/drivers/goal92.c
index 597541dcc90..5ed786a6123 100644
--- a/src/mame/drivers/goal92.c
+++ b/src/mame/drivers/goal92.c
@@ -321,14 +321,14 @@ static MACHINE_DRIVER_START( goal92 )
MDRV_CPU_PROGRAM_MAP(sound_cpu,0)
/* IRQs are triggered by the main CPU */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1) // black border at bottom is a game bug...
+
MDRV_GFXDECODE(goal92)
MDRV_PALETTE_LENGTH(128*16)
diff --git a/src/mame/drivers/goindol.c b/src/mame/drivers/goindol.c
index f9cce3ba3eb..ea94cc7219d 100644
--- a/src/mame/drivers/goindol.c
+++ b/src/mame/drivers/goindol.c
@@ -279,14 +279,14 @@ static MACHINE_DRIVER_START( goindol )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(goindol)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/goldstar.c b/src/mame/drivers/goldstar.c
index ee0074cb3b0..214132f5da3 100644
--- a/src/mame/drivers/goldstar.c
+++ b/src/mame/drivers/goldstar.c
@@ -289,14 +289,14 @@ static MACHINE_DRIVER_START( goldstar )
MDRV_CPU_IO_MAP(readport,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(goldstar)
MDRV_PALETTE_LENGTH(256)
MDRV_NVRAM_HANDLER(goldstar)
@@ -325,14 +325,14 @@ static MACHINE_DRIVER_START( goldstbl )
MDRV_CPU_IO_MAP(readport,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
// MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(bl)
MDRV_PALETTE_LENGTH(256)
MDRV_NVRAM_HANDLER(goldstar)
@@ -360,14 +360,14 @@ static MACHINE_DRIVER_START( moonlght )
MDRV_CPU_IO_MAP(readport,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
// MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(ml)
MDRV_PALETTE_LENGTH(256)
MDRV_NVRAM_HANDLER(goldstar)
diff --git a/src/mame/drivers/gomoku.c b/src/mame/drivers/gomoku.c
index 367b1f823e3..c7d30af4a00 100644
--- a/src/mame/drivers/gomoku.c
+++ b/src/mame/drivers/gomoku.c
@@ -171,14 +171,14 @@ static MACHINE_DRIVER_START( gomoku )
MDRV_CPU_PROGRAM_MAP(readmem_gomoku, writemem_gomoku)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
+
MDRV_GFXDECODE(gomoku)
MDRV_PALETTE_LENGTH(64)
diff --git a/src/mame/drivers/good.c b/src/mame/drivers/good.c
index 24bdf5a7072..42784c89cd4 100644
--- a/src/mame/drivers/good.c
+++ b/src/mame/drivers/good.c
@@ -275,15 +275,16 @@ static MACHINE_DRIVER_START( good )
MDRV_CPU_PROGRAM_MAP(good_map,0)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(good)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(1*16, 23*16-1, 0*16, 14*16-1)
+
MDRV_PALETTE_LENGTH(0x400)
MDRV_VIDEO_START(good)
diff --git a/src/mame/drivers/goodejan.c b/src/mame/drivers/goodejan.c
index 7d39a2e0676..5fe8dd3dbb4 100644
--- a/src/mame/drivers/goodejan.c
+++ b/src/mame/drivers/goodejan.c
@@ -282,16 +282,16 @@ static MACHINE_DRIVER_START( goodejan )
SEIBU_SOUND_SYSTEM_CPU(GOODEJAN_MHZ1/2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(goodejan)
MDRV_PALETTE_LENGTH(0x1000)
diff --git a/src/mame/drivers/gotcha.c b/src/mame/drivers/gotcha.c
index dc9e3148685..541fa3d4410 100644
--- a/src/mame/drivers/gotcha.c
+++ b/src/mame/drivers/gotcha.c
@@ -284,14 +284,14 @@ static MACHINE_DRIVER_START( gotcha )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
// MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(55)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(gotcha)
MDRV_PALETTE_LENGTH(768)
diff --git a/src/mame/drivers/gottlieb.c b/src/mame/drivers/gottlieb.c
index 800979e8123..b025e647acc 100644
--- a/src/mame/drivers/gottlieb.c
+++ b/src/mame/drivers/gottlieb.c
@@ -1529,17 +1529,18 @@ static MACHINE_DRIVER_START( gottlieb )
MDRV_CPU_ADD_TAG("sound", M6502, 3579545/4) /* the board can be set to /2 as well */
MDRV_CPU_PROGRAM_MAP(gottlieb_sound_map,0)
/* NMIs are triggered by the Votrax SC-01 */
- MDRV_SCREEN_REFRESH_RATE(61)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1018) /* frames per second, vblank duration */)
MDRV_MACHINE_RESET(gottlieb)
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(61)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1018) /* frames per second, vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(charROM)
MDRV_PALETTE_LENGTH(16)
@@ -1610,17 +1611,17 @@ static MACHINE_DRIVER_START( gottlieb2 )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(stooges_sound2_map,0)
- MDRV_SCREEN_REFRESH_RATE(61)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1018) /* frames per second, vblank duration */)
-
MDRV_MACHINE_RESET(gottlieb)
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(61)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1018) /* frames per second, vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(charROM)
MDRV_PALETTE_LENGTH(16)
diff --git a/src/mame/drivers/gotya.c b/src/mame/drivers/gotya.c
index 5beed6d41a4..36f9b920f00 100644
--- a/src/mame/drivers/gotya.c
+++ b/src/mame/drivers/gotya.c
@@ -202,14 +202,14 @@ static MACHINE_DRIVER_START( gotya )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 36*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(gotya)
MDRV_PALETTE_LENGTH(16*4)
diff --git a/src/mame/drivers/gpworld.c b/src/mame/drivers/gpworld.c
index a06b4dc483c..4be3ef80274 100644
--- a/src/mame/drivers/gpworld.c
+++ b/src/mame/drivers/gpworld.c
@@ -439,8 +439,8 @@ static MACHINE_DRIVER_START( gpworld )
MDRV_MACHINE_START(gpworld)
/* video */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/gradius3.c b/src/mame/drivers/gradius3.c
index 3b44dd865fa..24aee8b95e8 100644
--- a/src/mame/drivers/gradius3.c
+++ b/src/mame/drivers/gradius3.c
@@ -349,17 +349,20 @@ static MACHINE_DRIVER_START( gradius3 )
MDRV_CPU_ADD(Z80, 3579545)
MDRV_CPU_PROGRAM_MAP(gradius3_s_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(gradius3)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(gradius3)
diff --git a/src/mame/drivers/grchamp.c b/src/mame/drivers/grchamp.c
index 06b352af190..a41d767497b 100644
--- a/src/mame/drivers/grchamp.c
+++ b/src/mame/drivers/grchamp.c
@@ -693,10 +693,10 @@ static MACHINE_DRIVER_START( grchamp )
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_ALWAYS_UPDATE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
MDRV_GFXDECODE(grchamp)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
diff --git a/src/mame/drivers/gridlee.c b/src/mame/drivers/gridlee.c
index e7281ef2081..3d82f16cf04 100644
--- a/src/mame/drivers/gridlee.c
+++ b/src/mame/drivers/gridlee.c
@@ -440,9 +440,10 @@ static MACHINE_DRIVER_START( gridlee )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(BALSENTE_PIXEL_CLOCK, BALSENTE_HTOTAL, BALSENTE_HBEND, BALSENTE_HBSTART, BALSENTE_VTOTAL, BALSENTE_VBEND, BALSENTE_VBSTART)
+
MDRV_PALETTE_LENGTH(2048)
MDRV_PALETTE_INIT(gridlee)
diff --git a/src/mame/drivers/groundfx.c b/src/mame/drivers/groundfx.c
index 055f20765fb..6a87e05defe 100644
--- a/src/mame/drivers/groundfx.c
+++ b/src/mame/drivers/groundfx.c
@@ -413,17 +413,17 @@ static MACHINE_DRIVER_START( groundfx )
TAITO_F3_SOUND_SYSTEM_CPU(16000000)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(groundfx)
MDRV_NVRAM_HANDLER(groundfx)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 40*8-1, 3*8, 32*8-1)
+
MDRV_GFXDECODE(groundfx)
MDRV_PALETTE_LENGTH(16384)
diff --git a/src/mame/drivers/gstream.c b/src/mame/drivers/gstream.c
index e01ecae784e..0978490c25b 100644
--- a/src/mame/drivers/gstream.c
+++ b/src/mame/drivers/gstream.c
@@ -391,11 +391,10 @@ static MACHINE_DRIVER_START( gstream )
MDRV_CPU_IO_MAP(gstream_io,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
diff --git a/src/mame/drivers/gstriker.c b/src/mame/drivers/gstriker.c
index 7555690208a..31a8f9951ba 100644
--- a/src/mame/drivers/gstriker.c
+++ b/src/mame/drivers/gstriker.c
@@ -448,13 +448,15 @@ static MACHINE_DRIVER_START( gstriker )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(5000) /* hand-tuned, it needs a bit */)
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(gstriker)
MDRV_PALETTE_LENGTH(0x800)
diff --git a/src/mame/drivers/gsword.c b/src/mame/drivers/gsword.c
index c6e2dc92ebe..6aeadbc1546 100644
--- a/src/mame/drivers/gsword.c
+++ b/src/mame/drivers/gsword.c
@@ -702,8 +702,6 @@ static MACHINE_DRIVER_START( gsword )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(cpu3_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(200) /* Allow time for 2nd cpu to interleave*/
MDRV_MACHINE_RESET(gsword)
@@ -714,10 +712,13 @@ static MACHINE_DRIVER_START( gsword )
#endif
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(gsword)
MDRV_PALETTE_LENGTH(64*4+64*4)
@@ -755,12 +756,12 @@ static MACHINE_DRIVER_START( josvolly )
// MDRV_CPU_VBLANK_INT(gsword_snd_interrupt,1)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(josvolly)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/gticlub.c b/src/mame/drivers/gticlub.c
index b4a7987abfe..eb022024692 100644
--- a/src/mame/drivers/gticlub.c
+++ b/src/mame/drivers/gticlub.c
@@ -764,17 +764,18 @@ static MACHINE_DRIVER_START( gticlub )
MDRV_CPU_CONFIG(sharc_cfg)
MDRV_CPU_DATA_MAP(sharc_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(100)
MDRV_NVRAM_HANDLER(gticlub)
MDRV_MACHINE_RESET(gticlub)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(512, 384)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 0, 383)
+
MDRV_PALETTE_LENGTH(65536)
MDRV_VIDEO_START(gticlub)
@@ -812,23 +813,21 @@ static MACHINE_DRIVER_START( hangplt )
MDRV_CPU_CONFIG(sharc_cfg)
MDRV_CPU_DATA_MAP(hangplt_sharc1_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(100)
MDRV_NVRAM_HANDLER(gticlub)
MDRV_MACHINE_RESET(hangplt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_PALETTE_LENGTH(65536)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(512, 384)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 0, 383)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(512, 384)
diff --git a/src/mame/drivers/gtipoker.c b/src/mame/drivers/gtipoker.c
index eb8212e0ce3..03c35dd1e28 100644
--- a/src/mame/drivers/gtipoker.c
+++ b/src/mame/drivers/gtipoker.c
@@ -60,14 +60,14 @@ static MACHINE_DRIVER_START( gtipoker )
MDRV_CPU_IO_MAP(gtipoker_iomap,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
+
MDRV_GFXDECODE(gtipoker)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/gumbo.c b/src/mame/drivers/gumbo.c
index 58b51231ab8..d28bae2577d 100644
--- a/src/mame/drivers/gumbo.c
+++ b/src/mame/drivers/gumbo.c
@@ -311,15 +311,16 @@ static MACHINE_DRIVER_START( gumbo )
MDRV_CPU_PROGRAM_MAP(gumbo_readmem,gumbo_writemem)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1) // all the same
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(gumbo)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x200)
MDRV_VIDEO_START(gumbo)
diff --git a/src/mame/drivers/gunbustr.c b/src/mame/drivers/gunbustr.c
index 46c094c845a..b8c873b042f 100644
--- a/src/mame/drivers/gunbustr.c
+++ b/src/mame/drivers/gunbustr.c
@@ -381,17 +381,17 @@ static MACHINE_DRIVER_START( gunbustr )
TAITO_F3_SOUND_SYSTEM_CPU(16000000)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(gunbustr)
MDRV_NVRAM_HANDLER(gunbustr)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(gunbustr)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/gundealr.c b/src/mame/drivers/gundealr.c
index 0c3e76cb0f6..2d86d1d51de 100644
--- a/src/mame/drivers/gundealr.c
+++ b/src/mame/drivers/gundealr.c
@@ -467,14 +467,14 @@ static MACHINE_DRIVER_START( gundealr )
MDRV_CPU_IO_MAP(main_portmap,0)
MDRV_CPU_VBLANK_INT(yamyam_interrupt,4) /* ? */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(gundealr)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/gunpey.c b/src/mame/drivers/gunpey.c
index cc788bc6a00..61302b0c48e 100644
--- a/src/mame/drivers/gunpey.c
+++ b/src/mame/drivers/gunpey.c
@@ -126,11 +126,10 @@ static MACHINE_DRIVER_START( gunpey )
MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT(gunpey_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
diff --git a/src/mame/drivers/gunsmoke.c b/src/mame/drivers/gunsmoke.c
index 2915e22ae7a..cc113d73bdd 100644
--- a/src/mame/drivers/gunsmoke.c
+++ b/src/mame/drivers/gunsmoke.c
@@ -294,14 +294,15 @@ static MACHINE_DRIVER_START( gunsmoke )
MDRV_CPU_PROGRAM_MAP(sound_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 4)
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(gunsmoke)
MDRV_PALETTE_LENGTH(32*4+16*16+16*16)
diff --git a/src/mame/drivers/gyruss.c b/src/mame/drivers/gyruss.c
index 128136c1b97..e7d6f407d44 100644
--- a/src/mame/drivers/gyruss.c
+++ b/src/mame/drivers/gyruss.c
@@ -382,14 +382,14 @@ static MACHINE_DRIVER_START( gyruss )
MDRV_CPU_PROGRAM_MAP(i8039_readmem,i8039_writemem)
MDRV_CPU_IO_MAP(i8039_readport,i8039_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(gyruss)
MDRV_PALETTE_LENGTH(16*4+16*16)
diff --git a/src/mame/drivers/hal21.c b/src/mame/drivers/hal21.c
index 723bc790e3b..7df5c50d9d1 100644
--- a/src/mame/drivers/hal21.c
+++ b/src/mame/drivers/hal21.c
@@ -711,15 +711,18 @@ static MACHINE_DRIVER_START( aso )
MDRV_CPU_PROGRAM_MAP(aso_sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 28*8-1)
+
MDRV_GFXDECODE(aso)
MDRV_PALETTE_LENGTH(1024)
@@ -754,15 +757,18 @@ static MACHINE_DRIVER_START( hal21 )
MDRV_CPU_VBLANK_INT(hal21_sound_interrupt,1)
MDRV_CPU_PERIODIC_INT(irq0_line_hold, 220) // music tempo, hand tuned
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_HIGHLIGHTS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_HIGHLIGHTS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 28*8-1)
+
MDRV_GFXDECODE(aso)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/halleys.c b/src/mame/drivers/halleys.c
index ed1fc7bccc6..2b41c4952cf 100644
--- a/src/mame/drivers/halleys.c
+++ b/src/mame/drivers/halleys.c
@@ -1957,12 +1957,13 @@ static MACHINE_DRIVER_START( halleys )
MDRV_CPU_PROGRAM_MAP(sound_readmem, sound_writemem)
MDRV_CPU_PERIODIC_INT(irq0_line_hold, (double)6000000/(4*16*16*10*16))
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(halleys)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(SCREEN_WIDTH, SCREEN_HEIGHT)
MDRV_SCREEN_VISIBLE_AREA(VIS_MINX, VIS_MAXX, VIS_MINY, VIS_MAXY)
diff --git a/src/mame/drivers/hanaawas.c b/src/mame/drivers/hanaawas.c
index 9549224e447..79100d14df1 100644
--- a/src/mame/drivers/hanaawas.c
+++ b/src/mame/drivers/hanaawas.c
@@ -210,14 +210,14 @@ static MACHINE_DRIVER_START( hanaawas )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(hanaawas)
MDRV_PALETTE_LENGTH(32*8)
diff --git a/src/mame/drivers/hanaroku.c b/src/mame/drivers/hanaroku.c
index ab5debf1d8d..342d64aa4a3 100644
--- a/src/mame/drivers/hanaroku.c
+++ b/src/mame/drivers/hanaroku.c
@@ -240,14 +240,14 @@ static MACHINE_DRIVER_START( hanaroku )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0, 48*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(hanaroku)
MDRV_PALETTE_LENGTH(0x200)
diff --git a/src/mame/drivers/harddriv.c b/src/mame/drivers/harddriv.c
index 4133373b626..a5ef9689180 100644
--- a/src/mame/drivers/harddriv.c
+++ b/src/mame/drivers/harddriv.c
@@ -977,10 +977,10 @@ static MACHINE_DRIVER_START( driver_nomsp )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_PALETTE_LENGTH(1024)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(4000000*4, 160*4, 0, 127*4, 417, 0, 384)
diff --git a/src/mame/drivers/hcastle.c b/src/mame/drivers/hcastle.c
index 325b36c557d..e6b16f1cfdd 100644
--- a/src/mame/drivers/hcastle.c
+++ b/src/mame/drivers/hcastle.c
@@ -275,14 +275,16 @@ static MACHINE_DRIVER_START( hcastle )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(59)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* frames per second verified by comparison with real board */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(hcastle)
MDRV_PALETTE_LENGTH(2*8*16*16)
diff --git a/src/mame/drivers/hexa.c b/src/mame/drivers/hexa.c
index fac73c3d81e..f26c5983c69 100644
--- a/src/mame/drivers/hexa.c
+++ b/src/mame/drivers/hexa.c
@@ -136,14 +136,14 @@ static MACHINE_DRIVER_START( hexa )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(hexa)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/hexion.c b/src/mame/drivers/hexion.c
index c91a6ca8bed..dbde47da38f 100644
--- a/src/mame/drivers/hexion.c
+++ b/src/mame/drivers/hexion.c
@@ -286,14 +286,14 @@ static MACHINE_DRIVER_START( hexion )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(hexion_interrupt,3) /* both IRQ and NMI are used */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(hexion)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/higemaru.c b/src/mame/drivers/higemaru.c
index 013943e60dd..0588dfec021 100644
--- a/src/mame/drivers/higemaru.c
+++ b/src/mame/drivers/higemaru.c
@@ -177,14 +177,14 @@ static MACHINE_DRIVER_START( higemaru )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(higemaru_interrupt,2)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(higemaru)
MDRV_PALETTE_LENGTH(32*4+16*16)
diff --git a/src/mame/drivers/hitme.c b/src/mame/drivers/hitme.c
index 179c5bf4ad7..c57b4c19c30 100644
--- a/src/mame/drivers/hitme.c
+++ b/src/mame/drivers/hitme.c
@@ -303,14 +303,14 @@ static MACHINE_DRIVER_START( hitme )
MDRV_CPU_PROGRAM_MAP(hitme_map,0)
MDRV_CPU_IO_MAP(hitme_portmap,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 19*10)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 19*10-1)
+
MDRV_GFXDECODE(hitme)
MDRV_PALETTE_LENGTH(2)
@@ -338,8 +338,10 @@ static MACHINE_DRIVER_START( barricad )
MDRV_IMPORT_FROM(hitme)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_SIZE(32*8, 24*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 24*8-1)
+
MDRV_GFXDECODE(barricad)
MDRV_VIDEO_START(barricad)
diff --git a/src/mame/drivers/hnayayoi.c b/src/mame/drivers/hnayayoi.c
index c091a36f05a..4d861651cf9 100644
--- a/src/mame/drivers/hnayayoi.c
+++ b/src/mame/drivers/hnayayoi.c
@@ -627,17 +627,18 @@ static MACHINE_DRIVER_START( hnayayoi )
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 8000)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(hnayayoi)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
diff --git a/src/mame/drivers/hng64.c b/src/mame/drivers/hng64.c
index 77c831684be..307003703b3 100644
--- a/src/mame/drivers/hng64.c
+++ b/src/mame/drivers/hng64.c
@@ -1527,16 +1527,16 @@ static MACHINE_DRIVER_START( hng64 )
MDRV_CPU_PROGRAM_MAP(hng_comm_map,0)
MDRV_CPU_IO_MAP(hng_comm_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(hng64)
MDRV_MACHINE_RESET(hyperneo)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(1024, 1024)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 16, 447)
+
MDRV_PALETTE_LENGTH(0x1000)
MDRV_VIDEO_START(hng64)
diff --git a/src/mame/drivers/holeland.c b/src/mame/drivers/holeland.c
index 2da111a9608..29f4fb2a9ba 100644
--- a/src/mame/drivers/holeland.c
+++ b/src/mame/drivers/holeland.c
@@ -302,14 +302,14 @@ static MACHINE_DRIVER_START( holeland )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0*16, 32*16-1, 2*16, 30*16-1)
+
MDRV_GFXDECODE(holeland)
MDRV_PALETTE_LENGTH(256)
@@ -371,14 +371,14 @@ static MACHINE_DRIVER_START( crzrally )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(59)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(crzrally)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/homedata.c b/src/mame/drivers/homedata.c
index 9e5128d62d3..16314974181 100644
--- a/src/mame/drivers/homedata.c
+++ b/src/mame/drivers/homedata.c
@@ -1269,15 +1269,15 @@ static MACHINE_DRIVER_START( mrokumei )
MDRV_CPU_PROGRAM_MAP(mrokumei_sound_readmem,mrokumei_sound_writemem)
MDRV_CPU_IO_MAP(mrokumei_sound_readport,mrokumei_sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(59)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
// visible area can be changed at runtime
MDRV_SCREEN_VISIBLE_AREA(0*8, 54*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(mrokumei)
MDRV_PALETTE_LENGTH(0x8000)
@@ -1329,16 +1329,16 @@ static MACHINE_DRIVER_START( reikaids )
MDRV_INTERLEAVE(500) // very high interleave required to sync for startup tests
- MDRV_SCREEN_REFRESH_RATE(59)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(reikaids_upd7807)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 16, 256-1-16)
+
MDRV_GFXDECODE(reikaids)
MDRV_PALETTE_LENGTH(0x8000)
@@ -1379,17 +1379,17 @@ static MACHINE_DRIVER_START( pteacher )
MDRV_INTERLEAVE(100) // should be enough
- MDRV_SCREEN_REFRESH_RATE(59)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(pteacher_upd7807)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
// visible area can be changed at runtime
MDRV_SCREEN_VISIBLE_AREA(0*8, 54*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pteacher)
MDRV_PALETTE_LENGTH(0x8000)
diff --git a/src/mame/drivers/homerun.c b/src/mame/drivers/homerun.c
index f6005137f85..0057de48450 100644
--- a/src/mame/drivers/homerun.c
+++ b/src/mame/drivers/homerun.c
@@ -194,12 +194,12 @@ static MACHINE_DRIVER_START( homerun )
MDRV_MACHINE_RESET(homerun)
/* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-25)
+
MDRV_GFXDECODE(homerun)
MDRV_PALETTE_LENGTH(16*4)
diff --git a/src/mame/drivers/hornet.c b/src/mame/drivers/hornet.c
index 3c4d6a1b83c..b400c50938b 100644
--- a/src/mame/drivers/hornet.c
+++ b/src/mame/drivers/hornet.c
@@ -892,7 +892,6 @@ static MACHINE_DRIVER_START( hornet )
MDRV_CPU_CONFIG(sharc_cfg)
MDRV_CPU_DATA_MAP(sharc0_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET( hornet )
@@ -900,10 +899,12 @@ static MACHINE_DRIVER_START( hornet )
MDRV_NVRAM_HANDLER( timekeeper_0 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 48*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 48*8-1)
+
MDRV_PALETTE_LENGTH(65536)
MDRV_VIDEO_START(hornet)
@@ -943,16 +944,15 @@ static MACHINE_DRIVER_START( hornet_2board )
MDRV_VIDEO_UPDATE(hornet_2board)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_PALETTE_LENGTH(65536)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(512, 384)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 0, 383)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(512, 384)
diff --git a/src/mame/drivers/hotblock.c b/src/mame/drivers/hotblock.c
index 19c6590eab0..3d28f970922 100644
--- a/src/mame/drivers/hotblock.c
+++ b/src/mame/drivers/hotblock.c
@@ -190,14 +190,14 @@ static MACHINE_DRIVER_START( hotblock )
MDRV_CPU_IO_MAP(hotblock_io,0)
MDRV_CPU_VBLANK_INT(hotblocks_irq,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(1024,1024)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 200-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(hotblock)
diff --git a/src/mame/drivers/hshavoc.c b/src/mame/drivers/hshavoc.c
index aa1da0ab7d7..ef1c130f1b7 100644
--- a/src/mame/drivers/hshavoc.c
+++ b/src/mame/drivers/hshavoc.c
@@ -140,18 +140,20 @@ static MACHINE_DRIVER_START( genesis_base )
MDRV_CPU_PROGRAM_MAP(genesis_z80_readmem, genesis_z80_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1) /* from vdp at scanline 0xe0 */
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_INTERLEAVE(100)
MDRV_MACHINE_START(genesis)
MDRV_MACHINE_RESET(genesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(342,262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 223)
+
MDRV_PALETTE_LENGTH(64)
MDRV_VIDEO_START(genesis)
diff --git a/src/mame/drivers/hyhoo.c b/src/mame/drivers/hyhoo.c
index c0dbd0aed59..bd7f33acb7f 100644
--- a/src/mame/drivers/hyhoo.c
+++ b/src/mame/drivers/hyhoo.c
@@ -270,17 +270,17 @@ static MACHINE_DRIVER_START( hyhoo )
MDRV_CPU_IO_MAP(readport_hyhoo, writeport_hyhoo)
MDRV_CPU_VBLANK_INT(nb1413m3_interrupt, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(nb1413m3)
MDRV_NVRAM_HANDLER(nb1413m3)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
+
MDRV_VIDEO_START(hyhoo)
MDRV_VIDEO_UPDATE(hyhoo)
diff --git a/src/mame/drivers/hyperspt.c b/src/mame/drivers/hyperspt.c
index 8ef5fa8c569..df8da8662c5 100644
--- a/src/mame/drivers/hyperspt.c
+++ b/src/mame/drivers/hyperspt.c
@@ -468,16 +468,16 @@ static MACHINE_DRIVER_START( hyperspt )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(hyperspt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(hyperspt)
MDRV_PALETTE_LENGTH(16*16+16*16)
diff --git a/src/mame/drivers/hyprduel.c b/src/mame/drivers/hyprduel.c
index c260899fa6b..36b0e8f7027 100644
--- a/src/mame/drivers/hyprduel.c
+++ b/src/mame/drivers/hyprduel.c
@@ -715,16 +715,16 @@ static MACHINE_DRIVER_START( hyprduel )
MDRV_CPU_ADD(M68000,20000000/2) /* 10MHz */
MDRV_CPU_PROGRAM_MAP(hyprduel_readmem2,hyprduel_writemem2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(hyprduel)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, FIRST_VISIBLE_LINE, LAST_VISIBLE_LINE)
+
MDRV_GFXDECODE(14220)
MDRV_PALETTE_LENGTH(8192)
@@ -756,16 +756,16 @@ static MACHINE_DRIVER_START( magerror )
MDRV_CPU_ADD(M68000,20000000/2) /* 10MHz */
MDRV_CPU_PROGRAM_MAP(magerror_readmem2,magerror_writemem2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(hyprduel)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, FIRST_VISIBLE_LINE, LAST_VISIBLE_LINE)
+
MDRV_GFXDECODE(14220)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/igs_180.c b/src/mame/drivers/igs_180.c
index 1419c70ccbb..42fc6f10437 100644
--- a/src/mame/drivers/igs_180.c
+++ b/src/mame/drivers/igs_180.c
@@ -132,14 +132,14 @@ static MACHINE_DRIVER_START( igs_180 )
MDRV_CPU_VBLANK_INT(igs_180_interrupt,2)
//MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(igs_180)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/igs_blit.c b/src/mame/drivers/igs_blit.c
index 3538167c3e3..7c36e1e93bd 100644
--- a/src/mame/drivers/igs_blit.c
+++ b/src/mame/drivers/igs_blit.c
@@ -2359,17 +2359,18 @@ GFXDECODE_END
static MACHINE_DRIVER_START( igs_base )
MDRV_CPU_ADD_TAG("main",M68000, 22000000/3)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
// MDRV_GFXDECODE(igs_blit)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 0, 240-1)
+
MDRV_PALETTE_LENGTH(0x800)
MDRV_VIDEO_START( igs )
diff --git a/src/mame/drivers/igs_m027.c b/src/mame/drivers/igs_m027.c
index 1bf3db4294d..40d8713508c 100644
--- a/src/mame/drivers/igs_m027.c
+++ b/src/mame/drivers/igs_m027.c
@@ -368,17 +368,19 @@ static MACHINE_DRIVER_START( igs_majhong )
MDRV_CPU_PROGRAM_MAP(igs_majhong_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_CPU_VBLANK_INT(igs_majhong_interrupt,1)
//MDRV_NVRAM_HANDLER(generic_0fill)
MDRV_GFXDECODE(igs_m027)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
+
MDRV_PALETTE_LENGTH(0x200)
MDRV_VIDEO_START( igs_majhong )
diff --git a/src/mame/drivers/igs_m68.c b/src/mame/drivers/igs_m68.c
index cb139f31106..c71a0a5f476 100644
--- a/src/mame/drivers/igs_m68.c
+++ b/src/mame/drivers/igs_m68.c
@@ -43,15 +43,16 @@ static MACHINE_DRIVER_START( igs_m68 )
MDRV_CPU_PROGRAM_MAP(igs_m68_map,0)
//MDRV_CPU_VBLANK_INT(irq1_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
//MDRV_GFXDECODE(igs_m68)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x200)
MDRV_VIDEO_START(igs_m68)
diff --git a/src/mame/drivers/ikki.c b/src/mame/drivers/ikki.c
index 82f85ee5145..ee7ec51ca52 100644
--- a/src/mame/drivers/ikki.c
+++ b/src/mame/drivers/ikki.c
@@ -203,14 +203,14 @@ static MACHINE_DRIVER_START( ikki )
MDRV_INTERLEAVE(10)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(ikki)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/imolagp.c b/src/mame/drivers/imolagp.c
index 73729ae2af4..b9086519670 100644
--- a/src/mame/drivers/imolagp.c
+++ b/src/mame/drivers/imolagp.c
@@ -403,13 +403,15 @@ static MACHINE_DRIVER_START( imolagp )
MDRV_CPU_IO_MAP(readport_slave,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ MDRV_INTERLEAVE(100)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
- MDRV_INTERLEAVE(100)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256,256)
MDRV_SCREEN_VISIBLE_AREA(0+64-16,255,0+16,255)
+
MDRV_PALETTE_LENGTH(0x20)
MDRV_VIDEO_START(imolagp)
MDRV_VIDEO_UPDATE(imolagp)
diff --git a/src/mame/drivers/intrscti.c b/src/mame/drivers/intrscti.c
index 221ffb680b5..44693c37d06 100644
--- a/src/mame/drivers/intrscti.c
+++ b/src/mame/drivers/intrscti.c
@@ -94,14 +94,14 @@ static MACHINE_DRIVER_START( intrscti )
MDRV_CPU_IO_MAP(readport,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 512-1)
+
MDRV_GFXDECODE(intrscti)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/inufuku.c b/src/mame/drivers/inufuku.c
index 8c8bb3baffe..0864c886a06 100644
--- a/src/mame/drivers/inufuku.c
+++ b/src/mame/drivers/inufuku.c
@@ -408,17 +408,18 @@ static MACHINE_DRIVER_START( inufuku )
MDRV_CPU_PROGRAM_MAP(inufuku_readmem_sound, inufuku_writemem_sound)
MDRV_CPU_IO_MAP(inufuku_readport_sound, inufuku_writeport_sound)
/* IRQs are triggered by the YM2610 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(inufuku)
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(2048, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 319-1, 1, 224-1)
+
MDRV_GFXDECODE(inufuku)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/iqblock.c b/src/mame/drivers/iqblock.c
index 0886c213d00..6dc71dab672 100644
--- a/src/mame/drivers/iqblock.c
+++ b/src/mame/drivers/iqblock.c
@@ -308,15 +308,16 @@ static MACHINE_DRIVER_START( iqblock )
MDRV_CPU_IO_MAP(main_portmap,0)
MDRV_CPU_VBLANK_INT(iqblock_interrupt,16)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(iqblock)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(iqblock)
MDRV_PALETTE_LENGTH(1024)
@@ -338,15 +339,16 @@ static MACHINE_DRIVER_START( cabaret )
MDRV_CPU_IO_MAP(main_portmap,0)
MDRV_CPU_VBLANK_INT(iqblock_interrupt,16)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(iqblock)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(cabaret)
MDRV_PALETTE_LENGTH(1024)
@@ -368,15 +370,16 @@ static MACHINE_DRIVER_START( pokerigs )
MDRV_CPU_IO_MAP(pokerigs_portmap,0)
MDRV_CPU_VBLANK_INT(iqblock_interrupt,16)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(iqblock)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(cabaret)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/irobot.c b/src/mame/drivers/irobot.c
index ac07397e170..435b13dbc7a 100644
--- a/src/mame/drivers/irobot.c
+++ b/src/mame/drivers/irobot.c
@@ -301,17 +301,17 @@ static MACHINE_DRIVER_START( irobot )
MDRV_CPU_ADD(M6809,1500000)
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(irobot)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 29*8-1)
+
MDRV_GFXDECODE(irobot)
MDRV_PALETTE_LENGTH(64 + 32) /* 64 for polygons, 32 for text */
diff --git a/src/mame/drivers/ironhors.c b/src/mame/drivers/ironhors.c
index e55566f9e8c..121fd27bb26 100644
--- a/src/mame/drivers/ironhors.c
+++ b/src/mame/drivers/ironhors.c
@@ -404,14 +404,14 @@ static MACHINE_DRIVER_START( ironhors )
MDRV_CPU_PROGRAM_MAP(slave_map, 0)
MDRV_CPU_IO_MAP(slave_io_map, 0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(30)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(ironhors)
MDRV_PALETTE_LENGTH(16*8*16+16*8*16)
diff --git a/src/mame/drivers/istellar.c b/src/mame/drivers/istellar.c
index 61a8184e374..8ac52b66401 100644
--- a/src/mame/drivers/istellar.c
+++ b/src/mame/drivers/istellar.c
@@ -348,8 +348,8 @@ static MACHINE_DRIVER_START( istellar )
MDRV_MACHINE_START(istellar)
/* video */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/itech32.c b/src/mame/drivers/itech32.c
index 629e3465935..0e9579c20bd 100644
--- a/src/mame/drivers/itech32.c
+++ b/src/mame/drivers/itech32.c
@@ -1570,10 +1570,10 @@ static MACHINE_DRIVER_START( timekill )
MDRV_NVRAM_HANDLER(itech32)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_PALETTE_LENGTH(8192)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(VIDEO_CLOCK, 508, 0, 384, 262, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
diff --git a/src/mame/drivers/itech8.c b/src/mame/drivers/itech8.c
index d172a514d0c..d94cc2cd28e 100644
--- a/src/mame/drivers/itech8.c
+++ b/src/mame/drivers/itech8.c
@@ -1766,16 +1766,16 @@ static MACHINE_DRIVER_START( itech8_core_lo )
MDRV_CPU_PROGRAM_MAP(tmslo_map,0)
MDRV_CPU_VBLANK_INT(generate_nmi,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_START(itech8)
MDRV_MACHINE_RESET(itech8)
MDRV_NVRAM_HANDLER(itech8)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_VIDEO_START(itech8)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(512, 263)
@@ -1848,6 +1848,7 @@ static MACHINE_DRIVER_START( wfortune )
MDRV_IMPORT_FROM(itech8_sound_ym2203)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2layer)
MACHINE_DRIVER_END
@@ -1860,6 +1861,7 @@ static MACHINE_DRIVER_START( stratab_hi )
MDRV_IMPORT_FROM(itech8_sound_ym2203)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2layer)
MACHINE_DRIVER_END
@@ -1872,6 +1874,7 @@ static MACHINE_DRIVER_START( stratab_lo )
MDRV_IMPORT_FROM(itech8_sound_ym2203)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2layer)
MACHINE_DRIVER_END
@@ -1888,6 +1891,7 @@ static MACHINE_DRIVER_START( slikshot_hi )
MDRV_CPU_IO_MAP(slikz80_io_map,0)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_UPDATE(slikshot)
MACHINE_DRIVER_END
@@ -1904,6 +1908,7 @@ static MACHINE_DRIVER_START( slikshot_lo )
MDRV_CPU_IO_MAP(slikz80_io_map,0)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_UPDATE(slikshot)
MACHINE_DRIVER_END
@@ -1916,6 +1921,7 @@ static MACHINE_DRIVER_START( slikshot_lo_noz80 )
MDRV_IMPORT_FROM(itech8_sound_ym2203)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2page)
MACHINE_DRIVER_END
@@ -1937,6 +1943,7 @@ static MACHINE_DRIVER_START( hstennis_hi )
MDRV_IMPORT_FROM(itech8_sound_ym3812)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 399, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2page_large)
MACHINE_DRIVER_END
@@ -1949,6 +1956,7 @@ static MACHINE_DRIVER_START( hstennis_lo )
MDRV_IMPORT_FROM(itech8_sound_ym3812)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 399, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2page_large)
MACHINE_DRIVER_END
@@ -1963,6 +1971,7 @@ static MACHINE_DRIVER_START( rimrockn )
MDRV_CPU_REPLACE("main", M6809/*HD6309*/, CLOCK_12MHz/4)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(24, 375, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2page_large)
MACHINE_DRIVER_END
@@ -1978,6 +1987,7 @@ static MACHINE_DRIVER_START( ninclown )
MDRV_CPU_PROGRAM_MAP(ninclown_map,0)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(64, 423, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2page_large)
MACHINE_DRIVER_END
@@ -1993,6 +2003,7 @@ static MACHINE_DRIVER_START( gtg2 )
MDRV_CPU_PROGRAM_MAP(gtg2_map,0)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
MDRV_VIDEO_UPDATE(itech8_2layer)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/jack.c b/src/mame/drivers/jack.c
index 114216d699d..95b6c6517b4 100644
--- a/src/mame/drivers/jack.c
+++ b/src/mame/drivers/jack.c
@@ -882,14 +882,14 @@ static MACHINE_DRIVER_START( jack )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(jack)
MDRV_PALETTE_LENGTH(32)
@@ -934,6 +934,7 @@ static MACHINE_DRIVER_START( joinem )
MDRV_GFXDECODE(joinem)
MDRV_PALETTE_LENGTH(0x100)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
MDRV_PALETTE_INIT(joinem)
@@ -953,6 +954,7 @@ static MACHINE_DRIVER_START( loverboy )
MDRV_GFXDECODE(joinem)
MDRV_PALETTE_LENGTH(0x100)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
MDRV_PALETTE_INIT(joinem)
diff --git a/src/mame/drivers/jackal.c b/src/mame/drivers/jackal.c
index cf6be4f7b8e..211148e137b 100644
--- a/src/mame/drivers/jackal.c
+++ b/src/mame/drivers/jackal.c
@@ -264,17 +264,19 @@ static MACHINE_DRIVER_START( jackal )
MDRV_CPU_ADD(M6809, MASTER_CLOCK/12) // verified on pcb
MDRV_CPU_PROGRAM_MAP(slave_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(jackal)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(jackal)
MDRV_PALETTE_LENGTH(256*16+16*16+16*16)
diff --git a/src/mame/drivers/jackpool.c b/src/mame/drivers/jackpool.c
index ab3c042f55c..20716356dd9 100644
--- a/src/mame/drivers/jackpool.c
+++ b/src/mame/drivers/jackpool.c
@@ -177,15 +177,16 @@ static MACHINE_DRIVER_START( jackpool )
MDRV_CPU_PROGRAM_MAP(jackpool_readmem,jackpool_writemem)
MDRV_CPU_VBLANK_INT(jackpool_interrupt,3) // ?
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(jackpool)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x200)
MDRV_VIDEO_START(jackpool)
diff --git a/src/mame/drivers/jailbrek.c b/src/mame/drivers/jailbrek.c
index 45f8604bc95..436d03b4832 100644
--- a/src/mame/drivers/jailbrek.c
+++ b/src/mame/drivers/jailbrek.c
@@ -249,11 +249,10 @@ static MACHINE_DRIVER_START( jailbrek )
MDRV_MACHINE_START(jailbrek)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(jailbrek)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 396, 8, 248, 256, 16, 240)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
diff --git a/src/mame/drivers/jalmah.c b/src/mame/drivers/jalmah.c
index f0b374f7efa..c0b342d6a34 100644
--- a/src/mame/drivers/jalmah.c
+++ b/src/mame/drivers/jalmah.c
@@ -1004,15 +1004,16 @@ static MACHINE_DRIVER_START( jalmah )
MDRV_CPU_PROGRAM_MAP(jalmah,0)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(jalmah)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x400)
MDRV_MACHINE_RESET(daireika)
diff --git a/src/mame/drivers/jchan.c b/src/mame/drivers/jchan.c
index 664f5c31064..ec16da80eaf 100644
--- a/src/mame/drivers/jchan.c
+++ b/src/mame/drivers/jchan.c
@@ -754,12 +754,12 @@ static MACHINE_DRIVER_START( jchan )
MDRV_CPU_ADD(M68000, 16000000)
MDRV_CPU_PROGRAM_MAP(jchan_sub,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(jchan)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
diff --git a/src/mame/drivers/jcross.c b/src/mame/drivers/jcross.c
index 224ee2d704c..78915e38b8c 100644
--- a/src/mame/drivers/jcross.c
+++ b/src/mame/drivers/jcross.c
@@ -273,15 +273,16 @@ static MACHINE_DRIVER_START( jcross )
MDRV_CPU_IO_MAP(sound_portmap,0)
MDRV_CPU_PERIODIC_INT(irq0_line_hold, 244)
- MDRV_SCREEN_REFRESH_RATE(61)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(61)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 255,0, 223)
+
MDRV_GFXDECODE(jcross)
MDRV_PALETTE_LENGTH((16+2)*16)
MDRV_VIDEO_START(jcross)
diff --git a/src/mame/drivers/jollyjgr.c b/src/mame/drivers/jollyjgr.c
index 57a874ce4df..a6b63702611 100644
--- a/src/mame/drivers/jollyjgr.c
+++ b/src/mame/drivers/jollyjgr.c
@@ -402,11 +402,10 @@ static MACHINE_DRIVER_START( jollyjgr )
MDRV_CPU_PROGRAM_MAP(jollyjgr_map,0)
MDRV_CPU_VBLANK_INT(jollyjgr_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/jongkyo.c b/src/mame/drivers/jongkyo.c
index 996b33ad42e..01ee0d997c0 100644
--- a/src/mame/drivers/jongkyo.c
+++ b/src/mame/drivers/jongkyo.c
@@ -593,14 +593,14 @@ static MACHINE_DRIVER_START( jongkyo )
MDRV_CPU_IO_MAP(jongkyo_portmap,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 8, 256-8-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_PALETTE_INIT(jongkyo)
diff --git a/src/mame/drivers/jpmimpct.c b/src/mame/drivers/jpmimpct.c
index 09c6a851765..4cb322e2729 100644
--- a/src/mame/drivers/jpmimpct.c
+++ b/src/mame/drivers/jpmimpct.c
@@ -849,7 +849,7 @@ static MACHINE_DRIVER_START( jpmimpct )
MDRV_MACHINE_RESET(jpmimpct)
MDRV_NVRAM_HANDLER(generic_0fill)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(40000000/4, 156*4, 0, 100*4, 328, 0, 300)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/jrpacman.c b/src/mame/drivers/jrpacman.c
index e9421d3d090..5803f7ea1c6 100644
--- a/src/mame/drivers/jrpacman.c
+++ b/src/mame/drivers/jrpacman.c
@@ -271,14 +271,14 @@ static MACHINE_DRIVER_START( jrpacman )
MDRV_CPU_IO_MAP(port_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60.606060)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(jrpacman)
MDRV_PALETTE_LENGTH(128*4)
diff --git a/src/mame/drivers/junofrst.c b/src/mame/drivers/junofrst.c
index bb9c3f151ad..5a6b71d9d5a 100644
--- a/src/mame/drivers/junofrst.c
+++ b/src/mame/drivers/junofrst.c
@@ -348,11 +348,10 @@ static MACHINE_DRIVER_START( junofrst )
MDRV_CPU_PROGRAM_MAP(mcu_map,0)
MDRV_CPU_IO_MAP(mcu_io_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(30)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1) /* not sure about the visible area */
diff --git a/src/mame/drivers/kaneko16.c b/src/mame/drivers/kaneko16.c
index 6861708fc16..07e2878e320 100644
--- a/src/mame/drivers/kaneko16.c
+++ b/src/mame/drivers/kaneko16.c
@@ -1682,16 +1682,18 @@ static MACHINE_DRIVER_START( berlwall )
MDRV_CPU_PROGRAM_MAP(berlwall,0)
MDRV_CPU_VBLANK_INT(kaneko16_interrupt,KANEKO16_INTERRUPTS_NUM)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(berlwall)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK) // mangled sprites otherwise
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK) // mangled sprites otherwise
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 240-1)
+
MDRV_GFXDECODE(1x4bit_1x4bit)
MDRV_PALETTE_LENGTH(2048 + 32768) /* 32768 static colors for the bg */
@@ -1727,17 +1729,19 @@ static MACHINE_DRIVER_START( bakubrkr )
MDRV_CPU_PROGRAM_MAP(bakubrkr,0)
MDRV_CPU_VBLANK_INT(kaneko16_interrupt,KANEKO16_INTERRUPTS_NUM)
- MDRV_SCREEN_REFRESH_RATE(59)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(bakubrkr)
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK) // mangled sprites otherwise
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK) // mangled sprites otherwise
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 240-1)
+
MDRV_GFXDECODE(1x4bit_2x4bit)
MDRV_PALETTE_LENGTH(2048)
@@ -1785,16 +1789,18 @@ static MACHINE_DRIVER_START( blazeon )
MDRV_CPU_PROGRAM_MAP(blazeon_soundmem,0)
MDRV_CPU_IO_MAP(blazeon_soundport,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(blazeon)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1 -8)
+
MDRV_GFXDECODE(1x4bit_1x4bit)
MDRV_PALETTE_LENGTH(2048)
@@ -1832,16 +1838,18 @@ static MACHINE_DRIVER_START( gtmr )
MDRV_CPU_PROGRAM_MAP(gtmr_readmem,gtmr_writemem)
MDRV_CPU_VBLANK_INT(kaneko16_interrupt,KANEKO16_INTERRUPTS_NUM)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(gtmr)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
+
MDRV_GFXDECODE(1x8bit_2x4bit)
MDRV_PALETTE_LENGTH(32768)
@@ -1922,17 +1930,19 @@ static MACHINE_DRIVER_START( mgcrystl )
MDRV_CPU_PROGRAM_MAP(mgcrystl,0)
MDRV_CPU_VBLANK_INT(kaneko16_interrupt,KANEKO16_INTERRUPTS_NUM)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(mgcrystl)
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(1x4bit_2x4bit)
MDRV_PALETTE_LENGTH(2048)
@@ -1990,16 +2000,16 @@ static MACHINE_DRIVER_START( shogwarr )
MDRV_CPU_PROGRAM_MAP(shogwarr,0)
MDRV_CPU_VBLANK_INT(shogwarr_interrupt,SHOGWARR_INTERRUPTS_NUM)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(shogwarr)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
+
MDRV_GFXDECODE(1x4bit_1x4bit)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/kangaroo.c b/src/mame/drivers/kangaroo.c
index 2ad44143258..f19f6d86cbe 100644
--- a/src/mame/drivers/kangaroo.c
+++ b/src/mame/drivers/kangaroo.c
@@ -383,10 +383,10 @@ static MACHINE_DRIVER_START( nomcu )
MDRV_MACHINE_RESET(kangaroo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_SCANLINE)
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_SCANLINE)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK, 320*2, 0*2, 256*2, 260, 8, 248)
MDRV_VIDEO_START(kangaroo)
diff --git a/src/mame/drivers/karnov.c b/src/mame/drivers/karnov.c
index ba2e040b389..e23157d57d5 100644
--- a/src/mame/drivers/karnov.c
+++ b/src/mame/drivers/karnov.c
@@ -695,15 +695,18 @@ static MACHINE_DRIVER_START( karnov )
/* audio CPU */ /* Accurate */
MDRV_CPU_PROGRAM_MAP(karnov_s_readmem,karnov_s_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(karnov)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(karnov)
MDRV_PALETTE_LENGTH(1024)
@@ -734,15 +737,18 @@ static MACHINE_DRIVER_START( wndrplnt )
/* audio CPU */ /* Accurate */
MDRV_CPU_PROGRAM_MAP(karnov_s_readmem,karnov_s_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(karnov)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(karnov)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/kchamp.c b/src/mame/drivers/kchamp.c
index 7ab1603e978..c00d169d7db 100644
--- a/src/mame/drivers/kchamp.c
+++ b/src/mame/drivers/kchamp.c
@@ -452,14 +452,15 @@ static MACHINE_DRIVER_START( kchampvs )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
/* irq's triggered from main cpu */
/* nmi's from msm5205 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(kchamp)
MDRV_PALETTE_LENGTH(256)
@@ -500,14 +501,15 @@ static MACHINE_DRIVER_START( kchamp )
MDRV_CPU_PERIODIC_INT(sound_int, 125) /* Hz */
/* irq's triggered from main cpu */
/* nmi's from 125 Hz clock */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(kchamp)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/kickgoal.c b/src/mame/drivers/kickgoal.c
index 2e918fc4df2..77aa0bab834 100644
--- a/src/mame/drivers/kickgoal.c
+++ b/src/mame/drivers/kickgoal.c
@@ -673,16 +673,16 @@ static MACHINE_DRIVER_START( kickgoal )
/* Program and Data Maps are internal to the MCU */
MDRV_CPU_IO_MAP(kickgoal_sound_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(kickgoal)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(9*8, 55*8-1, 4*8, 60*8-1)
+
MDRV_GFXDECODE(kickgoal)
MDRV_PALETTE_LENGTH(1024)
@@ -708,16 +708,16 @@ static MACHINE_DRIVER_START( actionhw )
/* Program and Data Maps are internal to the MCU */
MDRV_CPU_IO_MAP(actionhw_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(kickgoal) // 93C46 really
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(10*8+2, 54*8-1+2, 0*8, 30*8-1)
+
MDRV_GFXDECODE(actionhw)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/kingobox.c b/src/mame/drivers/kingobox.c
index 61cf9726b14..b635a5d0512 100644
--- a/src/mame/drivers/kingobox.c
+++ b/src/mame/drivers/kingobox.c
@@ -569,15 +569,16 @@ static MACHINE_DRIVER_START( kingofb )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 6000) /* Hz */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100) /* We really need heavy synching among the processors */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(kingobox)
MDRV_PALETTE_LENGTH(256+8*2)
@@ -619,15 +620,16 @@ static MACHINE_DRIVER_START( ringking )
MDRV_CPU_IO_MAP(rk_sound_readport,rk_sound_writeport)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 6000) /* Hz */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100) /* We really need heavy synching among the processors */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(rk)
MDRV_PALETTE_LENGTH(256+8*2)
diff --git a/src/mame/drivers/kingpin.c b/src/mame/drivers/kingpin.c
index 5e410ac6b21..2add8e8bbde 100644
--- a/src/mame/drivers/kingpin.c
+++ b/src/mame/drivers/kingpin.c
@@ -158,6 +158,8 @@ static MACHINE_DRIVER_START( kingpin )
/* VIDEO */
MDRV_IMPORT_FROM(tms9928a)
+
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
diff --git a/src/mame/drivers/kinst.c b/src/mame/drivers/kinst.c
index ca25e2c3d72..29389ea72cc 100644
--- a/src/mame/drivers/kinst.c
+++ b/src/mame/drivers/kinst.c
@@ -659,17 +659,19 @@ static MACHINE_DRIVER_START( kinst )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_VBLANK_INT(irq0_start,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_START(kinst)
MDRV_MACHINE_RESET(kinst)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_UPDATE(kinst)
diff --git a/src/mame/drivers/kinstb.c b/src/mame/drivers/kinstb.c
index eccde15605e..b09a5328fca 100644
--- a/src/mame/drivers/kinstb.c
+++ b/src/mame/drivers/kinstb.c
@@ -224,9 +224,8 @@ static MACHINE_DRIVER_START( kinstb )
/* video hardware */
MDRV_VIDEO_UPDATE( snes )
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(DOTCLK_NTSC, SNES_HTOTAL, 0, SNES_SCR_WIDTH, SNES_VTOTAL_NTSC, 0, SNES_SCR_HEIGHT_NTSC)
diff --git a/src/mame/drivers/klax.c b/src/mame/drivers/klax.c
index 9022046db16..be3f8dcd4d7 100644
--- a/src/mame/drivers/klax.c
+++ b/src/mame/drivers/klax.c
@@ -204,11 +204,11 @@ static MACHINE_DRIVER_START( klax )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(klax)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS-2 chip to generate video signals */
diff --git a/src/mame/drivers/kncljoe.c b/src/mame/drivers/kncljoe.c
index 7a9676fda56..7bd2fea316e 100644
--- a/src/mame/drivers/kncljoe.c
+++ b/src/mame/drivers/kncljoe.c
@@ -177,14 +177,16 @@ static MACHINE_DRIVER_START( kncljoe )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1500))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(kncljoe)
MDRV_PALETTE_LENGTH(16*8+16*8)
diff --git a/src/mame/drivers/koikoi.c b/src/mame/drivers/koikoi.c
index c6f5d1e5d4b..c07c6ed96c3 100644
--- a/src/mame/drivers/koikoi.c
+++ b/src/mame/drivers/koikoi.c
@@ -254,14 +254,14 @@ static MACHINE_DRIVER_START( koikoi )
MDRV_CPU_IO_MAP(readport, 0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(koikoi)
MDRV_PALETTE_LENGTH(8*32)
MDRV_PALETTE_INIT(koikoi)
diff --git a/src/mame/drivers/konamigq.c b/src/mame/drivers/konamigq.c
index 019e8b270af..662f0f10e27 100644
--- a/src/mame/drivers/konamigq.c
+++ b/src/mame/drivers/konamigq.c
@@ -383,18 +383,18 @@ static MACHINE_DRIVER_START( konamigq )
MDRV_CPU_PROGRAM_MAP( sndreadmem, sndwritemem )
MDRV_CPU_PERIODIC_INT( irq2_line_hold, 480 )
- MDRV_SCREEN_REFRESH_RATE( 60 )
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC( 0 ))
-
MDRV_MACHINE_START( konamigq )
MDRV_MACHINE_RESET( konamigq )
MDRV_NVRAM_HANDLER( konamigq_93C46 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES( VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( 60 )
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC( 0 ))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE( 1024, 1024 )
MDRV_SCREEN_VISIBLE_AREA( 0, 639, 0, 479 )
+
MDRV_PALETTE_LENGTH( 65536 )
MDRV_PALETTE_INIT( psx )
diff --git a/src/mame/drivers/konamigv.c b/src/mame/drivers/konamigv.c
index c22b6163e45..d83aad1b15c 100644
--- a/src/mame/drivers/konamigv.c
+++ b/src/mame/drivers/konamigv.c
@@ -351,17 +351,17 @@ static MACHINE_DRIVER_START( konamigv )
MDRV_CPU_PROGRAM_MAP( konamigv_map, 0 )
MDRV_CPU_VBLANK_INT( psx_vblank, 1 )
- MDRV_SCREEN_REFRESH_RATE( 60 )
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC( 0 ))
-
MDRV_MACHINE_RESET( konamigv )
MDRV_NVRAM_HANDLER(konamigv_93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES( VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( 60 )
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC( 0 ))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE( 1024, 512 )
MDRV_SCREEN_VISIBLE_AREA( 0, 639, 0, 479 )
+
MDRV_PALETTE_LENGTH( 65536 )
MDRV_PALETTE_INIT( psx )
diff --git a/src/mame/drivers/konamigx.c b/src/mame/drivers/konamigx.c
index 4ce208bb211..754a2d676f0 100644
--- a/src/mame/drivers/konamigx.c
+++ b/src/mame/drivers/konamigx.c
@@ -1324,18 +1324,21 @@ static MACHINE_DRIVER_START( konamigx )
MDRV_CPU_PERIODIC_INT(irq2_line_hold, 480)
MDRV_INTERLEAVE(32)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
MDRV_MACHINE_START(konamigx)
MDRV_MACHINE_RESET(konamigx)
MDRV_NVRAM_HANDLER(konamigx_93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(24, 24+288-1, 16, 16+224-1)
+
MDRV_PALETTE_LENGTH(8192)
MDRV_VIDEO_START(konamigx_5bpp)
@@ -1358,6 +1361,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( dragoonj )
MDRV_IMPORT_FROM(konamigx)
MDRV_CPU_REPLACE("main", M68EC020, 26400000) // needs higher clock to stop sprite flickerings
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(40, 40+384-1, 16, 16+224-1)
MDRV_VIDEO_START(dragoonj)
MACHINE_DRIVER_END
@@ -1379,6 +1383,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( opengolf )
MDRV_IMPORT_FROM(konamigx)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(40, 40+384-1, 16, 16+224-1)
MDRV_GFXDECODE(opengolf)
MDRV_VIDEO_START(opengolf)
@@ -1389,6 +1394,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( racinfrc )
MDRV_IMPORT_FROM(konamigx)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(32, 32+384-1, 16, 16+224-1)
MDRV_GFXDECODE(racinfrc)
MDRV_VIDEO_START(racinfrc)
@@ -1406,6 +1412,7 @@ static MACHINE_DRIVER_START( gxtype3 )
MDRV_VIDEO_START(konamigx_type3)
MDRV_PALETTE_LENGTH(16384)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 32*8-1)
MDRV_GFXDECODE(type34)
@@ -1418,6 +1425,7 @@ static MACHINE_DRIVER_START( gxtype4 )
MDRV_CPU_PROGRAM_MAP(gx_base_memmap, gx_type4_map)
MDRV_CPU_VBLANK_INT(konamigx_hbinterrupt, 262)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 32*8-1)
MDRV_PALETTE_LENGTH(16384)
@@ -1428,6 +1436,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( winspike )
MDRV_IMPORT_FROM(konamigx)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(38, 38+384-1, 16, 16+224-1)
MDRV_VIDEO_START(winspike)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/konamim2.c b/src/mame/drivers/konamim2.c
index 7cdf182d13d..a2ae740b0cf 100644
--- a/src/mame/drivers/konamim2.c
+++ b/src/mame/drivers/konamim2.c
@@ -1054,14 +1054,14 @@ static MACHINE_DRIVER_START( m2 )
MDRV_CPU_CONFIG(ppc602_config)
MDRV_CPU_PROGRAM_MAP(m2_main, 0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(640, 480)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 0, 383)
+
MDRV_PALETTE_LENGTH(65536)
MDRV_VIDEO_START(m2)
diff --git a/src/mame/drivers/kopunch.c b/src/mame/drivers/kopunch.c
index 345fce6b4de..530bef71d95 100644
--- a/src/mame/drivers/kopunch.c
+++ b/src/mame/drivers/kopunch.c
@@ -170,14 +170,14 @@ static MACHINE_DRIVER_START( kopunch )
MDRV_CPU_IO_MAP(kopunch_io_map,0)
MDRV_CPU_VBLANK_INT(kopunch_interrupt,4) /* ??? */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(kopunch)
MDRV_PALETTE_LENGTH(8)
diff --git a/src/mame/drivers/ksayakyu.c b/src/mame/drivers/ksayakyu.c
index 316b55157ef..7f374675bbe 100644
--- a/src/mame/drivers/ksayakyu.c
+++ b/src/mame/drivers/ksayakyu.c
@@ -241,8 +241,6 @@ static MACHINE_DRIVER_START( ksayakyu )
MDRV_CPU_ADD(Z80,8000000/2)
MDRV_CPU_PROGRAM_MAP(maincpu_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_CPU_ADD(Z80, 80000000/2)
/* audio CPU */
@@ -252,10 +250,11 @@ static MACHINE_DRIVER_START( ksayakyu )
MDRV_INTERLEAVE(1000)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
-
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MDRV_GFXDECODE(ksayakyu)
diff --git a/src/mame/drivers/ksys573.c b/src/mame/drivers/ksys573.c
index 8bfd9241240..af97a8e68f9 100644
--- a/src/mame/drivers/ksys573.c
+++ b/src/mame/drivers/ksys573.c
@@ -2729,17 +2729,17 @@ static MACHINE_DRIVER_START( konami573 )
MDRV_CPU_PROGRAM_MAP( konami573_map, 0 )
MDRV_CPU_VBLANK_INT( sys573_vblank, 1 )
- MDRV_SCREEN_REFRESH_RATE( 60 )
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC( 0 ))
-
MDRV_MACHINE_RESET( konami573 )
MDRV_NVRAM_HANDLER( konami573 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES( VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( 60 )
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC( 0 ))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE( 1024, 1024 )
MDRV_SCREEN_VISIBLE_AREA( 0, 639, 0, 479 )
+
MDRV_PALETTE_LENGTH( 65536 )
MDRV_PALETTE_INIT( psx )
diff --git a/src/mame/drivers/kyugo.c b/src/mame/drivers/kyugo.c
index 7ea70fda400..7aec39860fc 100644
--- a/src/mame/drivers/kyugo.c
+++ b/src/mame/drivers/kyugo.c
@@ -503,17 +503,18 @@ static MACHINE_DRIVER_START( gyrodine )
MDRV_CPU_IO_MAP(gyrodine_sub_portmap,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(kyugo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(kyugo)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/labyrunr.c b/src/mame/drivers/labyrunr.c
index 61c99240acc..339ae585fdd 100644
--- a/src/mame/drivers/labyrunr.c
+++ b/src/mame/drivers/labyrunr.c
@@ -243,14 +243,14 @@ static MACHINE_DRIVER_START( labyrunr )
MDRV_CPU_PROGRAM_MAP(labyrunr_readmem,labyrunr_writemem)
MDRV_CPU_VBLANK_INT(labyrunr_interrupt,8) /* 1 IRQ + 4 NMI (generated by 007121) */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(37*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 35*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(labyrunr)
MDRV_PALETTE_LENGTH(2*8*16*16)
diff --git a/src/mame/drivers/ladybug.c b/src/mame/drivers/ladybug.c
index 792e70b108a..685b454a512 100644
--- a/src/mame/drivers/ladybug.c
+++ b/src/mame/drivers/ladybug.c
@@ -662,14 +662,14 @@ static MACHINE_DRIVER_START( ladybug )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(ladybug_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 4*8, 28*8-1)
+
MDRV_GFXDECODE(ladybug)
MDRV_PALETTE_LENGTH(4*8+4*16)
@@ -738,14 +738,14 @@ static MACHINE_DRIVER_START( sraider )
MDRV_CPU_IO_MAP(sraider_cpu2_io,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 4*8, 28*8-1)
+
MDRV_GFXDECODE(sraider)
MDRV_PALETTE_LENGTH(4*8+4*16+32+2)
diff --git a/src/mame/drivers/ladyfrog.c b/src/mame/drivers/ladyfrog.c
index 7c27088b68e..055995b344a 100644
--- a/src/mame/drivers/ladyfrog.c
+++ b/src/mame/drivers/ladyfrog.c
@@ -289,13 +289,12 @@ static MACHINE_DRIVER_START( ladyfrog )
MDRV_CPU_VBLANK_INT(irq0_line_hold,2)
/* video hardware */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
#if ladyfrog_scr_size
diff --git a/src/mame/drivers/laserbas.c b/src/mame/drivers/laserbas.c
index 4da2429247b..f5b72de4171 100644
--- a/src/mame/drivers/laserbas.c
+++ b/src/mame/drivers/laserbas.c
@@ -133,12 +133,13 @@ static MACHINE_DRIVER_START( laserbas )
MDRV_CPU_IO_MAP(laserbas_io,0)
MDRV_CPU_VBLANK_INT(laserbas_interrupt,2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(32)
MDRV_VIDEO_START(laserbas)
MDRV_VIDEO_UPDATE(laserbas)
diff --git a/src/mame/drivers/laserbat.c b/src/mame/drivers/laserbat.c
index dab8e4123bb..e2d6b0f084a 100644
--- a/src/mame/drivers/laserbat.c
+++ b/src/mame/drivers/laserbat.c
@@ -695,11 +695,10 @@ static MACHINE_DRIVER_START( laserbat )
MDRV_CPU_IO_MAP(laserbat_io_map,0)
MDRV_CPU_VBLANK_INT(laserbat_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(50)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(1*8, 29*8-1, 2*8, 32*8-1)
@@ -734,14 +733,13 @@ static MACHINE_DRIVER_START( catnmous )
MDRV_CPU_PROGRAM_MAP(catnmous_sound_map,0)
MDRV_CPU_PERIODIC_INT(zaccaria_cb1_toggle, (double)3580000/4096)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_START(catnmous)
MDRV_MACHINE_RESET(catnmous)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 32*8-1)
diff --git a/src/mame/drivers/lasso.c b/src/mame/drivers/lasso.c
index 61385cdff0f..fe5a19dd5eb 100644
--- a/src/mame/drivers/lasso.c
+++ b/src/mame/drivers/lasso.c
@@ -577,19 +577,19 @@ static MACHINE_DRIVER_START( base )
MDRV_CPU_ADD_TAG("audio", M6502, 600000)
MDRV_CPU_PROGRAM_MAP(lasso_audio_map, 0)
- MDRV_SCREEN_REFRESH_RATE(57) /* guess, but avoids glitching of Chameleon's high score table */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_CPU_VBLANK_INT(lasso_interrupt,2) /* IRQ = VBlank, NMI = Coin Insertion */
MDRV_INTERLEAVE(100)
MDRV_MACHINE_START(lasso)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(57) /* guess, but avoids glitching of Chameleon's high score table */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(lasso)
MDRV_PALETTE_LENGTH(0x40)
@@ -641,6 +641,7 @@ static MACHINE_DRIVER_START( wwjgtin )
MDRV_CPU_PROGRAM_MAP(wwjgtin_audio_map,0)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1) // Smaller visible area?
MDRV_GFXDECODE(wwjgtin) // Has 1 additional layer
MDRV_PALETTE_LENGTH(0x40 + 16*16)
diff --git a/src/mame/drivers/lastduel.c b/src/mame/drivers/lastduel.c
index bd6dc294578..0e73d8b208c 100644
--- a/src/mame/drivers/lastduel.c
+++ b/src/mame/drivers/lastduel.c
@@ -267,14 +267,16 @@ static MACHINE_DRIVER_START( lastduel )
/* audio CPU */ /* Accurate */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(lastduel)
MDRV_PALETTE_LENGTH(1024)
@@ -305,14 +307,16 @@ static MACHINE_DRIVER_START( madgear )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(mg_sound_readmem,mg_sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(madgear)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/lastfght.c b/src/mame/drivers/lastfght.c
index 3035aaf4751..514e1c203c4 100644
--- a/src/mame/drivers/lastfght.c
+++ b/src/mame/drivers/lastfght.c
@@ -468,11 +468,12 @@ static MACHINE_DRIVER_START( lastfght )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES( VIDEO_TYPE_RASTER )
+ MDRV_PALETTE_LENGTH( 256 )
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE( 512, 256 )
MDRV_SCREEN_VISIBLE_AREA( 0, 512-1, 0, 256-16-1 )
- MDRV_PALETTE_LENGTH( 256 )
MDRV_SCREEN_REFRESH_RATE( 60 )
MDRV_VIDEO_START( lastfght )
diff --git a/src/mame/drivers/lazercmd.c b/src/mame/drivers/lazercmd.c
index 5a6adc4b625..7e4468c053b 100644
--- a/src/mame/drivers/lazercmd.c
+++ b/src/mame/drivers/lazercmd.c
@@ -622,15 +622,15 @@ static MACHINE_DRIVER_START( lazercmd )
MDRV_CPU_IO_MAP(lazercmd_portmap,0)
MDRV_CPU_VBLANK_INT(lazercmd_timer, 128) /* 7680 Hz */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(HORZ_RES * HORZ_CHR, VERT_RES * VERT_CHR)
MDRV_SCREEN_VISIBLE_AREA(0 * HORZ_CHR, HORZ_RES * HORZ_CHR - 1,
0 * VERT_CHR, (VERT_RES - 1) * VERT_CHR - 1)
+
MDRV_GFXDECODE(lazercmd)
MDRV_PALETTE_LENGTH(5)
@@ -657,15 +657,15 @@ static MACHINE_DRIVER_START( medlanes )
MDRV_CPU_IO_MAP(lazercmd_portmap,0)
MDRV_CPU_VBLANK_INT(lazercmd_timer, 128) /* 7680 Hz */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(HORZ_RES * HORZ_CHR, VERT_RES * VERT_CHR)
MDRV_SCREEN_VISIBLE_AREA(0 * HORZ_CHR, HORZ_RES * HORZ_CHR - 1,
0 * VERT_CHR, VERT_RES * VERT_CHR - 1)
+
MDRV_GFXDECODE(lazercmd)
MDRV_PALETTE_LENGTH(5)
@@ -692,15 +692,15 @@ static MACHINE_DRIVER_START( bbonk )
MDRV_CPU_IO_MAP(lazercmd_portmap,0)
MDRV_CPU_VBLANK_INT(bbonk_timer, 128) /* 7680 Hz */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(HORZ_RES * HORZ_CHR, VERT_RES * VERT_CHR)
MDRV_SCREEN_VISIBLE_AREA(0 * HORZ_CHR, HORZ_RES * HORZ_CHR - 1,
0 * VERT_CHR, (VERT_RES - 1) * VERT_CHR - 1)
+
MDRV_GFXDECODE(lazercmd)
MDRV_PALETTE_LENGTH(5)
diff --git a/src/mame/drivers/legionna.c b/src/mame/drivers/legionna.c
index 2958cf86fd9..f3f9ec9e2b4 100644
--- a/src/mame/drivers/legionna.c
+++ b/src/mame/drivers/legionna.c
@@ -3472,12 +3472,15 @@ static MACHINE_DRIVER_START( legionna )
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(legionna)
MDRV_PALETTE_LENGTH(128*16)
@@ -3501,12 +3504,15 @@ static MACHINE_DRIVER_START( heatbrl )
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(heatbrl)
MDRV_PALETTE_LENGTH(128*16)
@@ -3529,12 +3535,15 @@ static MACHINE_DRIVER_START( godzilla )
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(61)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(heatbrl)
MDRV_PALETTE_LENGTH(128*16)
@@ -3557,12 +3566,15 @@ static MACHINE_DRIVER_START( denjinmk )
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_REFRESH_RATE(61)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(heatbrl)
MDRV_PALETTE_LENGTH(128*16)
@@ -3585,12 +3597,15 @@ static MACHINE_DRIVER_START( sdgndmrb )
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(sdgndmrb)
MDRV_PALETTE_LENGTH(128*16)
@@ -3614,12 +3629,15 @@ static MACHINE_DRIVER_START( cupsoc )
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(heatbrl)
MDRV_PALETTE_LENGTH(128*16)
@@ -3647,12 +3665,15 @@ static MACHINE_DRIVER_START( cupsocbl )
//MDRV_MACHINE_INIT(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(heatbrl)
MDRV_PALETTE_LENGTH(128*16)
diff --git a/src/mame/drivers/lemmings.c b/src/mame/drivers/lemmings.c
index 95b92630574..eaed1436db3 100644
--- a/src/mame/drivers/lemmings.c
+++ b/src/mame/drivers/lemmings.c
@@ -281,14 +281,16 @@ static MACHINE_DRIVER_START( lemmings )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(lemmings)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/lethal.c b/src/mame/drivers/lethal.c
index 15f502a57f0..ad797fe9142 100644
--- a/src/mame/drivers/lethal.c
+++ b/src/mame/drivers/lethal.c
@@ -661,9 +661,6 @@ static MACHINE_DRIVER_START( lethalen )
MDRV_CPU_ADD_TAG("sound", Z80, 8000000)
MDRV_CPU_PROGRAM_MAP(le_sound, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(lethalen)
MDRV_MACHINE_RESET(lethalen)
@@ -672,7 +669,11 @@ static MACHINE_DRIVER_START( lethalen )
MDRV_GFXDECODE(lethal)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(216, 504-1, 16, 240-1)
@@ -694,6 +695,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( lethalej )
MDRV_IMPORT_FROM(lethalen)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(224, 512-1, 16, 240-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/lethalj.c b/src/mame/drivers/lethalj.c
index ba3fb1a3f62..720a6d50709 100644
--- a/src/mame/drivers/lethalj.c
+++ b/src/mame/drivers/lethalj.c
@@ -525,10 +525,9 @@ static MACHINE_DRIVER_START( gameroom )
MDRV_CPU_PROGRAM_MAP(lethalj_map,0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(32768)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_RAW_PARAMS(VIDEO_CLOCK, 701, 0, 512, 263, 0, 236)
diff --git a/src/mame/drivers/lgp.c b/src/mame/drivers/lgp.c
index 36ae185cf96..0e0f5a5e768 100644
--- a/src/mame/drivers/lgp.c
+++ b/src/mame/drivers/lgp.c
@@ -355,7 +355,8 @@ static MACHINE_DRIVER_START( lgp )
MDRV_MACHINE_START(lgp)
/* video */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/liberate.c b/src/mame/drivers/liberate.c
index c35702ae409..b3c87b646b3 100644
--- a/src/mame/drivers/liberate.c
+++ b/src/mame/drivers/liberate.c
@@ -526,15 +526,16 @@ static MACHINE_DRIVER_START( liberate )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,16)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 529ms Vblank duration?? */)
MDRV_INTERLEAVE(200)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 529ms Vblank duration?? */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(liberate)
MDRV_PALETTE_LENGTH(33)
MDRV_PALETTE_INIT(liberate)
@@ -596,15 +597,16 @@ static MACHINE_DRIVER_START( prosport )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,16)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 529ms Vblank duration?? */)
MDRV_INTERLEAVE(200)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 529ms Vblank duration?? */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(prosport)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/liberatr.c b/src/mame/drivers/liberatr.c
index 653f3a7b5e4..45fc6991f1f 100644
--- a/src/mame/drivers/liberatr.c
+++ b/src/mame/drivers/liberatr.c
@@ -385,13 +385,12 @@ static MACHINE_DRIVER_START( liberatr )
MDRV_CPU_PROGRAM_MAP(liberatr_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(atari_vg)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(256,256)
MDRV_SCREEN_VISIBLE_AREA(8, 247, 13, 244)
diff --git a/src/mame/drivers/limenko.c b/src/mame/drivers/limenko.c
index 5f0b6bcb80a..6a30e0bf728 100644
--- a/src/mame/drivers/limenko.c
+++ b/src/mame/drivers/limenko.c
@@ -481,13 +481,12 @@ static MACHINE_DRIVER_START( limenko )
MDRV_CPU_IO_MAP(limenko_io_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 383, 0, 239)
@@ -512,13 +511,12 @@ static MACHINE_DRIVER_START( spotty )
MDRV_CPU_DATA_MAP(0, 0)
MDRV_CPU_IO_MAP(spotty_sound_io_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 383, 0, 239)
diff --git a/src/mame/drivers/littlerb.c b/src/mame/drivers/littlerb.c
index ad5460d8c8c..fb5f1d68818 100644
--- a/src/mame/drivers/littlerb.c
+++ b/src/mame/drivers/littlerb.c
@@ -364,10 +364,10 @@ static MACHINE_DRIVER_START( littlerb )
MDRV_CPU_PROGRAM_MAP(littlerb_main, 0)
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 320-1, 0*8, 256-1)
diff --git a/src/mame/drivers/lkage.c b/src/mame/drivers/lkage.c
index 9efbc320ac1..fa5001663ab 100644
--- a/src/mame/drivers/lkage.c
+++ b/src/mame/drivers/lkage.c
@@ -336,14 +336,14 @@ static MACHINE_DRIVER_START( lkage )
MDRV_CPU_ADD(M68705,4000000) /* ??? */
MDRV_CPU_PROGRAM_MAP(m68705_readmem,m68705_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(2*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(lkage)
MDRV_PALETTE_LENGTH(1024)
@@ -378,14 +378,15 @@ static MACHINE_DRIVER_START( lkageb )
MDRV_CPU_ADD(Z80, 6000000)
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
/* IRQs are triggered by the YM2203 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(2*8, 31*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(lkage)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/lockon.c b/src/mame/drivers/lockon.c
index 0d52aad0114..f0a7ca568a2 100644
--- a/src/mame/drivers/lockon.c
+++ b/src/mame/drivers/lockon.c
@@ -489,7 +489,9 @@ static MACHINE_DRIVER_START( lockon )
MDRV_WATCHDOG_TIME_INIT(attotime_mul(PERIOD_OF_555_ASTABLE(10000, 4700, 10000e-12), 4096))
MDRV_INTERLEAVE(10)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
diff --git a/src/mame/drivers/looping.c b/src/mame/drivers/looping.c
index cee58184346..11b74a7b8cd 100644
--- a/src/mame/drivers/looping.c
+++ b/src/mame/drivers/looping.c
@@ -594,9 +594,10 @@ static MACHINE_DRIVER_START( looping )
MDRV_MACHINE_START(looping)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
+
MDRV_GFXDECODE(looping)
MDRV_PALETTE_LENGTH(32)
diff --git a/src/mame/drivers/lordgun.c b/src/mame/drivers/lordgun.c
index 4fa33cb2942..40b5ff543e2 100644
--- a/src/mame/drivers/lordgun.c
+++ b/src/mame/drivers/lordgun.c
@@ -444,19 +444,20 @@ static MACHINE_DRIVER_START( lordgun )
MDRV_CPU_PROGRAM_MAP(lordgun_soundmem_map,0)
MDRV_CPU_IO_MAP(lordgun_soundio_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(lordgun)
MDRV_NVRAM_HANDLER(93C46)
MDRV_GFXDECODE(lordgun)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x200, 0x100)
MDRV_SCREEN_VISIBLE_AREA(0,0x1c0-1, 0,0xe0-1)
+
MDRV_PALETTE_LENGTH(0x800)
MDRV_VIDEO_START(lordgun)
diff --git a/src/mame/drivers/lsasquad.c b/src/mame/drivers/lsasquad.c
index 114450f9ac6..39995024e37 100644
--- a/src/mame/drivers/lsasquad.c
+++ b/src/mame/drivers/lsasquad.c
@@ -600,17 +600,18 @@ static MACHINE_DRIVER_START( lsasquad )
MDRV_CPU_ADD(M68705,4000000) /* ? */
MDRV_CPU_PROGRAM_MAP(m68705_readmem,m68705_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(500) /* 500 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
/* main<->sound synchronization depends on this */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(lsasquad)
MDRV_PALETTE_LENGTH(512)
@@ -643,8 +644,6 @@ static MACHINE_DRIVER_START( daikaiju )
MDRV_CPU_PROGRAM_MAP(sound_mem_daikaiju, 0)
/* IRQs are triggered by the YM2203 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(500) /* 500 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
/* main<->sound synchronization depends on this */
@@ -652,10 +651,13 @@ static MACHINE_DRIVER_START( daikaiju )
MDRV_MACHINE_RESET(daikaiju)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(lsasquad)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/ltcasino.c b/src/mame/drivers/ltcasino.c
index a51193213ca..8f718e652a7 100644
--- a/src/mame/drivers/ltcasino.c
+++ b/src/mame/drivers/ltcasino.c
@@ -651,14 +651,14 @@ static MACHINE_DRIVER_START( ltcasino )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(6*8, 58*8-1, 0, 32*8-1)
+
MDRV_GFXDECODE(ltcasino)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/lucky8.c b/src/mame/drivers/lucky8.c
index da01c09b4c0..1700158de6d 100644
--- a/src/mame/drivers/lucky8.c
+++ b/src/mame/drivers/lucky8.c
@@ -358,11 +358,11 @@ static MACHINE_DRIVER_START( lucky8 )
MDRV_CPU_PROGRAM_MAP(lucky8_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/lvcards.c b/src/mame/drivers/lvcards.c
index c84ceaa96f8..6fbf0ad9489 100644
--- a/src/mame/drivers/lvcards.c
+++ b/src/mame/drivers/lvcards.c
@@ -471,14 +471,15 @@ static MACHINE_DRIVER_START( lvcards )
MDRV_CPU_IO_MAP(lvcards_io_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*0, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(lvcards)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/lwings.c b/src/mame/drivers/lwings.c
index cc7428ca80b..556b2ef8a42 100644
--- a/src/mame/drivers/lwings.c
+++ b/src/mame/drivers/lwings.c
@@ -862,14 +862,16 @@ static MACHINE_DRIVER_START( lwings )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(lwings)
MDRV_PALETTE_LENGTH(1024)
@@ -912,14 +914,16 @@ static MACHINE_DRIVER_START( trojan )
MDRV_CPU_IO_MAP(adpcm_readport,adpcm_writeport)
MDRV_CPU_PERIODIC_INT(irq0_line_hold, 4000)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(trojan)
MDRV_PALETTE_LENGTH(1024)
@@ -966,14 +970,16 @@ static MACHINE_DRIVER_START( avengers )
MDRV_CPU_IO_MAP(avengers_adpcm_readport,adpcm_writeport)
MDRV_CPU_PERIODIC_INT(irq0_line_hold, 4000)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(trojan)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/m10.c b/src/mame/drivers/m10.c
index 317821ef621..97d58e18102 100644
--- a/src/mame/drivers/m10.c
+++ b/src/mame/drivers/m10.c
@@ -764,11 +764,11 @@ static MACHINE_DRIVER_START( m10 )
MDRV_CPU_VBLANK_INT(m10_interrupt,1)
- MDRV_SCREEN_RAW_PARAMS(IREMM10_PIXEL_CLOCK, IREMM10_HTOTAL, IREMM10_HBEND, IREMM10_HBSTART, IREMM10_VTOTAL, IREMM10_VBEND, IREMM10_VBSTART)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
+ MDRV_SCREEN_RAW_PARAMS(IREMM10_PIXEL_CLOCK, IREMM10_HTOTAL, IREMM10_HBEND, IREMM10_HBSTART, IREMM10_VTOTAL, IREMM10_VBEND, IREMM10_VBSTART)
+
MDRV_GFXDECODE(m10)
MDRV_PALETTE_LENGTH(2*8)
@@ -811,11 +811,11 @@ static MACHINE_DRIVER_START( m15 )
MDRV_CPU_VBLANK_INT(m15_interrupt,1)
- MDRV_SCREEN_RAW_PARAMS(IREMM15_PIXEL_CLOCK, IREMM15_HTOTAL, IREMM15_HBEND, IREMM15_HBSTART, IREMM15_VTOTAL, IREMM15_VBEND, IREMM15_VBSTART)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
+ MDRV_SCREEN_RAW_PARAMS(IREMM15_PIXEL_CLOCK, IREMM15_HTOTAL, IREMM15_HBEND, IREMM15_HBSTART, IREMM15_VTOTAL, IREMM15_VBEND, IREMM15_VBSTART)
+
MDRV_PALETTE_LENGTH(2*8)
MDRV_PALETTE_INIT(m10)
diff --git a/src/mame/drivers/m107.c b/src/mame/drivers/m107.c
index 87a7c917f59..59a8b963293 100644
--- a/src/mame/drivers/m107.c
+++ b/src/mame/drivers/m107.c
@@ -491,14 +491,15 @@ static MACHINE_DRIVER_START( firebarr )
MDRV_MACHINE_START(m107)
MDRV_MACHINE_RESET(m107)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(80, 511-112, 8, 247) /* 320 x 240 */
+
MDRV_GFXDECODE(firebarr)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/m52.c b/src/mame/drivers/m52.c
index c56bba9012c..3ac8c9fa427 100644
--- a/src/mame/drivers/m52.c
+++ b/src/mame/drivers/m52.c
@@ -393,11 +393,10 @@ static MACHINE_DRIVER_START( m52 )
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(m52)
MDRV_PALETTE_LENGTH(128*4+16*4+3*4)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 136, 376, 282, 22, 274)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
diff --git a/src/mame/drivers/m57.c b/src/mame/drivers/m57.c
index 4fb844bbf1e..3803dd1ad8e 100644
--- a/src/mame/drivers/m57.c
+++ b/src/mame/drivers/m57.c
@@ -226,16 +226,16 @@ static MACHINE_DRIVER_START( m57 )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1790) /* accurate frequency, measured on a Moon Patrol board, is 56.75Hz. */)
/* the Lode Runner manual (similar but different hardware) */
/* talks about 55Hz and 1790ms vblank duration. */
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(m57)
MDRV_PALETTE_LENGTH(32*8+32*8)
diff --git a/src/mame/drivers/m58.c b/src/mame/drivers/m58.c
index b875f64e4df..9bcfe96a198 100644
--- a/src/mame/drivers/m58.c
+++ b/src/mame/drivers/m58.c
@@ -195,11 +195,10 @@ static MACHINE_DRIVER_START( yard )
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(yard)
MDRV_PALETTE_LENGTH(256+256+256)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 0, 256, 282, 42, 266)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
diff --git a/src/mame/drivers/m62.c b/src/mame/drivers/m62.c
index 494589a7310..a272c1a6d28 100644
--- a/src/mame/drivers/m62.c
+++ b/src/mame/drivers/m62.c
@@ -1310,14 +1310,14 @@ static MACHINE_DRIVER_START( ldrun )
MDRV_CPU_IO_MAP(kungfum_readport,kungfum_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(55)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1790) /* frames per second and vblank duration from the Lode Runner manual */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA((64*8-384)/2, 64*8-(64*8-384)/2-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(ldrun)
MDRV_PALETTE_LENGTH(512)
@@ -1339,6 +1339,7 @@ static MACHINE_DRIVER_START( kungfum )
MDRV_CPU_IO_MAP(kungfum_readport,kungfum_writeport)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA((64*8-256)/2, 64*8-(64*8-256)/2-1, 0*8, 32*8-1)
MDRV_VIDEO_START(kungfum)
@@ -1355,6 +1356,7 @@ static MACHINE_DRIVER_START( battroad )
MDRV_CPU_IO_MAP(kungfum_readport,battroad_writeport)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA((64*8-256)/2, 64*8-(64*8-256)/2-1, 0*8, 32*8-1)
MDRV_GFXDECODE(battroad)
MDRV_PALETTE_LENGTH(544)
@@ -1376,6 +1378,7 @@ static MACHINE_DRIVER_START( ldrun2 )
MDRV_VIDEO_START(ldrun2)
MDRV_VIDEO_UPDATE(ldrun)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA((64*8-384)/2, 64*8-(64*8-384)/2-1, 0*8, 31*8-1)
MACHINE_DRIVER_END
@@ -1391,6 +1394,7 @@ static MACHINE_DRIVER_START( ldrun3 )
/* video hardware */
MDRV_GFXDECODE(ldrun3)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA((64*8-384)/2, 64*8-(64*8-384)/2-1, 0*8, 31*8-1)
MACHINE_DRIVER_END
@@ -1484,6 +1488,7 @@ static MACHINE_DRIVER_START( youjyudn )
MDRV_CPU_IO_MAP(kungfum_readport,youjyudn_writeport)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA((64*8-256)/2, 64*8-(64*8-256)/2-1, 0*8, 32*8-1)
MDRV_GFXDECODE(youjyudn)
@@ -1500,6 +1505,7 @@ static MACHINE_DRIVER_START( horizon )
MDRV_CPU_PROGRAM_MAP(horizon_readmem,horizon_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA((64*8-256)/2, 64*8-(64*8-256)/2-1, 0*8, 32*8-1)
MDRV_VIDEO_START(horizon)
diff --git a/src/mame/drivers/m72.c b/src/mame/drivers/m72.c
index 93d7abdf26f..d507672faa9 100644
--- a/src/mame/drivers/m72.c
+++ b/src/mame/drivers/m72.c
@@ -1934,11 +1934,10 @@ static MACHINE_DRIVER_START( rtype )
MDRV_MACHINE_RESET(m72)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(m72)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -2001,11 +2000,10 @@ static MACHINE_DRIVER_START( m72 )
MDRV_MACHINE_RESET(m72)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(m72)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -2052,11 +2050,10 @@ static MACHINE_DRIVER_START( dkgenm72 )
MDRV_MACHINE_RESET(xmultipl)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(m72)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -2094,11 +2091,10 @@ static MACHINE_DRIVER_START( xmultipl )
MDRV_MACHINE_RESET(xmultipl)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(m72)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -2136,11 +2132,10 @@ static MACHINE_DRIVER_START( dbreed )
MDRV_MACHINE_RESET(xmultipl)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(rtype2)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -2177,11 +2172,10 @@ static MACHINE_DRIVER_START( dbreed72 )
MDRV_MACHINE_RESET(xmultipl)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(m72)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -2219,11 +2213,10 @@ static MACHINE_DRIVER_START( rtype2 )
MDRV_MACHINE_RESET(m72)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(rtype2)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -2260,11 +2253,10 @@ static MACHINE_DRIVER_START( majtitle )
MDRV_MACHINE_RESET(m72)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(majtitle)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -2301,11 +2293,10 @@ static MACHINE_DRIVER_START( hharry )
MDRV_MACHINE_RESET(xmultipl)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(rtype2)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -2343,11 +2334,10 @@ static MACHINE_DRIVER_START( hharryu )
MDRV_MACHINE_RESET(xmultipl)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(rtype2)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -2385,11 +2375,10 @@ static MACHINE_DRIVER_START( poundfor )
MDRV_MACHINE_RESET(m72)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(rtype2)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -2426,11 +2415,10 @@ static MACHINE_DRIVER_START( cosmccop )
MDRV_MACHINE_RESET(kengo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(rtype2)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/4, 512, 64, 448, 284, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
diff --git a/src/mame/drivers/m79amb.c b/src/mame/drivers/m79amb.c
index cbdcbebc4e4..ad67529b213 100644
--- a/src/mame/drivers/m79amb.c
+++ b/src/mame/drivers/m79amb.c
@@ -164,14 +164,14 @@ static MACHINE_DRIVER_START( m79amb )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(M79_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
+
MDRV_VIDEO_START(generic_bitmapped)
MDRV_VIDEO_UPDATE(generic_bitmapped)
diff --git a/src/mame/drivers/m90.c b/src/mame/drivers/m90.c
index 3869bfc1949..95711c25dd2 100644
--- a/src/mame/drivers/m90.c
+++ b/src/mame/drivers/m90.c
@@ -663,16 +663,17 @@ static MACHINE_DRIVER_START( m90 )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,128) /* clocked by V1? (Vigilante) */
/* IRQs are generated by main Z80 and YM2151 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(m72_sound)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(6*8, 54*8-1, 17*8, 47*8-1)
+
MDRV_GFXDECODE(m90)
MDRV_PALETTE_LENGTH(512)
@@ -704,6 +705,7 @@ static MACHINE_DRIVER_START( quizf1 )
MDRV_IMPORT_FROM( m90 )
MDRV_CPU_MODIFY("main")
MDRV_CPU_CONFIG(quizf1_config)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(6*8, 54*8-1, 17*8-8, 47*8-1+8)
MACHINE_DRIVER_END
@@ -712,6 +714,7 @@ static MACHINE_DRIVER_START( matchit2 )
MDRV_IMPORT_FROM( m90 )
MDRV_CPU_MODIFY("main")
MDRV_CPU_CONFIG(matchit2_config)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(6*8, 54*8-1, 17*8-8, 47*8-1+8)
MACHINE_DRIVER_END
@@ -721,6 +724,7 @@ static MACHINE_DRIVER_START( riskchal )
MDRV_IMPORT_FROM( m90 )
MDRV_CPU_MODIFY("main")
MDRV_CPU_CONFIG(riskchal_config)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(10*8, 50*8-1, 17*8, 47*8-1)
MACHINE_DRIVER_END
@@ -742,15 +746,16 @@ static MACHINE_DRIVER_START( bombrman )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,128) /* clocked by V1? (Vigilante) */
/* IRQs are generated by main Z80 and YM2151 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(m72_sound)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(10*8, 50*8-1, 17*8, 47*8-1)
+
MDRV_GFXDECODE(m90)
MDRV_PALETTE_LENGTH(512)
@@ -787,15 +792,16 @@ static MACHINE_DRIVER_START( bbmanw )
MDRV_CPU_IO_MAP(bbmanw_sound_readport,bbmanw_sound_writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,128) /* clocked by V1? (Vigilante) */
/* IRQs are generated by main Z80 and YM2151 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(m72_sound)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(10*8, 50*8-1, 17*8, 47*8-1)
+
MDRV_GFXDECODE(m90)
MDRV_PALETTE_LENGTH(512)
@@ -843,15 +849,16 @@ static MACHINE_DRIVER_START( bootleg )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,128) /* clocked by V1? (Vigilante) */
/* IRQs are generated by main Z80 and YM2151 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(m72_sound)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(m90)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/m92.c b/src/mame/drivers/m92.c
index 124ab262db7..0a45db9ef9e 100644
--- a/src/mame/drivers/m92.c
+++ b/src/mame/drivers/m92.c
@@ -964,14 +964,17 @@ static MACHINE_DRIVER_START( m92 )
MDRV_MACHINE_START(m92)
MDRV_MACHINE_RESET(m92)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(80, 511-112, 8, 247) /* 320 x 240 */
+
MDRV_GFXDECODE(m92)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/macrossp.c b/src/mame/drivers/macrossp.c
index 79746ef3bb5..476c5c7225f 100644
--- a/src/mame/drivers/macrossp.c
+++ b/src/mame/drivers/macrossp.c
@@ -540,14 +540,14 @@ static MACHINE_DRIVER_START( macrossp )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER) /* only needs 6 bits because of alpha blending */
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 16*16)
MDRV_SCREEN_VISIBLE_AREA(0*16, 24*16-1, 0*16, 15*16-1)
+
MDRV_GFXDECODE(macrossp)
MDRV_PALETTE_LENGTH(0x1000)
@@ -567,6 +567,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( quizmoon )
MDRV_IMPORT_FROM(macrossp)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 24*16-1, 0*8, 14*16-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/macs.c b/src/mame/drivers/macs.c
index 1e1167806a8..65c71b65695 100644
--- a/src/mame/drivers/macs.c
+++ b/src/mame/drivers/macs.c
@@ -355,15 +355,14 @@ static MACHINE_DRIVER_START( macs )
MDRV_MACHINE_RESET(macs)
-
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(128*8, 128*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 128*8-1, 0*8, 128*8-1)
+
MDRV_GFXDECODE(macs)
MDRV_PALETTE_LENGTH(16*16*4+1)
diff --git a/src/mame/drivers/madmotor.c b/src/mame/drivers/madmotor.c
index d4625ca2f9f..96a87cc7ec4 100644
--- a/src/mame/drivers/madmotor.c
+++ b/src/mame/drivers/madmotor.c
@@ -293,14 +293,16 @@ static MACHINE_DRIVER_START( madmotor )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */ /* frames per second, vblank duration taken from Burger Time */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(madmotor)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/magic10.c b/src/mame/drivers/magic10.c
index 83779cbe8e8..516f1f53c32 100644
--- a/src/mame/drivers/magic10.c
+++ b/src/mame/drivers/magic10.c
@@ -348,15 +348,16 @@ static MACHINE_DRIVER_START( magic10 )
MDRV_CPU_PROGRAM_MAP(magic10_map,0)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 44*8-1, 2*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_GFXDECODE(magic10)
@@ -385,6 +386,7 @@ static MACHINE_DRIVER_START( magic102 )
MDRV_CPU_MODIFY("cpu")
MDRV_CPU_PROGRAM_MAP(magic102_map,0)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 0*8, 30*8-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/magicfly.c b/src/mame/drivers/magicfly.c
index 3ad1c6d7564..179b8bad986 100644
--- a/src/mame/drivers/magicfly.c
+++ b/src/mame/drivers/magicfly.c
@@ -662,13 +662,12 @@ static MACHINE_DRIVER_START( magicfly )
MDRV_CPU_PROGRAM_MAP(magicfly_map, 0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE((39+1)*8, (31+1)*8) /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1). */
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 29*8-1) /* Taken from MC6845 init, registers 01 & 06. */
@@ -680,7 +679,7 @@ static MACHINE_DRIVER_START( magicfly )
MDRV_VIDEO_START(magicfly)
MDRV_VIDEO_UPDATE(magicfly)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
MACHINE_DRIVER_END
static MACHINE_DRIVER_START( 7mezzo )
diff --git a/src/mame/drivers/magmax.c b/src/mame/drivers/magmax.c
index 3915ae3b898..998ffb366b7 100644
--- a/src/mame/drivers/magmax.c
+++ b/src/mame/drivers/magmax.c
@@ -372,17 +372,18 @@ static MACHINE_DRIVER_START( magmax )
MDRV_CPU_PROGRAM_MAP(magmax_soundreadmem,magmax_soundwritemem)
MDRV_CPU_IO_MAP(magmax_soundreadport,magmax_soundwriteport)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_START(magmax)
MDRV_MACHINE_RESET(magmax)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(magmax)
MDRV_PALETTE_LENGTH(1*16 + 16*16 + 256)
diff --git a/src/mame/drivers/mainevt.c b/src/mame/drivers/mainevt.c
index 00d4ccb7d7e..817055593a6 100644
--- a/src/mame/drivers/mainevt.c
+++ b/src/mame/drivers/mainevt.c
@@ -716,14 +716,16 @@ static MACHINE_DRIVER_START( mainevt )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,8) /* ??? */
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(mainevt)
@@ -755,14 +757,16 @@ static MACHINE_DRIVER_START( devstors )
MDRV_CPU_PROGRAM_MAP(dv_sound_readmem,dv_sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(dv)
diff --git a/src/mame/drivers/mainsnk.c b/src/mame/drivers/mainsnk.c
index 6751319c576..17719161600 100644
--- a/src/mame/drivers/mainsnk.c
+++ b/src/mame/drivers/mainsnk.c
@@ -382,13 +382,15 @@ static MACHINE_DRIVER_START( mainsnk )
MDRV_CPU_IO_MAP(sound_portmap,0)
MDRV_CPU_PERIODIC_INT(irq0_line_hold, 244)
+ MDRV_GFXDECODE(mainsnk)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60.606060)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
- MDRV_GFXDECODE(mainsnk)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(34*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 34*8-1, 0*8, 27*8-1)
+
MDRV_PALETTE_LENGTH((16+2)*16)
MDRV_VIDEO_START(mainsnk)
@@ -412,6 +414,7 @@ static MACHINE_DRIVER_START( canvas )
/* basic machine hardware */
MDRV_IMPORT_FROM(mainsnk)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(2*8, 32*8-1, 0*8, 27*8-1)
MDRV_VIDEO_UPDATE(canvas)
diff --git a/src/mame/drivers/malzak.c b/src/mame/drivers/malzak.c
index 270bf78c409..0c27bfd1a71 100644
--- a/src/mame/drivers/malzak.c
+++ b/src/mame/drivers/malzak.c
@@ -418,14 +418,14 @@ static MACHINE_DRIVER_START( malzak )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(50)
//MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(SAA5050_VBLANK))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(240, 256) /* vert size is a guess */
MDRV_SCREEN_VISIBLE_AREA(0, 239, 0, 239)
+
MDRV_GFXDECODE(malzak)
MDRV_PALETTE_LENGTH(128)
MDRV_PALETTE_INIT(malzak)
diff --git a/src/mame/drivers/mappy.c b/src/mame/drivers/mappy.c
index 2390d253b81..cc71950b9c7 100644
--- a/src/mame/drivers/mappy.c
+++ b/src/mame/drivers/mappy.c
@@ -1585,11 +1585,10 @@ static MACHINE_DRIVER_START( superpac )
MDRV_MACHINE_RESET(superpac)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(superpac)
MDRV_PALETTE_LENGTH(64*4+64*4)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
@@ -1637,11 +1636,10 @@ static MACHINE_DRIVER_START( phozon )
MDRV_MACHINE_RESET(phozon)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(phozon)
MDRV_PALETTE_LENGTH(64*4+64*4)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
@@ -1675,11 +1673,10 @@ static MACHINE_DRIVER_START( mappy )
MDRV_MACHINE_RESET(mappy)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(mappy)
MDRV_PALETTE_LENGTH(64*4+16*16)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
diff --git a/src/mame/drivers/marineb.c b/src/mame/drivers/marineb.c
index 9bf34b3abbe..c4dc3a397f2 100644
--- a/src/mame/drivers/marineb.c
+++ b/src/mame/drivers/marineb.c
@@ -513,16 +513,16 @@ static MACHINE_DRIVER_START( marineb )
MDRV_CPU_IO_MAP(marineb_io_map,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(5000) /* frames per second, vblank duration */)
-
MDRV_MACHINE_RESET(marineb)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(5000) /* frames per second, vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(marineb)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/marinedt.c b/src/mame/drivers/marinedt.c
index 796913cf075..bedd21fe32e 100644
--- a/src/mame/drivers/marinedt.c
+++ b/src/mame/drivers/marinedt.c
@@ -589,14 +589,14 @@ static MACHINE_DRIVER_START( marinedt )
MDRV_CPU_IO_MAP(marinedt_readport,marinedt_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(4*8+32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 32*8-1)
+
MDRV_GFXDECODE(marinedt)
MDRV_PALETTE_LENGTH(64)
diff --git a/src/mame/drivers/mario.c b/src/mame/drivers/mario.c
index bd530b880d9..6854dbfeba1 100644
--- a/src/mame/drivers/mario.c
+++ b/src/mame/drivers/mario.c
@@ -367,7 +367,7 @@ static MACHINE_DRIVER_START( mario_base )
MDRV_MACHINE_RESET(mario)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MDRV_GFXDECODE(mario)
diff --git a/src/mame/drivers/markham.c b/src/mame/drivers/markham.c
index 6bf2e2b274c..1f4eaaaeee1 100644
--- a/src/mame/drivers/markham.c
+++ b/src/mame/drivers/markham.c
@@ -206,15 +206,16 @@ static MACHINE_DRIVER_START( markham )
MDRV_CPU_PROGRAM_MAP(readmem2,writemem2)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(markham)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/marvins.c b/src/mame/drivers/marvins.c
index 9555df8bb42..2614a6d5af6 100644
--- a/src/mame/drivers/marvins.c
+++ b/src/mame/drivers/marvins.c
@@ -525,15 +525,18 @@ static MACHINE_DRIVER_START( marvins )
MDRV_CPU_IO_MAP(sound_portmap,0)
MDRV_CPU_PERIODIC_INT(nmi_line_assert, 244) // schematics show a separate 244Hz timer
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256+32, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 255+32,0, 223)
+
MDRV_GFXDECODE(marvins)
MDRV_PALETTE_LENGTH((16+2)*16)
@@ -572,15 +575,18 @@ static MACHINE_DRIVER_START( vangrd2 )
MDRV_CPU_IO_MAP(sound_portmap,0)
MDRV_CPU_PERIODIC_INT(nmi_line_assert, 244)
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256+32, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 255+32,0, 223)
+
MDRV_GFXDECODE(marvins)
MDRV_PALETTE_LENGTH((16+2)*16)
@@ -616,6 +622,7 @@ static MACHINE_DRIVER_START( madcrash )
MDRV_INTERLEAVE(300)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(16, 16+256-1, 0, 0+216-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/mastboy.c b/src/mame/drivers/mastboy.c
index 105ae0b4fc3..7f65b9aeb85 100644
--- a/src/mame/drivers/mastboy.c
+++ b/src/mame/drivers/mastboy.c
@@ -866,16 +866,16 @@ static MACHINE_DRIVER_START( mastboy )
MDRV_NVRAM_HANDLER(generic_1fill)
- MDRV_SCREEN_REFRESH_RATE(6000000.0f / 384.0f / 282.0f)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET( mastboy )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(6000000.0f / 384.0f / 282.0f)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
+
MDRV_GFXDECODE(mastboy)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/matmania.c b/src/mame/drivers/matmania.c
index 39f860975df..4a289556e65 100644
--- a/src/mame/drivers/matmania.c
+++ b/src/mame/drivers/matmania.c
@@ -345,15 +345,16 @@ static MACHINE_DRIVER_START( matmania )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,15) /* ???? */
/* IRQs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(matmania)
MDRV_PALETTE_LENGTH(64+16)
@@ -402,15 +403,16 @@ static MACHINE_DRIVER_START( maniach )
MDRV_CPU_ADD(M68705, 1500000*2) /* (don't know really how fast, but it doesn't need to even be this fast) */
MDRV_CPU_PROGRAM_MAP(mcu_readmem,mcu_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100) /* 100 CPU slice per frame - high interleaving to sync main and mcu */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(maniach)
MDRV_PALETTE_LENGTH(64+16)
diff --git a/src/mame/drivers/maxaflex.c b/src/mame/drivers/maxaflex.c
index 83b67388c95..9a41469d15c 100644
--- a/src/mame/drivers/maxaflex.c
+++ b/src/mame/drivers/maxaflex.c
@@ -434,20 +434,21 @@ static MACHINE_DRIVER_START( a600xl )
MDRV_CPU_ADD_TAG("main", M6502, FREQ_17_EXACT)
MDRV_CPU_PROGRAM_MAP(a600xl_mem, 0)
MDRV_CPU_VBLANK_INT(a800xl_interrupt, TOTAL_LINES_60HZ)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_CPU_ADD(M68705, 3579545)
MDRV_CPU_PROGRAM_MAP(mcu_mem,0)
MDRV_CPU_PERIODIC_INT( supervisor_board_check_coin_input, 10 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES( VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_VISIBLE_AREA(MIN_X, MAX_X, MIN_Y, MAX_Y)
- MDRV_PALETTE_LENGTH(sizeof(atari_palette) / sizeof(atari_palette[0]))
- MDRV_PALETTE_INIT(atari)
MDRV_SCREEN_REFRESH_RATE(FRAME_RATE_60HZ)
MDRV_SCREEN_SIZE(HWIDTH*8, TOTAL_LINES_60HZ)
+
+ MDRV_PALETTE_LENGTH(sizeof(atari_palette) / sizeof(atari_palette[0]))
+ MDRV_PALETTE_INIT(atari)
MDRV_DEFAULT_LAYOUT(layout_maxaflex)
MDRV_VIDEO_START(atari)
diff --git a/src/mame/drivers/mayumi.c b/src/mame/drivers/mayumi.c
index b48107d3e7a..6f10b526746 100644
--- a/src/mame/drivers/mayumi.c
+++ b/src/mame/drivers/mayumi.c
@@ -275,15 +275,16 @@ static MACHINE_DRIVER_START( mayumi )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(mayumi_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET( mayumi )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(2*8, 62*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(mayumi)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/mazerbla.c b/src/mame/drivers/mazerbla.c
index 6192c935f1a..20657a277f8 100644
--- a/src/mame/drivers/mazerbla.c
+++ b/src/mame/drivers/mazerbla.c
@@ -1504,18 +1504,18 @@ but handled differently for now
*/
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
/* synchronization forced on the fly */
MDRV_MACHINE_RESET(mazerbla)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_PALETTE_INIT(mazerbla)
@@ -1546,16 +1546,16 @@ but handled differently for now
*/
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(greatgun)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_PALETTE_INIT(mazerbla)
diff --git a/src/mame/drivers/mcatadv.c b/src/mame/drivers/mcatadv.c
index fd80029c43c..06ff642235d 100644
--- a/src/mame/drivers/mcatadv.c
+++ b/src/mame/drivers/mcatadv.c
@@ -501,14 +501,14 @@ static MACHINE_DRIVER_START( mcatadv )
MDRV_CPU_PROGRAM_MAP(mcatadv_sound_readmem,mcatadv_sound_writemem)
MDRV_CPU_IO_MAP(mcatadv_sound_readport,mcatadv_sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
+
MDRV_GFXDECODE(mcatadv)
MDRV_PALETTE_LENGTH(0x2000/2)
diff --git a/src/mame/drivers/mcr.c b/src/mame/drivers/mcr.c
index a40d3387abd..0375577590b 100644
--- a/src/mame/drivers/mcr.c
+++ b/src/mame/drivers/mcr.c
@@ -1509,18 +1509,21 @@ static MACHINE_DRIVER_START( mcr_90009 )
MDRV_CPU_IO_MAP(cpu_90009_portmap,0)
MDRV_CPU_VBLANK_INT(mcr_interrupt,2)
- MDRV_SCREEN_REFRESH_RATE(30)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_WATCHDOG_VBLANK_INIT(16)
MDRV_MACHINE_START(mcr)
MDRV_MACHINE_RESET(mcr)
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(30)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 30*16)
MDRV_SCREEN_VISIBLE_AREA(0*16, 32*16-1, 0*16, 30*16-1)
+
MDRV_GFXDECODE(mcr)
MDRV_PALETTE_LENGTH(32)
diff --git a/src/mame/drivers/mcr3.c b/src/mame/drivers/mcr3.c
index 46e58971321..3e0ddb68055 100644
--- a/src/mame/drivers/mcr3.c
+++ b/src/mame/drivers/mcr3.c
@@ -1057,18 +1057,21 @@ static MACHINE_DRIVER_START( mcr3_base )
MDRV_CPU_CONFIG(mcr_daisy_chain)
MDRV_CPU_VBLANK_INT(mcr_interrupt,2)
- MDRV_SCREEN_REFRESH_RATE(30)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_WATCHDOG_VBLANK_INIT(16)
MDRV_MACHINE_START(mcr)
MDRV_MACHINE_RESET(mcr)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(30)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 30*16)
MDRV_SCREEN_VISIBLE_AREA(0*16, 32*16-1, 0*16, 30*16-1)
+
MDRV_GFXDECODE(mcr3)
MDRV_PALETTE_LENGTH(64)
@@ -1129,6 +1132,7 @@ static MACHINE_DRIVER_START( mcrscroll )
MDRV_CPU_IO_MAP(spyhunt_portmap,0)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_SIZE(30*16, 30*16)
MDRV_SCREEN_VISIBLE_AREA(0, 30*16-1, 0, 30*16-1)
MDRV_GFXDECODE(spyhunt)
diff --git a/src/mame/drivers/mcr68.c b/src/mame/drivers/mcr68.c
index 180fe7752b0..acae811547d 100644
--- a/src/mame/drivers/mcr68.c
+++ b/src/mame/drivers/mcr68.c
@@ -882,17 +882,18 @@ static MACHINE_DRIVER_START( zwackery )
MDRV_CPU_PROGRAM_MAP(zwackery_map,0)
MDRV_CPU_VBLANK_INT(mcr68_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(30)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
// MDRV_WATCHDOG_VBLANK_INIT(8)
MDRV_MACHINE_START(zwackery)
MDRV_MACHINE_RESET(zwackery)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(30)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 30*16)
MDRV_SCREEN_VISIBLE_AREA(0, 32*16-1, 0, 30*16-1)
+
MDRV_GFXDECODE(zwackery)
MDRV_PALETTE_LENGTH(4096)
@@ -911,17 +912,18 @@ static MACHINE_DRIVER_START( mcr68 )
MDRV_CPU_PROGRAM_MAP(mcr68_map,0)
MDRV_CPU_VBLANK_INT(mcr68_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(30)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_WATCHDOG_VBLANK_INIT(8)
MDRV_MACHINE_START(mcr68)
MDRV_MACHINE_RESET(mcr68)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(30)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 30*16)
MDRV_SCREEN_VISIBLE_AREA(0, 32*16-1, 0, 30*16-1)
+
MDRV_GFXDECODE(mcr68)
MDRV_PALETTE_LENGTH(64)
diff --git a/src/mame/drivers/meadows.c b/src/mame/drivers/meadows.c
index 87efaac8968..c519f7058af 100644
--- a/src/mame/drivers/meadows.c
+++ b/src/mame/drivers/meadows.c
@@ -621,14 +621,15 @@ static MACHINE_DRIVER_START( meadows )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_PERIODIC_INT(sound_interrupt, (double)5000000/131072)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 30*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(meadows)
MDRV_PALETTE_LENGTH(2)
@@ -656,13 +657,13 @@ static MACHINE_DRIVER_START( minferno )
MDRV_CPU_IO_MAP(minferno_readport,0)
MDRV_CPU_VBLANK_INT(minferno_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 24*8-1)
+
MDRV_GFXDECODE(minferno)
MDRV_PALETTE_LENGTH(2)
diff --git a/src/mame/drivers/mediagx.c b/src/mame/drivers/mediagx.c
index 6562fb3dc79..e272192a074 100644
--- a/src/mame/drivers/mediagx.c
+++ b/src/mame/drivers/mediagx.c
@@ -869,17 +869,17 @@ static MACHINE_DRIVER_START(mediagx)
MDRV_CPU_PROGRAM_MAP(mediagx_map, 0)
MDRV_CPU_IO_MAP(mediagx_io, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(mediagx)
MDRV_NVRAM_HANDLER( mc146818 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(640, 480)
MDRV_SCREEN_VISIBLE_AREA(0, 639, 0, 239)
+
MDRV_GFXDECODE(CGA)
MDRV_PALETTE_LENGTH(16)
diff --git a/src/mame/drivers/megadriv.c b/src/mame/drivers/megadriv.c
index 7b1bf41658d..c981935a737 100644
--- a/src/mame/drivers/megadriv.c
+++ b/src/mame/drivers/megadriv.c
@@ -4623,9 +4623,8 @@ MACHINE_DRIVER_START( megadriv )
MDRV_MACHINE_RESET(megadriv)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
- MDRV_SCREEN_ADD("megadriv", 0x000)
+ MDRV_SCREEN_ADD("megadriv", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) // Vblank handled manually.
@@ -4669,6 +4668,7 @@ MACHINE_DRIVER_END
MACHINE_DRIVER_START( megadpal )
MDRV_IMPORT_FROM(megadriv)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_REFRESH_RATE(50)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/megasys1.c b/src/mame/drivers/megasys1.c
index 2c329c6f6a8..9440ac4b9b0 100644
--- a/src/mame/drivers/megasys1.c
+++ b/src/mame/drivers/megasys1.c
@@ -656,18 +656,18 @@ static MACHINE_DRIVER_START( system_A )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem_A,sound_writemem_A)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_INTERLEAVE(2000)
MDRV_MACHINE_RESET(megasys1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(ABC)
MDRV_PALETTE_LENGTH(1024)
@@ -768,16 +768,16 @@ static MACHINE_DRIVER_START( system_D )
MDRV_CPU_PROGRAM_MAP(readmem_D,writemem_D)
MDRV_CPU_VBLANK_INT(interrupt_D,INTERRUPT_NUM_D)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(megasys1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(ABC)
MDRV_PALETTE_LENGTH(1024)
@@ -834,14 +834,14 @@ static MACHINE_DRIVER_START( system_Z )
MDRV_CPU_PROGRAM_MAP(sound_readmem_z80,sound_writemem_z80)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(Z)
MDRV_PALETTE_LENGTH(768)
diff --git a/src/mame/drivers/megatech.c b/src/mame/drivers/megatech.c
index 691c5fc2f1f..71f09f746a8 100644
--- a/src/mame/drivers/megatech.c
+++ b/src/mame/drivers/megatech.c
@@ -653,7 +653,7 @@ static MACHINE_DRIVER_START( megatech )
MDRV_DEFAULT_LAYOUT(layout_dualhovu)
- MDRV_SCREEN_ADD("menu", 0x000)
+ MDRV_SCREEN_ADD("menu", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(342,262)
diff --git a/src/mame/drivers/megazone.c b/src/mame/drivers/megazone.c
index 94c0d57de94..116059e0cdd 100644
--- a/src/mame/drivers/megazone.c
+++ b/src/mame/drivers/megazone.c
@@ -313,15 +313,16 @@ static MACHINE_DRIVER_START( megazone )
MDRV_CPU_PROGRAM_MAP(i8039_readmem,i8039_writemem)
MDRV_CPU_IO_MAP(i8039_readport,i8039_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(15)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(megazone)
MDRV_PALETTE_LENGTH(16*16+16*16)
diff --git a/src/mame/drivers/meijinsn.c b/src/mame/drivers/meijinsn.c
index 9a9f5a34350..91f96e71b4f 100644
--- a/src/mame/drivers/meijinsn.c
+++ b/src/mame/drivers/meijinsn.c
@@ -312,16 +312,16 @@ static MACHINE_DRIVER_START( meijinsn )
MDRV_CPU_IO_MAP(meijinsn_sound_io_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 160)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(meijinsn)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(12, 243, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(32)
MDRV_PALETTE_INIT(meijinsn)
diff --git a/src/mame/drivers/merit.c b/src/mame/drivers/merit.c
index 98ed5940bfe..15a4dd58dc1 100644
--- a/src/mame/drivers/merit.c
+++ b/src/mame/drivers/merit.c
@@ -799,14 +799,13 @@ static MACHINE_DRIVER_START( pitboss )
MDRV_CPU_IO_MAP(trvwhiz_io_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
MDRV_MACHINE_RESET(merit)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 64*8-1, 1*8, 32*8-1)
diff --git a/src/mame/drivers/meritm.c b/src/mame/drivers/meritm.c
index 9e96f05657c..a05fd67d295 100644
--- a/src/mame/drivers/meritm.c
+++ b/src/mame/drivers/meritm.c
@@ -60,14 +60,14 @@ static MACHINE_DRIVER_START( meritm )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
// MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
+
MDRV_PALETTE_LENGTH(0x100)
/* no gfx decode, MSX video chip doesn't use tiles, roms are memory mapped */
diff --git a/src/mame/drivers/mermaid.c b/src/mame/drivers/mermaid.c
index d3d45078665..b46978f48d1 100644
--- a/src/mame/drivers/mermaid.c
+++ b/src/mame/drivers/mermaid.c
@@ -257,14 +257,15 @@ static MACHINE_DRIVER_START( mermaid )
MDRV_CPU_PROGRAM_MAP(mermaid_map, 0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse, 1)
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(mermaid)
MDRV_PALETTE_LENGTH(4*16+2*2)
diff --git a/src/mame/drivers/metlclsh.c b/src/mame/drivers/metlclsh.c
index b462d602795..ebbcf18116e 100644
--- a/src/mame/drivers/metlclsh.c
+++ b/src/mame/drivers/metlclsh.c
@@ -323,16 +323,16 @@ static MACHINE_DRIVER_START( metlclsh )
MDRV_CPU_VBLANK_INT(metlclsh_interrupt2,2)
// IRQ by cpu #1, NMI by coins insertion
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) // we're using IPT_VBLANK
-
MDRV_MACHINE_RESET(metlclsh)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) // we're using IPT_VBLANK
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 30*8-1)
+
MDRV_GFXDECODE(metlclsh)
MDRV_PALETTE_LENGTH(3 * 16)
diff --git a/src/mame/drivers/metro.c b/src/mame/drivers/metro.c
index bda26d6d2a5..7e0c98b5404 100644
--- a/src/mame/drivers/metro.c
+++ b/src/mame/drivers/metro.c
@@ -3805,16 +3805,16 @@ static MACHINE_DRIVER_START( balcube )
MDRV_CPU_PROGRAM_MAP(balcube_readmem,balcube_writemem)
MDRV_CPU_VBLANK_INT(metro_interrupt,10) /* ? */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
+
MDRV_GFXDECODE(14220)
MDRV_PALETTE_LENGTH(8192)
@@ -3838,16 +3838,16 @@ static MACHINE_DRIVER_START( bangball )
MDRV_CPU_PROGRAM_MAP(bangball_readmem,bangball_writemem)
MDRV_CPU_VBLANK_INT(bangball_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
+
MDRV_GFXDECODE(14220)
MDRV_PALETTE_LENGTH(8192)
@@ -3871,16 +3871,16 @@ static MACHINE_DRIVER_START( batlbubl )
MDRV_CPU_PROGRAM_MAP(batlbubl_readmem,batlbubl_writemem)
MDRV_CPU_VBLANK_INT(bangball_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
+
MDRV_GFXDECODE(14220)
MDRV_PALETTE_LENGTH(8192)
@@ -3909,16 +3909,16 @@ static MACHINE_DRIVER_START( daitorid )
MDRV_CPU_PROGRAM_MAP(daitorid_snd_readmem,daitorid_snd_writemem)
MDRV_CPU_IO_MAP(daitorid_snd_readport,daitorid_snd_writeport)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
+
MDRV_GFXDECODE(14220)
MDRV_PALETTE_LENGTH(8192)
@@ -3953,16 +3953,16 @@ static MACHINE_DRIVER_START( dharma )
MDRV_CPU_PROGRAM_MAP(metro_snd_readmem,metro_snd_writemem)
MDRV_CPU_IO_MAP(metro_snd_readport,metro_snd_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
+
MDRV_GFXDECODE(14100)
MDRV_PALETTE_LENGTH(8192)
@@ -3996,16 +3996,16 @@ static MACHINE_DRIVER_START( karatour )
MDRV_CPU_PROGRAM_MAP(metro_snd_readmem,metro_snd_writemem)
MDRV_CPU_IO_MAP(metro_snd_readport,metro_snd_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
+
MDRV_GFXDECODE(14100)
MDRV_PALETTE_LENGTH(8192)
@@ -4039,16 +4039,16 @@ static MACHINE_DRIVER_START( 3kokushi )
MDRV_CPU_PROGRAM_MAP(metro_snd_readmem,metro_snd_writemem)
MDRV_CPU_IO_MAP(metro_snd_readport,metro_snd_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
+
MDRV_GFXDECODE(14220)
MDRV_PALETTE_LENGTH(8192)
@@ -4082,16 +4082,16 @@ static MACHINE_DRIVER_START( lastfort )
MDRV_CPU_PROGRAM_MAP(metro_snd_readmem,metro_snd_writemem)
MDRV_CPU_IO_MAP(metro_snd_readport,metro_snd_writeport)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(360, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 360-1, 0, 224-1)
+
MDRV_GFXDECODE(14100)
MDRV_PALETTE_LENGTH(8192)
@@ -4124,16 +4124,16 @@ static MACHINE_DRIVER_START( lastforg )
MDRV_CPU_PROGRAM_MAP(metro_snd_readmem,metro_snd_writemem)
MDRV_CPU_IO_MAP(metro_snd_readport,metro_snd_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(360, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 360-1, 0, 224-1)
+
MDRV_GFXDECODE(14100)
MDRV_PALETTE_LENGTH(8192)
@@ -4160,16 +4160,16 @@ static MACHINE_DRIVER_START( dokyusei )
MDRV_CPU_PROGRAM_MAP(dokyusei_readmem,dokyusei_writemem)
MDRV_CPU_VBLANK_INT(dokyusei_interrupt,2) /* ? */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256-32)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-32-1)
+
MDRV_GFXDECODE(14300)
MDRV_PALETTE_LENGTH(8192)
@@ -4210,17 +4210,17 @@ static MACHINE_DRIVER_START( dokyusp )
MDRV_CPU_PROGRAM_MAP(dokyusp_readmem,dokyusp_writemem)
MDRV_CPU_VBLANK_INT(gakusai_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
MDRV_NVRAM_HANDLER(dokyusp)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 256-32)
MDRV_SCREEN_VISIBLE_AREA(0, 384-1, 0, 256-32-1)
+
MDRV_GFXDECODE(14300)
MDRV_PALETTE_LENGTH(8192)
@@ -4248,17 +4248,17 @@ static MACHINE_DRIVER_START( gakusai )
MDRV_CPU_PROGRAM_MAP(gakusai_readmem,gakusai_writemem)
MDRV_CPU_VBLANK_INT(gakusai_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
+
MDRV_GFXDECODE(14300)
MDRV_PALETTE_LENGTH(8192)
@@ -4286,17 +4286,17 @@ static MACHINE_DRIVER_START( gakusai2 )
MDRV_CPU_PROGRAM_MAP(gakusai2_readmem,gakusai2_writemem)
MDRV_CPU_VBLANK_INT(gakusai_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
+
MDRV_GFXDECODE(14300)
MDRV_PALETTE_LENGTH(8192)
@@ -4330,16 +4330,16 @@ static MACHINE_DRIVER_START( pangpoms )
MDRV_CPU_PROGRAM_MAP(metro_snd_readmem,metro_snd_writemem)
MDRV_CPU_IO_MAP(metro_snd_readport,metro_snd_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(360, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 360-1, 0, 224-1)
+
MDRV_GFXDECODE(14100)
MDRV_PALETTE_LENGTH(8192)
@@ -4373,16 +4373,16 @@ static MACHINE_DRIVER_START( poitto )
MDRV_CPU_PROGRAM_MAP(metro_snd_readmem,metro_snd_writemem)
MDRV_CPU_IO_MAP(metro_snd_readport,metro_snd_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(360, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 360-1, 0, 224-1)
+
MDRV_GFXDECODE(14100)
MDRV_PALETTE_LENGTH(8192)
@@ -4416,16 +4416,16 @@ static MACHINE_DRIVER_START( pururun )
MDRV_CPU_PROGRAM_MAP(daitorid_snd_readmem,daitorid_snd_writemem)
MDRV_CPU_IO_MAP(daitorid_snd_readport,daitorid_snd_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
+
MDRV_GFXDECODE(14100)
MDRV_PALETTE_LENGTH(8192)
@@ -4460,16 +4460,16 @@ static MACHINE_DRIVER_START( skyalert )
MDRV_CPU_PROGRAM_MAP(metro_snd_readmem,metro_snd_writemem)
MDRV_CPU_IO_MAP(metro_snd_readport,metro_snd_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(360, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 360-1, 0, 224-1)
+
MDRV_GFXDECODE(14100)
MDRV_PALETTE_LENGTH(8192)
@@ -4503,16 +4503,16 @@ static MACHINE_DRIVER_START( toride2g )
MDRV_CPU_PROGRAM_MAP(metro_snd_readmem,metro_snd_writemem)
MDRV_CPU_IO_MAP(metro_snd_readport,metro_snd_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
+
MDRV_GFXDECODE(14100)
MDRV_PALETTE_LENGTH(8192)
@@ -4540,16 +4540,16 @@ static MACHINE_DRIVER_START( mouja )
MDRV_CPU_PROGRAM_MAP(mouja_readmem,mouja_writemem)
MDRV_CPU_VBLANK_INT(mouja_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
+
MDRV_GFXDECODE(14300)
MDRV_PALETTE_LENGTH(8192)
@@ -4581,16 +4581,16 @@ static MACHINE_DRIVER_START( blzntrnd )
MDRV_CPU_PROGRAM_MAP(blzntrnd_sound_readmem, blzntrnd_sound_writemem)
MDRV_CPU_IO_MAP(blzntrnd_sound_readport, blzntrnd_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 224)
MDRV_SCREEN_VISIBLE_AREA(8, 320-8-1, 0, 224-1)
+
MDRV_GFXDECODE(blzntrnd)
MDRV_PALETTE_LENGTH(8192)
@@ -4621,16 +4621,16 @@ static MACHINE_DRIVER_START( gstrik2 )
MDRV_CPU_PROGRAM_MAP(blzntrnd_sound_readmem, blzntrnd_sound_writemem)
MDRV_CPU_IO_MAP(blzntrnd_sound_readport, blzntrnd_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 224)
MDRV_SCREEN_VISIBLE_AREA(8, 320-8-1, 0, 224-1)
+
MDRV_GFXDECODE(gstrik2)
MDRV_PALETTE_LENGTH(8192)
@@ -4688,16 +4688,16 @@ static MACHINE_DRIVER_START( puzzlet )
MDRV_CPU_IO_MAP(puzzlet_io_map,0)
MDRV_CPU_VBLANK_INT(puzzlet_interrupt, 5)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(metro)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256-32)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-32-1)
+
MDRV_GFXDECODE(14300)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/mexico86.c b/src/mame/drivers/mexico86.c
index 627cd7303ef..b41d2c275c1 100644
--- a/src/mame/drivers/mexico86.c
+++ b/src/mame/drivers/mexico86.c
@@ -395,16 +395,17 @@ static MACHINE_DRIVER_START( mexico86 )
MDRV_CPU_PROGRAM_MAP(sub_cpu_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* frames per second, vblank duration */)
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* frames per second, vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(mexico86)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/mgolf.c b/src/mame/drivers/mgolf.c
index 74db4844b8e..622d544e347 100644
--- a/src/mame/drivers/mgolf.c
+++ b/src/mame/drivers/mgolf.c
@@ -297,14 +297,15 @@ static MACHINE_DRIVER_START( mgolf )
MDRV_CPU_ADD(M6502, 12096000 / 16) /* ? */
MDRV_CPU_PROGRAM_MAP(cpu_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_MACHINE_RESET(mgolf)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 223)
+
MDRV_GFXDECODE(mgolf)
MDRV_PALETTE_LENGTH(4)
diff --git a/src/mame/drivers/mhavoc.c b/src/mame/drivers/mhavoc.c
index fe35e202337..561ab8ca4ed 100644
--- a/src/mame/drivers/mhavoc.c
+++ b/src/mame/drivers/mhavoc.c
@@ -524,17 +524,15 @@ static MACHINE_DRIVER_START( mhavoc )
MDRV_CPU_ADD_TAG("gamma", M6502, MHAVOC_CLOCK_1_25M) /* 1.25 MHz */
MDRV_CPU_PROGRAM_MAP(gamma_map, 0)
- MDRV_SCREEN_REFRESH_RATE(50)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(mhavoc)
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(50)
MDRV_SCREEN_SIZE(400, 300)
MDRV_SCREEN_VISIBLE_AREA(0, 300, 0, 260)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(avg_mhavoc)
@@ -574,6 +572,7 @@ static MACHINE_DRIVER_START( alphaone )
MDRV_CPU_PROGRAM_MAP(alphaone_map, 0)
MDRV_CPU_REMOVE("gamma")
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 580, 0, 500)
/* sound hardware */
diff --git a/src/mame/drivers/micro3d.c b/src/mame/drivers/micro3d.c
index 95321d071d1..d99408e6b46 100644
--- a/src/mame/drivers/micro3d.c
+++ b/src/mame/drivers/micro3d.c
@@ -875,10 +875,9 @@ static MACHINE_DRIVER_START( micro3d )
MDRV_MACHINE_RESET(micro3d)
MDRV_INTERLEAVE(50)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(32768)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(40000000/8*4, 192*4, 0, 144*4, 434, 0, 400)
diff --git a/src/mame/drivers/midas.c b/src/mame/drivers/midas.c
index db0c941495e..9e4b989fe92 100644
--- a/src/mame/drivers/midas.c
+++ b/src/mame/drivers/midas.c
@@ -444,16 +444,16 @@ static MACHINE_DRIVER_START( livequiz )
MDRV_CPU_PROGRAM_MAP(mem_map,0)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-16-1)
+
MDRV_GFXDECODE(midas)
MDRV_PALETTE_LENGTH(0x10000)
diff --git a/src/mame/drivers/midtunit.c b/src/mame/drivers/midtunit.c
index ad779ec5ece..a6bb626027d 100644
--- a/src/mame/drivers/midtunit.c
+++ b/src/mame/drivers/midtunit.c
@@ -611,10 +611,9 @@ static MACHINE_DRIVER_START( tunit_core )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(32768)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 505, 0, 399, 289, 0, 253)
diff --git a/src/mame/drivers/midvunit.c b/src/mame/drivers/midvunit.c
index d2248432615..82e770868d9 100644
--- a/src/mame/drivers/midvunit.c
+++ b/src/mame/drivers/midvunit.c
@@ -1015,10 +1015,9 @@ static MACHINE_DRIVER_START( midvcommon )
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(32768)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MIDVUNIT_VIDEO_CLOCK/2, 666, 0, 512, 432, 0, 400)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
diff --git a/src/mame/drivers/midwunit.c b/src/mame/drivers/midwunit.c
index b7ac0cea3a2..1e50c03cba9 100644
--- a/src/mame/drivers/midwunit.c
+++ b/src/mame/drivers/midwunit.c
@@ -641,10 +641,9 @@ static MACHINE_DRIVER_START( wunit )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(32768)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 505, 0, 399, 289, 0, 253)
diff --git a/src/mame/drivers/midxunit.c b/src/mame/drivers/midxunit.c
index 56bfce42ce5..2c4b84f25cd 100644
--- a/src/mame/drivers/midxunit.c
+++ b/src/mame/drivers/midxunit.c
@@ -200,10 +200,9 @@ static MACHINE_DRIVER_START( midxunit )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(32768)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 505, 0, 399, 289, 0, 253)
diff --git a/src/mame/drivers/midyunit.c b/src/mame/drivers/midyunit.c
index c70103f87dd..0fbb6e38148 100644
--- a/src/mame/drivers/midyunit.c
+++ b/src/mame/drivers/midyunit.c
@@ -1017,10 +1017,10 @@ static MACHINE_DRIVER_START( zunit )
MDRV_NVRAM_HANDLER(midyunit)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_ALWAYS_UPDATE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
MDRV_PALETTE_LENGTH(8192)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(MEDRES_PIXEL_CLOCK*2, 673, 0, 511, 433, 0, 399)
@@ -1050,10 +1050,10 @@ static MACHINE_DRIVER_START( yunit_core )
MDRV_NVRAM_HANDLER(midyunit)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_ALWAYS_UPDATE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
MDRV_PALETTE_LENGTH(256)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(STDRES_PIXEL_CLOCK*2, 505, 0, 399, 289, 0, 253)
diff --git a/src/mame/drivers/midzeus.c b/src/mame/drivers/midzeus.c
index 8c3343badff..c7b4333211e 100644
--- a/src/mame/drivers/midzeus.c
+++ b/src/mame/drivers/midzeus.c
@@ -1123,10 +1123,9 @@ static MACHINE_DRIVER_START( midzeus )
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(32768)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MIDZEUS_VIDEO_CLOCK/8, 529, 0, 400, 278, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -1150,9 +1149,7 @@ static MACHINE_DRIVER_START( midzeus2 )
MDRV_NVRAM_HANDLER(midzeus2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
-
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MIDZEUS_VIDEO_CLOCK/4, 666, 0, 512, 438, 0, 400)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
diff --git a/src/mame/drivers/mikie.c b/src/mame/drivers/mikie.c
index 25d311b0e61..e56463529c2 100644
--- a/src/mame/drivers/mikie.c
+++ b/src/mame/drivers/mikie.c
@@ -253,14 +253,15 @@ static MACHINE_DRIVER_START( mikie )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_map, 0)
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(mikie)
MDRV_PALETTE_LENGTH(16*8*16+16*8*16)
diff --git a/src/mame/drivers/miniboy7.c b/src/mame/drivers/miniboy7.c
index a319d0fbab0..894584f7f6f 100644
--- a/src/mame/drivers/miniboy7.c
+++ b/src/mame/drivers/miniboy7.c
@@ -275,11 +275,10 @@ static MACHINE_DRIVER_START( miniboy7 )
MDRV_CPU_PROGRAM_MAP(miniboy7_map, 0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse, 1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE((47+1)*8, (39+1)*8) /* Taken from MC6845, registers 00 & 04. Normally programmed with (value-1) */
MDRV_SCREEN_VISIBLE_AREA(0*8, 37*8-1, 0*8, 37*8-1) /* Taken from MC6845, registers 01 & 06 */
@@ -291,7 +290,7 @@ static MACHINE_DRIVER_START( miniboy7 )
MDRV_VIDEO_START(miniboy7)
MDRV_VIDEO_UPDATE(miniboy7)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/minivadr.c b/src/mame/drivers/minivadr.c
index 3931030b252..8d06357013a 100644
--- a/src/mame/drivers/minivadr.c
+++ b/src/mame/drivers/minivadr.c
@@ -74,14 +74,14 @@ static MACHINE_DRIVER_START( minivadr )
MDRV_CPU_PROGRAM_MAP(minivadr_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 240-1)
+
MDRV_VIDEO_UPDATE(minivadr)
/* the board has no sound hardware */
diff --git a/src/mame/drivers/mirage.c b/src/mame/drivers/mirage.c
index 275fca3d45f..afae5978c76 100644
--- a/src/mame/drivers/mirage.c
+++ b/src/mame/drivers/mirage.c
@@ -351,14 +351,14 @@ static MACHINE_DRIVER_START( mirage )
MDRV_CPU_PROGRAM_MAP(mirage_readmem,mirage_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(mirage)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/mirax.c b/src/mame/drivers/mirax.c
index 7d131567c3f..53b66226c53 100644
--- a/src/mame/drivers/mirax.c
+++ b/src/mame/drivers/mirax.c
@@ -181,15 +181,14 @@ static MACHINE_DRIVER_START( mirax )
MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 2)
-
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_GFXDECODE(mirax)
MDRV_VIDEO_START(mirax)
diff --git a/src/mame/drivers/missb2.c b/src/mame/drivers/missb2.c
index c3f4e5201d3..1a0d247fcb5 100644
--- a/src/mame/drivers/missb2.c
+++ b/src/mame/drivers/missb2.c
@@ -380,15 +380,17 @@ static MACHINE_DRIVER_START( missb2 )
// MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
MDRV_CPU_VBLANK_INT(missb2_interrupt, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) // 100 CPU slices per frame - a high value to ensure proper synchronization of the CPUs
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(missb2)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/missile.c b/src/mame/drivers/missile.c
index 0db116cf995..6f3ac318958 100644
--- a/src/mame/drivers/missile.c
+++ b/src/mame/drivers/missile.c
@@ -897,10 +897,9 @@ static MACHINE_DRIVER_START( missile )
MDRV_WATCHDOG_VBLANK_INIT(8)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(8)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
diff --git a/src/mame/drivers/mitchell.c b/src/mame/drivers/mitchell.c
index 4441c42cb02..5c09ecb7067 100644
--- a/src/mame/drivers/mitchell.c
+++ b/src/mame/drivers/mitchell.c
@@ -1333,14 +1333,14 @@ static MACHINE_DRIVER_START( mgakuen )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2) /* ??? one extra irq seems to be needed for music (see input5_r) */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(mgakuen)
MDRV_PALETTE_LENGTH(1024) /* less colors than the others */
@@ -1367,16 +1367,16 @@ static MACHINE_DRIVER_START( pang )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2) /* ??? one extra irq seems to be needed for music (see input5_r) */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(mitchell)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(mitchell)
MDRV_PALETTE_LENGTH(2048)
@@ -1470,14 +1470,14 @@ static MACHINE_DRIVER_START( mstworld )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(mstworld_sound_readmem,mstworld_sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(mstworld)
MDRV_PALETTE_LENGTH(2048)
@@ -1501,16 +1501,16 @@ static MACHINE_DRIVER_START( marukin )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2) /* ??? one extra irq seems to be needed for music (see input5_r) */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(mitchell)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(marukin)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/mjkjidai.c b/src/mame/drivers/mjkjidai.c
index 14fc7a7c413..d43346baf0f 100644
--- a/src/mame/drivers/mjkjidai.c
+++ b/src/mame/drivers/mjkjidai.c
@@ -358,16 +358,16 @@ static MACHINE_DRIVER_START( mjkjidai )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(mjkjidai)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(3*8, 61*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(mjkjidai)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/mjsister.c b/src/mame/drivers/mjsister.c
index 6838d09ca79..917c15cc7a1 100644
--- a/src/mame/drivers/mjsister.c
+++ b/src/mame/drivers/mjsister.c
@@ -310,15 +310,16 @@ static MACHINE_DRIVER_START( mjsister )
MDRV_CPU_IO_MAP(mjsister_readport,mjsister_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(mjsister)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256+4, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255+4, 8, 247)
+
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/mjsiyoub.c b/src/mame/drivers/mjsiyoub.c
index e39e09c5ea1..68fff716127 100644
--- a/src/mame/drivers/mjsiyoub.c
+++ b/src/mame/drivers/mjsiyoub.c
@@ -88,14 +88,14 @@ static MACHINE_DRIVER_START( mjsiyoub )
MDRV_CPU_PROGRAM_MAP(readmem2,writemem2)
// MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_VIDEO_START(mjsiyoub)
diff --git a/src/mame/drivers/mlanding.c b/src/mame/drivers/mlanding.c
index 3c21d95c1fa..6b877eb6c30 100644
--- a/src/mame/drivers/mlanding.c
+++ b/src/mame/drivers/mlanding.c
@@ -377,12 +377,13 @@ static MACHINE_DRIVER_START( mlanding )
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 14*8, 511)
+
MDRV_GFXDECODE(mlanding)
MDRV_PALETTE_LENGTH(512*16)
diff --git a/src/mame/drivers/model1.c b/src/mame/drivers/model1.c
index 2581680d4e0..71a186fb3a3 100644
--- a/src/mame/drivers/model1.c
+++ b/src/mame/drivers/model1.c
@@ -1539,16 +1539,18 @@ static MACHINE_DRIVER_START( model1 )
MDRV_CPU_ADD(M68000, 10000000) // verified on real h/w
MDRV_CPU_PROGRAM_MAP(model1_snd, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(model1)
MDRV_NVRAM_HANDLER(generic_0fill)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(62*8, 48*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 62*8-1, 0*8, 48*8-1)
+
MDRV_PALETTE_LENGTH(8192)
MDRV_VIDEO_START(model1)
@@ -1587,16 +1589,18 @@ static MACHINE_DRIVER_START( model1_vr )
MDRV_CPU_CONFIG(model1_vr_tgp_config)
MDRV_CPU_PROGRAM_MAP(model1_vr_tgp_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(model1_vr)
MDRV_NVRAM_HANDLER(generic_0fill)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(62*8, 48*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 62*8-1, 0*8, 48*8-1)
+
MDRV_PALETTE_LENGTH(8192)
MDRV_VIDEO_START(model1)
diff --git a/src/mame/drivers/model2.c b/src/mame/drivers/model2.c
index 50d73b8a4f1..98b6c9895a5 100644
--- a/src/mame/drivers/model2.c
+++ b/src/mame/drivers/model2.c
@@ -1798,16 +1798,18 @@ static MACHINE_DRIVER_START( model2o )
MDRV_CPU_CONFIG(tgp_config)
MDRV_CPU_PROGRAM_MAP(copro_tgp_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(model2o)
MDRV_NVRAM_HANDLER( model2 )
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(62*8, 48*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 62*8-1, 0*8, 48*8-1)
+
MDRV_PALETTE_LENGTH(8192)
MDRV_VIDEO_START(model2)
@@ -1843,16 +1845,18 @@ static MACHINE_DRIVER_START( model2a )
MDRV_CPU_CONFIG(tgp_config)
MDRV_CPU_PROGRAM_MAP(copro_tgp_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(model2)
MDRV_NVRAM_HANDLER( model2 )
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(62*8, 48*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 62*8-1, 0*8, 48*8-1)
+
MDRV_PALETTE_LENGTH(8192)
MDRV_VIDEO_START(model2)
@@ -1891,16 +1895,18 @@ static MACHINE_DRIVER_START( model2b )
MDRV_INTERLEAVE(300)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(model2b)
MDRV_NVRAM_HANDLER( model2 )
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(62*8, 48*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 62*8-1, 0*8, 48*8-1)
+
MDRV_PALETTE_LENGTH(8192)
MDRV_VIDEO_START(model2)
@@ -1923,13 +1929,14 @@ static MACHINE_DRIVER_START( model2c )
MDRV_CPU_ADD(M68000, 12000000)
MDRV_CPU_PROGRAM_MAP(model2_snd, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(model2c)
MDRV_NVRAM_HANDLER( model2 )
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(62*8, 48*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 62*8-1, 0*8, 48*8-1)
diff --git a/src/mame/drivers/model3.c b/src/mame/drivers/model3.c
index 19d910c1421..d8026867f3d 100644
--- a/src/mame/drivers/model3.c
+++ b/src/mame/drivers/model3.c
@@ -4094,12 +4094,14 @@ static MACHINE_DRIVER_START( model3_10 )
MDRV_MACHINE_RESET(model3_10)
MDRV_NVRAM_HANDLER(model3)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(496, 384)
MDRV_SCREEN_VISIBLE_AREA(0, 495, 0, 383)
+
MDRV_PALETTE_LENGTH(65536)
MDRV_VIDEO_START(model3)
@@ -4129,12 +4131,14 @@ static MACHINE_DRIVER_START( model3_15 )
MDRV_MACHINE_RESET(model3_15)
MDRV_NVRAM_HANDLER(model3)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(496, 384)
MDRV_SCREEN_VISIBLE_AREA(0, 495, 0, 383)
+
MDRV_PALETTE_LENGTH(65536)
MDRV_VIDEO_START(model3)
@@ -4163,12 +4167,14 @@ static MACHINE_DRIVER_START( model3_20 )
MDRV_MACHINE_RESET(model3_20)
MDRV_NVRAM_HANDLER(model3)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(496, 384)
MDRV_SCREEN_VISIBLE_AREA(0, 495, 0, 383)
+
MDRV_PALETTE_LENGTH(65536)
MDRV_VIDEO_START(model3)
@@ -4197,12 +4203,14 @@ static MACHINE_DRIVER_START( model3_21 )
MDRV_MACHINE_RESET(model3_21)
MDRV_NVRAM_HANDLER(model3)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(496, 384)
MDRV_SCREEN_VISIBLE_AREA(0, 495, 0, 383)
+
MDRV_PALETTE_LENGTH(65536)
MDRV_VIDEO_START(model3)
diff --git a/src/mame/drivers/mogura.c b/src/mame/drivers/mogura.c
index 0c846131769..df25edf7f22 100644
--- a/src/mame/drivers/mogura.c
+++ b/src/mame/drivers/mogura.c
@@ -216,16 +216,16 @@ static MACHINE_DRIVER_START( mogura )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60) // ?
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(mogura)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60) // ?
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-1)
+
MDRV_PALETTE_LENGTH(32)
MDRV_PALETTE_INIT(mogura)
diff --git a/src/mame/drivers/mole.c b/src/mame/drivers/mole.c
index 9d86b344e24..c0cd04d3173 100644
--- a/src/mame/drivers/mole.c
+++ b/src/mame/drivers/mole.c
@@ -199,14 +199,15 @@ static MACHINE_DRIVER_START( mole )
MDRV_CPU_PROGRAM_MAP(mole_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 25*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 25*8-1)
+
MDRV_GFXDECODE(mole)
MDRV_PALETTE_LENGTH(8)
diff --git a/src/mame/drivers/momoko.c b/src/mame/drivers/momoko.c
index 619e855bd26..f17f3a3a5bd 100644
--- a/src/mame/drivers/momoko.c
+++ b/src/mame/drivers/momoko.c
@@ -259,14 +259,14 @@ static MACHINE_DRIVER_START( momoko )
/* audio CPU */ /* 2.5MHz */
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 29*8-1)
+
MDRV_GFXDECODE(momoko)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/moo.c b/src/mame/drivers/moo.c
index 81638c1cd59..4d81581db64 100644
--- a/src/mame/drivers/moo.c
+++ b/src/mame/drivers/moo.c
@@ -635,16 +635,17 @@ static MACHINE_DRIVER_START( moo )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1200)) // should give IRQ4 sufficient time to update scroll registers
-
MDRV_MACHINE_START(moo)
MDRV_MACHINE_RESET(moo)
MDRV_NVRAM_HANDLER(moo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1200)) // should give IRQ4 sufficient time to update scroll registers
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(40, 40+384-1, 16, 16+224-1)
@@ -674,15 +675,16 @@ static MACHINE_DRIVER_START( moobl )
MDRV_CPU_PROGRAM_MAP(readmembl,writemembl)
MDRV_CPU_VBLANK_INT(moobl_interrupt, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1200)) // should give IRQ4 sufficient time to update scroll registers
-
MDRV_MACHINE_START(moo)
MDRV_MACHINE_RESET(moo)
MDRV_NVRAM_HANDLER(moo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1200)) // should give IRQ4 sufficient time to update scroll registers
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(40, 40+384-1, 16, 16+224-1)
diff --git a/src/mame/drivers/mosaic.c b/src/mame/drivers/mosaic.c
index f62ccd377c0..6558c58fe5f 100644
--- a/src/mame/drivers/mosaic.c
+++ b/src/mame/drivers/mosaic.c
@@ -287,14 +287,14 @@ static MACHINE_DRIVER_START( mosaic )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(mosaic)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/mouser.c b/src/mame/drivers/mouser.c
index a91d2a316ba..d7e3a7b3d94 100644
--- a/src/mame/drivers/mouser.c
+++ b/src/mame/drivers/mouser.c
@@ -210,14 +210,14 @@ static MACHINE_DRIVER_START( mouser )
/* audio CPU */
MDRV_CPU_VBLANK_INT(nmi_line_pulse,4) /* ??? This controls the sound tempo */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(mouser)
MDRV_PALETTE_LENGTH(64)
diff --git a/src/mame/drivers/mpu4.c b/src/mame/drivers/mpu4.c
index cad0da7d7dc..b030386bad6 100644
--- a/src/mame/drivers/mpu4.c
+++ b/src/mame/drivers/mpu4.c
@@ -1373,10 +1373,6 @@ static MACHINE_DRIVER_START( mpu4mod2 )
/* video hardware */
MDRV_DEFAULT_LAYOUT(layout_mpu4)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_NONE)
- /* dummy values */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MACHINE_DRIVER_END
const UINT8 MPU4_chr_lut[72]= { 0x00,0x1A,0x04,0x10,0x18,0x0F,0x13,0x1B,
diff --git a/src/mame/drivers/mpu4drvr.c b/src/mame/drivers/mpu4drvr.c
index 6f0af84ec33..8c8eea1978f 100644
--- a/src/mame/drivers/mpu4drvr.c
+++ b/src/mame/drivers/mpu4drvr.c
@@ -1621,11 +1621,12 @@ static MACHINE_DRIVER_START( mpu4_vid )
MDRV_INTERLEAVE(16)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 63*8-1, 0*8, 37*8-1)
MDRV_SCREEN_REFRESH_RATE(50)
+
MDRV_MACHINE_START(mpu4_vid)
MDRV_MACHINE_RESET(mpu4_vid)
MDRV_VIDEO_START (mpu4_vid)
@@ -1663,9 +1664,7 @@ static MACHINE_DRIVER_START( dealem )
MDRV_CPU_PERIODIC_INT(gen_50hz, 100) // generate 50 hz signal
- MDRV_SCREEN_REFRESH_RATE(56)//Measured accurately from the flip-flop
MDRV_CPU_VBLANK_INT(nmi_line_pulse, 1)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SPEAKER_STANDARD_MONO("mono")
MDRV_SOUND_ADD_TAG("AY8913",AY8913, MPU4_MASTER_CLOCK/4)
@@ -1673,11 +1672,13 @@ static MACHINE_DRIVER_START( dealem )
MDRV_NVRAM_HANDLER(generic_0fill) // load/save nv RAM
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE((54+1)*8, (32+1)*8) /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1) */
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 31*8-1) /* Taken from MC6845 init, registers 01 & 06 */
MDRV_SCREEN_REFRESH_RATE(50)
+
MDRV_VIDEO_START( dealem)
MDRV_GFXDECODE(dealem)
MDRV_VIDEO_UPDATE(dealem)
@@ -1685,7 +1686,7 @@ static MACHINE_DRIVER_START( dealem )
MDRV_PALETTE_LENGTH(32)
MDRV_PALETTE_INIT(dealem)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
MACHINE_DRIVER_END
static DRIVER_INIT (crmaze)
diff --git a/src/mame/drivers/mquake.c b/src/mame/drivers/mquake.c
index 8d704b423bc..ee0edc45dcf 100644
--- a/src/mame/drivers/mquake.c
+++ b/src/mame/drivers/mquake.c
@@ -354,17 +354,19 @@ static MACHINE_DRIVER_START( mquake )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_VBLANK_INT(amiga_scanline_callback, 262)
- MDRV_SCREEN_REFRESH_RATE(59.997)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(mquake)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.997)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512*2, 262)
MDRV_SCREEN_VISIBLE_AREA((129-8)*2, (449+8-1)*2, 44-8, 244+8-1)
+
MDRV_PALETTE_LENGTH(4096)
MDRV_PALETTE_INIT(amiga)
diff --git a/src/mame/drivers/mrdo.c b/src/mame/drivers/mrdo.c
index 51ef07b30d8..11b220bfdf4 100644
--- a/src/mame/drivers/mrdo.c
+++ b/src/mame/drivers/mrdo.c
@@ -180,14 +180,14 @@ static MACHINE_DRIVER_START( mrdo )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(5000000.0/312/262)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(4368))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 4*8, 28*8-1)
+
MDRV_GFXDECODE(mrdo)
MDRV_PALETTE_LENGTH(64*4+16*4)
diff --git a/src/mame/drivers/mrflea.c b/src/mame/drivers/mrflea.c
index 001a8287d8d..3f397038035 100644
--- a/src/mame/drivers/mrflea.c
+++ b/src/mame/drivers/mrflea.c
@@ -285,15 +285,16 @@ static MACHINE_DRIVER_START( mrflea )
MDRV_CPU_IO_MAP(readport_io,writeport_io)
MDRV_CPU_VBLANK_INT(mrflea_io_interrupt,2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 31*8-1)
+
MDRV_GFXDECODE(mrflea)
MDRV_PALETTE_LENGTH(32)
diff --git a/src/mame/drivers/mrjong.c b/src/mame/drivers/mrjong.c
index 1cef56e7246..3bc17666a4b 100644
--- a/src/mame/drivers/mrjong.c
+++ b/src/mame/drivers/mrjong.c
@@ -184,14 +184,14 @@ static MACHINE_DRIVER_START( mrjong )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 30*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(mrjong)
MDRV_PALETTE_LENGTH(4*32)
diff --git a/src/mame/drivers/ms32.c b/src/mame/drivers/ms32.c
index 8ab7da647d9..6a06b7e7bec 100644
--- a/src/mame/drivers/ms32.c
+++ b/src/mame/drivers/ms32.c
@@ -1372,17 +1372,18 @@ static MACHINE_DRIVER_START( ms32 )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(ms32_snd_readmem, ms32_snd_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(1000)
MDRV_MACHINE_RESET(ms32)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(ms32)
MDRV_PALETTE_LENGTH(0x8000)
diff --git a/src/mame/drivers/msisaac.c b/src/mame/drivers/msisaac.c
index 531d4ce1a80..58a5a2e9b1b 100644
--- a/src/mame/drivers/msisaac.c
+++ b/src/mame/drivers/msisaac.c
@@ -542,16 +542,16 @@ static MACHINE_DRIVER_START( msisaac )
MDRV_CPU_PROGRAM_MAP(mcu_readmem,mcu_writemem)
#endif
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(ta7630)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(msisaac)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/mugsmash.c b/src/mame/drivers/mugsmash.c
index 358637582dc..0af82ea4c55 100644
--- a/src/mame/drivers/mugsmash.c
+++ b/src/mame/drivers/mugsmash.c
@@ -436,15 +436,16 @@ static MACHINE_DRIVER_START( mugsmash )
/* audio CPU */ /* Guess */
MDRV_CPU_PROGRAM_MAP(snd_readmem,snd_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(mugsmash)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_PALETTE_LENGTH(0x300)
MDRV_VIDEO_START(mugsmash)
diff --git a/src/mame/drivers/multigam.c b/src/mame/drivers/multigam.c
index df80dabf121..86fe7c913af 100644
--- a/src/mame/drivers/multigam.c
+++ b/src/mame/drivers/multigam.c
@@ -266,15 +266,15 @@ static MACHINE_DRIVER_START( multigam )
MDRV_CPU_ADD_TAG("main", N2A03, N2A03_DEFAULTCLOCK)
MDRV_CPU_PROGRAM_MAP(multigam_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET( multigam )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 262)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(multigam)
MDRV_PALETTE_LENGTH(8*4*16)
diff --git a/src/mame/drivers/munchmo.c b/src/mame/drivers/munchmo.c
index d009dc28eb5..a798fe1f9a3 100644
--- a/src/mame/drivers/munchmo.c
+++ b/src/mame/drivers/munchmo.c
@@ -290,14 +290,14 @@ static MACHINE_DRIVER_START( munchmo )
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
MDRV_CPU_VBLANK_INT(nmi_line_assert,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256+32+32, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255+32+32,0, 255-16)
+
MDRV_GFXDECODE(munchmo)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/murogem.c b/src/mame/drivers/murogem.c
index a187e2cfdd2..e33ef05465d 100644
--- a/src/mame/drivers/murogem.c
+++ b/src/mame/drivers/murogem.c
@@ -215,14 +215,14 @@ static MACHINE_DRIVER_START( murogem )
MDRV_CPU_PROGRAM_MAP(murogem_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE((39+1)*8, (38+1)*8) // Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1).
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1) // Taken from MC6845 init, registers 01 & 06.
+
MDRV_GFXDECODE(murogem)
MDRV_PALETTE_LENGTH(0x100)
@@ -230,7 +230,7 @@ static MACHINE_DRIVER_START( murogem )
MDRV_VIDEO_START(murogem)
MDRV_VIDEO_UPDATE(murogem)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/mustache.c b/src/mame/drivers/mustache.c
index 75cd122a0bb..f64ce26cff7 100644
--- a/src/mame/drivers/mustache.c
+++ b/src/mame/drivers/mustache.c
@@ -212,14 +212,14 @@ static MACHINE_DRIVER_START( mustache )
MDRV_CPU_PROGRAM_MAP(t5182_map, 0)
MDRV_CPU_IO_MAP(t5182_io, 0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(56.747)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 0, 31*8-1)
+
MDRV_GFXDECODE(mustache)
MDRV_PALETTE_LENGTH(8*16+16*8)
diff --git a/src/mame/drivers/mw8080bw.c b/src/mame/drivers/mw8080bw.c
index 698dcdd0ca0..183476cf73a 100644
--- a/src/mame/drivers/mw8080bw.c
+++ b/src/mame/drivers/mw8080bw.c
@@ -228,10 +228,9 @@ MACHINE_DRIVER_START( mw8080bw_root )
MDRV_MACHINE_RESET(mw8080bw)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(mw8080bw)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(MW8080BW_PIXEL_CLOCK, MW8080BW_HTOTAL, MW8080BW_HBEND, MW8080BW_HPIXCOUNT, MW8080BW_VTOTAL, MW8080BW_VBEND, MW8080BW_VBSTART)
diff --git a/src/mame/drivers/mwarr.c b/src/mame/drivers/mwarr.c
index cdae4a6cdc8..1b5f607a534 100644
--- a/src/mame/drivers/mwarr.c
+++ b/src/mame/drivers/mwarr.c
@@ -455,15 +455,16 @@ static MACHINE_DRIVER_START( mwarr )
MDRV_CPU_PROGRAM_MAP(mwarr_map,0)
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(54)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_GFXDECODE(mwarr)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(54)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8+1, 48*8-1-8-1, 0, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x800)
MDRV_VIDEO_START(mwarr)
diff --git a/src/mame/drivers/mystston.c b/src/mame/drivers/mystston.c
index 2f7dc56b390..89eb3ed4e75 100644
--- a/src/mame/drivers/mystston.c
+++ b/src/mame/drivers/mystston.c
@@ -248,14 +248,14 @@ static MACHINE_DRIVER_START( mystston )
MDRV_CPU_PROGRAM_MAP(readmem, writemem)
MDRV_CPU_VBLANK_INT(mystston_interrupt, 272)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(((12000000.0 / 256.0) / 3.0) / 272.0)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(mystston)
MDRV_PALETTE_LENGTH(24+32)
diff --git a/src/mame/drivers/mystwarr.c b/src/mame/drivers/mystwarr.c
index e328238c830..5edffc184f7 100644
--- a/src/mame/drivers/mystwarr.c
+++ b/src/mame/drivers/mystwarr.c
@@ -939,18 +939,21 @@ static MACHINE_DRIVER_START( mystwarr )
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 480)
MDRV_INTERLEAVE(32)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
MDRV_NVRAM_HANDLER(mystwarr)
MDRV_MACHINE_START(mystwarr)
MDRV_MACHINE_RESET(mystwarr)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(24, 24+288-1, 16, 16+224-1)
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(mystwarr)
@@ -979,11 +982,13 @@ static MACHINE_DRIVER_START( viostorm )
MDRV_CPU_MODIFY("main")
MDRV_CPU_PROGRAM_MAP(vsreadmem,vswritemem)
MDRV_CPU_VBLANK_INT(metamrph_interrupt, 40)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(900))
/* video hardware */
MDRV_VIDEO_START(viostorm)
MDRV_VIDEO_UPDATE(metamrph)
+
+ MDRV_SCREEN_MODIFY("main")
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(900))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(40, 40+384-1, 16, 16+224-1)
MACHINE_DRIVER_END
@@ -997,11 +1002,13 @@ static MACHINE_DRIVER_START( metamrph )
MDRV_CPU_MODIFY("main")
MDRV_CPU_PROGRAM_MAP(mmreadmem,mmwritemem)
MDRV_CPU_VBLANK_INT(metamrph_interrupt, 40)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(900))
/* video hardware */
MDRV_VIDEO_START(metamrph)
MDRV_VIDEO_UPDATE(metamrph)
+
+ MDRV_SCREEN_MODIFY("main")
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(900))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(24, 24+288-1, 17, 17+224-1)
MACHINE_DRIVER_END
@@ -1015,13 +1022,15 @@ static MACHINE_DRIVER_START( dadandrn )
MDRV_CPU_MODIFY("main")
MDRV_CPU_PROGRAM_MAP(dddreadmem, dddwritemem)
MDRV_CPU_VBLANK_INT(ddd_interrupt, 1)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
MDRV_GFXDECODE(dadandrn)
/* video hardware */
MDRV_VIDEO_START(dadandrn)
MDRV_VIDEO_UPDATE(dadandrn)
+
+ MDRV_SCREEN_MODIFY("main")
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(24, 24+288-1, 17, 17+224-1)
MACHINE_DRIVER_END
@@ -1035,7 +1044,6 @@ static MACHINE_DRIVER_START( gaiapols )
MDRV_CPU_MODIFY("main")
MDRV_CPU_PROGRAM_MAP(gaiareadmem,gaiawritemem)
MDRV_CPU_VBLANK_INT(ddd_interrupt, 1)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
MDRV_GFXDECODE(gaiapols)
@@ -1044,6 +1052,9 @@ static MACHINE_DRIVER_START( gaiapols )
/* video hardware */
MDRV_VIDEO_START(gaiapols)
MDRV_VIDEO_UPDATE(dadandrn)
+
+ MDRV_SCREEN_MODIFY("main")
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(40, 40+376-1, 16, 16+224-1)
MACHINE_DRIVER_END
@@ -1057,13 +1068,15 @@ static MACHINE_DRIVER_START( martchmp )
MDRV_CPU_MODIFY("main")
MDRV_CPU_PROGRAM_MAP(mcreadmem,mcwritemem)
MDRV_CPU_VBLANK_INT(mchamp_interrupt, 2)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_BEFORE_VBLANK)
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_VIDEO_START(martchmp)
MDRV_VIDEO_UPDATE(martchmp)
+
+ MDRV_SCREEN_MODIFY("main")
+ MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(32, 32+384-1, 16, 16+224-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/n8080.c b/src/mame/drivers/n8080.c
index e5010b1382a..1c6a64b9794 100644
--- a/src/mame/drivers/n8080.c
+++ b/src/mame/drivers/n8080.c
@@ -80,13 +80,13 @@ static MACHINE_DRIVER_START( spacefev )
MDRV_CPU_IO_MAP(main_io_map, 0)
MDRV_CPU_VBLANK_INT(interrupt, 2)
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 16, 239)
+
MDRV_PALETTE_LENGTH(8)
MDRV_PALETTE_INIT(n8080)
MDRV_VIDEO_START(spacefev)
@@ -105,13 +105,13 @@ static MACHINE_DRIVER_START( sheriff )
MDRV_CPU_IO_MAP(main_io_map, 0)
MDRV_CPU_VBLANK_INT(interrupt, 2)
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 16, 239)
+
MDRV_PALETTE_LENGTH(8)
MDRV_PALETTE_INIT(n8080)
MDRV_VIDEO_START(sheriff)
@@ -130,13 +130,13 @@ static MACHINE_DRIVER_START( helifire )
MDRV_CPU_IO_MAP(main_io_map, 0)
MDRV_CPU_VBLANK_INT(interrupt, 2)
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 16, 239)
+
MDRV_PALETTE_LENGTH(8 + 0x400)
MDRV_PALETTE_INIT(helifire)
MDRV_VIDEO_START(helifire)
diff --git a/src/mame/drivers/namcofl.c b/src/mame/drivers/namcofl.c
index 9914d1eea3c..93946edf92d 100644
--- a/src/mame/drivers/namcofl.c
+++ b/src/mame/drivers/namcofl.c
@@ -355,16 +355,17 @@ static MACHINE_DRIVER_START( namcofl )
NAMCO_C7X_MCU_SHARED( 16384000 )
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_START(namcofl)
MDRV_MACHINE_RESET(namcofl)
MDRV_NVRAM_HANDLER(generic_1fill)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(NAMCONB1_HTOTAL, NAMCONB1_VTOTAL)
MDRV_SCREEN_VISIBLE_AREA(0, NAMCONB1_HBSTART-1, 0, NAMCONB1_VBSTART-1)
+
MDRV_PALETTE_LENGTH(8192)
MDRV_GFXDECODE(2)
diff --git a/src/mame/drivers/namcona1.c b/src/mame/drivers/namcona1.c
index 015931e41a3..016695ff104 100644
--- a/src/mame/drivers/namcona1.c
+++ b/src/mame/drivers/namcona1.c
@@ -1353,19 +1353,21 @@ static MACHINE_DRIVER_START( namcona1 )
MDRV_CPU_IO_MAP( namcona1_mcu_io_map, 0 )
MDRV_CPU_VBLANK_INT(mcu_interrupt, 2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(namcosna1)
MDRV_MACHINE_START(namcona1)
MDRV_MACHINE_RESET(namcona1_mcu)
MDRV_INTERLEAVE(40)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER|VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(38*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8, 38*8-1-8, 4*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x1000)
MDRV_VIDEO_START(namcona1)
@@ -1388,6 +1390,7 @@ static MACHINE_DRIVER_START( namcona1w )
MDRV_IMPORT_FROM(namcona1)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 38*8-1-0, 4*8, 32*8-1)
MACHINE_DRIVER_END
@@ -1444,17 +1447,19 @@ static MACHINE_DRIVER_START( namcona2 )
MDRV_CPU_PROGRAM_MAP(namcona2_readmem,namcona2_writemem)
MDRV_CPU_VBLANK_INT(namcona1_interrupt,5)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(namcosna1)
MDRV_INTERLEAVE(40)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER|VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(38*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8, 38*8-1-8, 4*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x1000)
MDRV_VIDEO_START(namcona1)
diff --git a/src/mame/drivers/namconb1.c b/src/mame/drivers/namconb1.c
index 74b36b4153a..e3d7723b95e 100644
--- a/src/mame/drivers/namconb1.c
+++ b/src/mame/drivers/namconb1.c
@@ -757,12 +757,15 @@ static MACHINE_DRIVER_START( namconb1 )
NAMCO_C7X_MCU(MASTER_CLOCK_HZ/3)
- MDRV_SCREEN_REFRESH_RATE(59.7)
MDRV_NVRAM_HANDLER(namconb1)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER|VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.7)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(NAMCONB1_HTOTAL, NAMCONB1_VTOTAL)
MDRV_SCREEN_VISIBLE_AREA(0, NAMCONB1_HBSTART-1, 0, NAMCONB1_VBSTART-1)
+
MDRV_GFXDECODE(namconb1)
MDRV_PALETTE_LENGTH(0x2000)
MDRV_VIDEO_START(namconb1)
@@ -778,12 +781,15 @@ static MACHINE_DRIVER_START( namconb2 )
NAMCO_C7X_MCU(MASTER_CLOCK_HZ/3)
- MDRV_SCREEN_REFRESH_RATE(59.7)
MDRV_NVRAM_HANDLER(namconb1)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER|VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.7)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(NAMCONB1_HTOTAL, NAMCONB1_VTOTAL)
MDRV_SCREEN_VISIBLE_AREA(0, NAMCONB1_HBSTART-1, 0, NAMCONB1_VBSTART-1)
+
MDRV_GFXDECODE(2)
MDRV_PALETTE_LENGTH(0x2000)
MDRV_VIDEO_START(namconb2)
diff --git a/src/mame/drivers/namcond1.c b/src/mame/drivers/namcond1.c
index b176222fb62..6c534c0490e 100644
--- a/src/mame/drivers/namcond1.c
+++ b/src/mame/drivers/namcond1.c
@@ -303,8 +303,6 @@ static MACHINE_DRIVER_START( namcond1 )
MDRV_CPU_IO_MAP( nd1h8iomap, 0 )
MDRV_CPU_VBLANK_INT( mcu_interrupt, 1 )
- MDRV_SCREEN_REFRESH_RATE(60.0)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
MDRV_MACHINE_START(namcond1)
@@ -312,10 +310,13 @@ static MACHINE_DRIVER_START( namcond1 )
MDRV_NVRAM_HANDLER(at28c16_0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.0)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(288, 224) // maximum display resolution (512x512 in theory)
MDRV_SCREEN_VISIBLE_AREA(0, 287, 0, 223) // default visible area
+
MDRV_GFXDECODE(namcond1)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/namcos1.c b/src/mame/drivers/namcos1.c
index e28163548af..879edbd6128 100644
--- a/src/mame/drivers/namcos1.c
+++ b/src/mame/drivers/namcos1.c
@@ -1013,8 +1013,6 @@ static MACHINE_DRIVER_START( ns1 )
MDRV_CPU_IO_MAP(mcu_port_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_assert,1)
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
// heavy sync required to prevent CPUs from fighting for video RAM access and going into deadlocks
MDRV_INTERLEAVE(640)
@@ -1022,10 +1020,15 @@ static MACHINE_DRIVER_START( ns1 )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(9 + 8*8, 9 + 44*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(namcos1)
MDRV_PALETTE_LENGTH(0x2000)
diff --git a/src/mame/drivers/namcos10.c b/src/mame/drivers/namcos10.c
index 4e99973263f..ac37ca851f8 100644
--- a/src/mame/drivers/namcos10.c
+++ b/src/mame/drivers/namcos10.c
@@ -381,16 +381,16 @@ static MACHINE_DRIVER_START( namcos10 )
MDRV_CPU_PROGRAM_MAP( namcos10_map, 0 )
MDRV_CPU_VBLANK_INT( psx_vblank, 1 )
- MDRV_SCREEN_REFRESH_RATE( 60 )
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET( namcos10 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES( VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( 60 )
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE( 1024, 1024 )
MDRV_SCREEN_VISIBLE_AREA( 0, 639, 0, 479 )
+
MDRV_PALETTE_LENGTH( 65536 )
MDRV_PALETTE_INIT( psx )
diff --git a/src/mame/drivers/namcos11.c b/src/mame/drivers/namcos11.c
index 8f005dfd8ab..b098cdad90b 100644
--- a/src/mame/drivers/namcos11.c
+++ b/src/mame/drivers/namcos11.c
@@ -879,17 +879,17 @@ static MACHINE_DRIVER_START( coh100 )
MDRV_CPU_PROGRAM_MAP( namcos11_map, 0 )
MDRV_CPU_VBLANK_INT( namcos11_vblank, 1 )
- MDRV_SCREEN_REFRESH_RATE( 60 )
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET( namcos11 )
MDRV_NVRAM_HANDLER( at28c16_0 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES( VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( 60 )
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE( 1024, 1024 )
MDRV_SCREEN_VISIBLE_AREA( 0, 639, 0, 479 )
+
MDRV_PALETTE_LENGTH( 65536 )
MDRV_PALETTE_INIT( psx )
diff --git a/src/mame/drivers/namcos12.c b/src/mame/drivers/namcos12.c
index 593f03dd110..45390421f1d 100644
--- a/src/mame/drivers/namcos12.c
+++ b/src/mame/drivers/namcos12.c
@@ -1483,17 +1483,17 @@ static MACHINE_DRIVER_START( coh700 )
MDRV_CPU_IO_MAP( s12h8iomap, 0 )
MDRV_CPU_VBLANK_INT( irq1_line_pulse, 1 )
- MDRV_SCREEN_REFRESH_RATE( 60 )
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET( namcos12 )
MDRV_NVRAM_HANDLER( at28c16_0 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES( VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( 60 )
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE( 1024, 1024 )
MDRV_SCREEN_VISIBLE_AREA( 0, 639, 0, 479 )
+
MDRV_PALETTE_LENGTH( 65536 )
MDRV_PALETTE_INIT( psx )
diff --git a/src/mame/drivers/namcos2.c b/src/mame/drivers/namcos2.c
index 178d0c6bafb..46c028952fd 100644
--- a/src/mame/drivers/namcos2.c
+++ b/src/mame/drivers/namcos2.c
@@ -1586,16 +1586,19 @@ static MACHINE_DRIVER_START( default )
MDRV_CPU_PROGRAM_MAP(readmem_mcu,writemem_mcu)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE( (49152000.0 / 8) / (384 * 264) )
MDRV_INTERLEAVE(100) /* CPU slices per frame */
MDRV_MACHINE_RESET(namcos2)
MDRV_NVRAM_HANDLER(namcos2)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( (49152000.0 / 8) / (384 * 264) )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 264)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(namcos2)
MDRV_PALETTE_LENGTH(0x2000)
@@ -1656,16 +1659,19 @@ static MACHINE_DRIVER_START( gollygho )
MDRV_CPU_PROGRAM_MAP(readmem_mcu,writemem_mcu)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE( (49152000.0 / 8) / (384 * 264) )
MDRV_INTERLEAVE(100) /* CPU slices per frame */
MDRV_MACHINE_RESET(namcos2)
MDRV_NVRAM_HANDLER(namcos2)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( (49152000.0 / 8) / (384 * 264) )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 264)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(namcos2)
MDRV_PALETTE_LENGTH(0x2000)
@@ -1702,16 +1708,19 @@ static MACHINE_DRIVER_START( finallap )
MDRV_CPU_PROGRAM_MAP(readmem_mcu,writemem_mcu)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE( (49152000.0 / 8) / (384 * 264) )
MDRV_INTERLEAVE(100) /* CPU slices per frame */
MDRV_MACHINE_RESET(namcos2)
MDRV_NVRAM_HANDLER(namcos2)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( (49152000.0 / 8) / (384 * 264) )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 264)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(finallap)
MDRV_PALETTE_LENGTH(0x2000)
@@ -1748,16 +1757,19 @@ static MACHINE_DRIVER_START( sgunner )
MDRV_CPU_PROGRAM_MAP(readmem_mcu,writemem_mcu)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE( (49152000.0 / 8) / (384 * 264) )
MDRV_INTERLEAVE(100) /* CPU slices per frame */
MDRV_MACHINE_RESET(namcos2)
MDRV_NVRAM_HANDLER(namcos2)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( (49152000.0 / 8) / (384 * 264) )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 264)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(sgunner)
MDRV_PALETTE_LENGTH(0x2000)
@@ -1794,16 +1806,19 @@ static MACHINE_DRIVER_START( luckywld )
MDRV_CPU_PROGRAM_MAP(readmem_mcu,writemem_mcu)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE( (49152000.0 / 8) / (384 * 264) )
MDRV_INTERLEAVE(100) /* CPU slices per frame */
MDRV_MACHINE_RESET(namcos2)
MDRV_NVRAM_HANDLER(namcos2)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( (49152000.0 / 8) / (384 * 264) )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 264)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(luckywld)
MDRV_PALETTE_LENGTH(0x2000)
@@ -1840,16 +1855,19 @@ static MACHINE_DRIVER_START( metlhawk )
MDRV_CPU_PROGRAM_MAP(readmem_mcu,writemem_mcu)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE( (49152000.0 / 8) / (384 * 264) )
MDRV_INTERLEAVE(100) /* CPU slices per frame */
MDRV_MACHINE_RESET(namcos2)
MDRV_NVRAM_HANDLER(namcos2)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( (49152000.0 / 8) / (384 * 264) )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 264)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(metlhawk)
MDRV_PALETTE_LENGTH(0x2000)
diff --git a/src/mame/drivers/namcos21.c b/src/mame/drivers/namcos21.c
index e9da947d848..04c913d2849 100644
--- a/src/mame/drivers/namcos21.c
+++ b/src/mame/drivers/namcos21.c
@@ -1543,14 +1543,15 @@ static MACHINE_DRIVER_START( s21base )
MDRV_CPU_DATA_MAP(slave_dsp_data,0)
MDRV_CPU_IO_MAP(slave_dsp_io,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(200)
MDRV_MACHINE_RESET(namcos2)
MDRV_NVRAM_HANDLER(namcos2)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(NAMCOS21_POLY_FRAME_WIDTH,NAMCOS21_POLY_FRAME_HEIGHT)
MDRV_SCREEN_VISIBLE_AREA(0,495,0,479)
@@ -1615,14 +1616,15 @@ static MACHINE_DRIVER_START( driveyes )
MDRV_CPU_DATA_MAP(winrun_dsp_data,0)
MDRV_CPU_IO_MAP(winrun_dsp_io,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame */
MDRV_MACHINE_RESET(namcos2)
MDRV_NVRAM_HANDLER(namcos2)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(NAMCOS21_POLY_FRAME_WIDTH,NAMCOS21_POLY_FRAME_HEIGHT)
MDRV_SCREEN_VISIBLE_AREA(0,495,0,479)
@@ -1672,14 +1674,15 @@ static MACHINE_DRIVER_START( winrun_c140_typeB )
MDRV_CPU_PROGRAM_MAP(am_gpu_winrun,0)
MDRV_CPU_VBLANK_INT(namcos2_68k_gpu_vblank,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame */
MDRV_MACHINE_RESET(namcos2)
MDRV_NVRAM_HANDLER(namcos2)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(NAMCOS21_POLY_FRAME_WIDTH,NAMCOS21_POLY_FRAME_HEIGHT)
MDRV_SCREEN_VISIBLE_AREA(0,495,0,479)
diff --git a/src/mame/drivers/namcos22.c b/src/mame/drivers/namcos22.c
index f22034707fd..fbbda14e8b9 100644
--- a/src/mame/drivers/namcos22.c
+++ b/src/mame/drivers/namcos22.c
@@ -1825,13 +1825,14 @@ static MACHINE_DRIVER_START( namcos22s )
MDRV_CPU_IO_MAP( mcu_io, 0 )
MDRV_CPU_VBLANK_INT(mcu_interrupt, 3)
+ MDRV_NVRAM_HANDLER(namcos22)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
- MDRV_NVRAM_HANDLER(namcos22)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(NAMCOS22_NUM_COLS*16,NAMCOS22_NUM_ROWS*16)
MDRV_SCREEN_VISIBLE_AREA(0,NAMCOS22_NUM_COLS*16-1,0,NAMCOS22_NUM_ROWS*16-1)
+
MDRV_PALETTE_LENGTH(NAMCOS22_PALETTE_SIZE)
MDRV_GFXDECODE(super)
MDRV_VIDEO_START(namcos22s)
@@ -2238,13 +2239,14 @@ static MACHINE_DRIVER_START( namcos22 )
MDRV_CPU_PROGRAM_MAP( mcu_s22_program, 0 )
MDRV_CPU_IO_MAP( mcu_s22_io, 0 )
+ MDRV_NVRAM_HANDLER(namcos22)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
- MDRV_NVRAM_HANDLER(namcos22)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(NAMCOS22_NUM_COLS*16,NAMCOS22_NUM_ROWS*16)
MDRV_SCREEN_VISIBLE_AREA(0,NAMCOS22_NUM_COLS*16-1,0,NAMCOS22_NUM_ROWS*16-1)
+
MDRV_PALETTE_LENGTH(NAMCOS22_PALETTE_SIZE)
MDRV_GFXDECODE(namcos22)
MDRV_VIDEO_START(namcos22)
diff --git a/src/mame/drivers/namcos23.c b/src/mame/drivers/namcos23.c
index 2ae191379f7..b61e424079e 100644
--- a/src/mame/drivers/namcos23.c
+++ b/src/mame/drivers/namcos23.c
@@ -863,13 +863,14 @@ static MACHINE_DRIVER_START( s23 )
MDRV_CPU_IO_MAP( s23h8iomap, 0 )
MDRV_CPU_VBLANK_INT( irq1_line_pulse, 1 )
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16, 30*16)
MDRV_SCREEN_VISIBLE_AREA(0, 64*16-1, 0, 30*16-1)
+
MDRV_PALETTE_LENGTH(0x8000)
MDRV_GFXDECODE(namcos23)
@@ -901,13 +902,14 @@ static MACHINE_DRIVER_START( ss23 )
MDRV_CPU_IO_MAP( s23h8iomap, 0 )
MDRV_CPU_VBLANK_INT( irq1_line_pulse, 1 )
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(48*16, 30*16)
MDRV_SCREEN_VISIBLE_AREA(0, 48*16-1, 0, 30*16-1)
+
MDRV_PALETTE_LENGTH(0x8000)
MDRV_GFXDECODE(namcos23)
diff --git a/src/mame/drivers/namcos86.c b/src/mame/drivers/namcos86.c
index fb69b534293..772889c29c0 100644
--- a/src/mame/drivers/namcos86.c
+++ b/src/mame/drivers/namcos86.c
@@ -1077,17 +1077,18 @@ static MACHINE_DRIVER_START( hopmappy )
MDRV_CPU_IO_MAP(mcu_port_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1) /* ??? */
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(800) /* heavy interleaving needed to avoid hangs in rthunder */
MDRV_MACHINE_RESET(namco86)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(3 + 8*8, 3 + 44*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(namcos86)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/naomi.c b/src/mame/drivers/naomi.c
index 16a9c4190b9..f5e9a486764 100644
--- a/src/mame/drivers/naomi.c
+++ b/src/mame/drivers/naomi.c
@@ -782,16 +782,16 @@ static MACHINE_DRIVER_START( naomi )
MDRV_MACHINE_START( dc )
MDRV_MACHINE_RESET( naomi )
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(naomi_eeproms)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(640, 480)
MDRV_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
+
MDRV_PALETTE_LENGTH(0x1000)
MDRV_VIDEO_START(dc)
diff --git a/src/mame/drivers/naughtyb.c b/src/mame/drivers/naughtyb.c
index f66c0b8a438..ab321395452 100644
--- a/src/mame/drivers/naughtyb.c
+++ b/src/mame/drivers/naughtyb.c
@@ -383,14 +383,14 @@ static MACHINE_DRIVER_START( naughtyb )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(naughtyb_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(naughtyb)
MDRV_PALETTE_LENGTH(256)
@@ -420,14 +420,14 @@ static MACHINE_DRIVER_START( popflame )
MDRV_CPU_PROGRAM_MAP(readmem,popflame_writemem)
MDRV_CPU_VBLANK_INT(naughtyb_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(naughtyb)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/nbmj8688.c b/src/mame/drivers/nbmj8688.c
index 46745f695a6..1ccbf47511f 100644
--- a/src/mame/drivers/nbmj8688.c
+++ b/src/mame/drivers/nbmj8688.c
@@ -3140,17 +3140,17 @@ static MACHINE_DRIVER_START( NBMJDRV_4096 )
MDRV_CPU_ADD_TAG("main", Z80, 5000000) /* 5.00 MHz */
MDRV_CPU_VBLANK_INT(nb1413m3_interrupt, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(nb1413m3)
MDRV_NVRAM_HANDLER(nb1413m3)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
+
MDRV_PALETTE_LENGTH(4096)
MDRV_PALETTE_INIT(mbmj8688_12bit)
@@ -3188,7 +3188,7 @@ static MACHINE_DRIVER_START( NBMJDRV_65536 )
MDRV_IMPORT_FROM(NBMJDRV_4096)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_PALETTE_LENGTH(65536)
@@ -3261,26 +3261,25 @@ static MACHINE_DRIVER_START( mbmj_p16bit_LCD )
MDRV_NVRAM_HANDLER(nb1413m3)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(65536)
MDRV_PALETTE_INIT(mbmj8688_16bit)
MDRV_DEFAULT_LAYOUT(layout_nbmj8688)
- MDRV_SCREEN_ADD("main", 0x000)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
- MDRV_SCREEN_ADD("LCD0", 0x000)
+ MDRV_SCREEN_ADD("LCD0", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(480, 64)
MDRV_SCREEN_VISIBLE_AREA(0, 480-1, 0, 64-1)
- MDRV_SCREEN_ADD("LCD1", 0x000)
+ MDRV_SCREEN_ADD("LCD1", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/nbmj8891.c b/src/mame/drivers/nbmj8891.c
index e3128e54bb2..8a82dfa83b6 100644
--- a/src/mame/drivers/nbmj8891.c
+++ b/src/mame/drivers/nbmj8891.c
@@ -3031,16 +3031,16 @@ static MACHINE_DRIVER_START( gionbana )
// MDRV_CPU_VBLANK_INT(nb1413m3_interrupt, 132) // nmiclock = 60
MDRV_CPU_VBLANK_INT(nb1413m3_interrupt, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(nb1413m3)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 8, 248-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(nbmj8891_2layer)
@@ -3098,6 +3098,7 @@ static MACHINE_DRIVER_START( mjcamerb )
MDRV_NVRAM_HANDLER(nb1413m3)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
MDRV_VIDEO_START(nbmj8891_1layer)
MACHINE_DRIVER_END
@@ -3113,6 +3114,7 @@ static MACHINE_DRIVER_START( mmcamera )
MDRV_NVRAM_HANDLER(nb1413m3)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
MDRV_VIDEO_START(nbmj8891_1layer)
MACHINE_DRIVER_END
@@ -3127,6 +3129,7 @@ static MACHINE_DRIVER_START( hanamomo )
// MDRV_CPU_VBLANK_INT(nb1413m3_interrupt, 128)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
MDRV_VIDEO_START(nbmj8891_1layer)
MACHINE_DRIVER_END
@@ -3266,6 +3269,7 @@ static MACHINE_DRIVER_START( mjfocusm )
MDRV_NVRAM_HANDLER(nb1413m3)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
MDRV_VIDEO_START(nbmj8891_1layer)
@@ -3288,6 +3292,7 @@ static MACHINE_DRIVER_START( taiwanmb )
MDRV_NVRAM_HANDLER(nb1413m3)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 16, 240-1)
MDRV_VIDEO_START(nbmj8891_1layer)
diff --git a/src/mame/drivers/nbmj8991.c b/src/mame/drivers/nbmj8991.c
index a987bf1b890..b4669df4b41 100644
--- a/src/mame/drivers/nbmj8991.c
+++ b/src/mame/drivers/nbmj8991.c
@@ -1762,15 +1762,16 @@ static MACHINE_DRIVER_START( nbmjdrv1 ) // galkoku
// MDRV_CPU_VBLANK_INT(nb1413m3_interrupt, 128)
MDRV_CPU_VBLANK_INT(nb1413m3_interrupt, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(nbmj8991)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(1024, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 640-1, 0, 240-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(nbmj8991)
@@ -1800,15 +1801,16 @@ static MACHINE_DRIVER_START( nbmjdrv2 ) // pstadium
MDRV_CPU_IO_MAP(sound_readport_nbmj8991, sound_writeport_nbmj8991)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 128)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(nbmj8991)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(1024, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 640-1, 0, 240-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(nbmj8991)
diff --git a/src/mame/drivers/nbmj9195.c b/src/mame/drivers/nbmj9195.c
index 1dd6f0ff09c..24ffa79bc2b 100644
--- a/src/mame/drivers/nbmj9195.c
+++ b/src/mame/drivers/nbmj9195.c
@@ -4147,15 +4147,17 @@ static MACHINE_DRIVER_START( NBMJDRV1 )
MDRV_CPU_PROGRAM_MAP(sound_readmem, sound_writemem)
MDRV_CPU_IO_MAP(sound_readport, sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(sailorws)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(1024, 512) /* no way this is correct */
MDRV_SCREEN_VISIBLE_AREA(0, 640-1, 0, 240-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(nbmj9195_2layer)
diff --git a/src/mame/drivers/nemesis.c b/src/mame/drivers/nemesis.c
index 34f843164ae..0e6d365062c 100644
--- a/src/mame/drivers/nemesis.c
+++ b/src/mame/drivers/nemesis.c
@@ -2155,16 +2155,16 @@ static MACHINE_DRIVER_START( nemesis )
/* audio CPU */ /* From schematics, should be accurate */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem) /* fixed */
- MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* ??? */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(nemesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* ??? */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(nemesis)
MDRV_PALETTE_LENGTH(2048)
@@ -2203,16 +2203,16 @@ static MACHINE_DRIVER_START( konamigt )
/* audio CPU */ /* 3.579545 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(nemesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(nemesis)
MDRV_PALETTE_LENGTH(2048)
@@ -2247,16 +2247,18 @@ static MACHINE_DRIVER_START( salamand )
/* audio CPU */ /* 3.579545 MHz */
MDRV_CPU_PROGRAM_MAP(sal_sound_readmem,sal_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC((264-256)*125/2))
-
MDRV_MACHINE_RESET(nemesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC((264-256)*125/2))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(nemesis)
MDRV_PALETTE_LENGTH(2048)
@@ -2296,16 +2298,18 @@ static MACHINE_DRIVER_START( blkpnthr )
/* audio CPU */ /* 3.579545 MHz */
MDRV_CPU_PROGRAM_MAP(sal_sound_readmem,sal_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(nemesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(nemesis)
MDRV_PALETTE_LENGTH(2048)
@@ -2340,16 +2344,18 @@ static MACHINE_DRIVER_START( citybomb )
/* audio CPU */ /* 3.579545 MHz */
MDRV_CPU_PROGRAM_MAP(city_sound_readmem,city_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(nemesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(nemesis)
MDRV_PALETTE_LENGTH(2048)
@@ -2388,16 +2394,18 @@ static MACHINE_DRIVER_START( nyanpani )
/* audio CPU */ /* 3.579545 MHz */
MDRV_CPU_PROGRAM_MAP(city_sound_readmem,city_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(nemesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(nemesis)
MDRV_PALETTE_LENGTH(2048)
@@ -2436,16 +2444,16 @@ static MACHINE_DRIVER_START( gx400 )
MDRV_CPU_PROGRAM_MAP(gx400_sound_readmem,gx400_sound_writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1) /* interrupts are triggered by the main CPU */
- MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(nemesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(nemesis)
MDRV_PALETTE_LENGTH(2048)
@@ -2485,16 +2493,16 @@ static MACHINE_DRIVER_START( rf2_gx400 )
MDRV_CPU_PROGRAM_MAP(gx400_sound_readmem,gx400_sound_writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1) /* interrupts are triggered by the main CPU */
- MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(nemesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(nemesis)
MDRV_PALETTE_LENGTH(2048)
@@ -2532,16 +2540,16 @@ static MACHINE_DRIVER_START( hcrash )
/* audio CPU */ /* 3.579545 MHz */
MDRV_CPU_PROGRAM_MAP(sal_sound_readmem,sal_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(nemesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE((18432000.0/4)/(288*264)) /* 60.606060 Hz */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(nemesis)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/neogeo.c b/src/mame/drivers/neogeo.c
index 7451528244a..21c9409e9d2 100644
--- a/src/mame/drivers/neogeo.c
+++ b/src/mame/drivers/neogeo.c
@@ -1241,13 +1241,12 @@ static MACHINE_DRIVER_START( neogeo )
MDRV_MEMCARD_HANDLER(neogeo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(neogeo)
MDRV_VIDEO_RESET(neogeo)
MDRV_VIDEO_UPDATE(neogeo)
MDRV_DEFAULT_LAYOUT(layout_neogeo)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(NEOGEO_PIXEL_CLOCK, NEOGEO_HTOTAL, NEOGEO_HBEND, NEOGEO_HBSTART, NEOGEO_VTOTAL, NEOGEO_VBEND, NEOGEO_VBSTART)
diff --git a/src/mame/drivers/news.c b/src/mame/drivers/news.c
index 9311ffe21e0..a50cc653526 100644
--- a/src/mame/drivers/news.c
+++ b/src/mame/drivers/news.c
@@ -125,14 +125,14 @@ static MACHINE_DRIVER_START( news )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
+
MDRV_GFXDECODE(news)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/ninjakd2.c b/src/mame/drivers/ninjakd2.c
index 0bfc4439078..e83178d9b70 100644
--- a/src/mame/drivers/ninjakd2.c
+++ b/src/mame/drivers/ninjakd2.c
@@ -934,11 +934,12 @@ static MACHINE_DRIVER_START( ninjakd2 )
MDRV_MACHINE_RESET(ninjakd2)
/* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
+
MDRV_GFXDECODE(ninjakd2)
MDRV_PALETTE_LENGTH(0x300)
diff --git a/src/mame/drivers/ninjaw.c b/src/mame/drivers/ninjaw.c
index bed63f9f7c4..4f29b9588b3 100644
--- a/src/mame/drivers/ninjaw.c
+++ b/src/mame/drivers/ninjaw.c
@@ -641,26 +641,25 @@ static MACHINE_DRIVER_START( ninjaw )
MDRV_MACHINE_RESET(ninjaw)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(ninjaw)
MDRV_PALETTE_LENGTH(4096*3)
MDRV_DEFAULT_LAYOUT(layout_darius)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 3*8, 31*8-1)
- MDRV_SCREEN_ADD("middle", 0x000)
+ MDRV_SCREEN_ADD("middle", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 3*8, 31*8-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
@@ -716,26 +715,25 @@ static MACHINE_DRIVER_START( darius2 )
MDRV_MACHINE_RESET(ninjaw)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(ninjaw)
MDRV_PALETTE_LENGTH(4096*3)
MDRV_DEFAULT_LAYOUT(layout_darius)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 3*8, 31*8-1)
- MDRV_SCREEN_ADD("middle", 0x000)
+ MDRV_SCREEN_ADD("middle", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 3*8, 31*8-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/nitedrvr.c b/src/mame/drivers/nitedrvr.c
index cc270b81cef..9966e2ad1e2 100644
--- a/src/mame/drivers/nitedrvr.c
+++ b/src/mame/drivers/nitedrvr.c
@@ -167,16 +167,17 @@ static MACHINE_DRIVER_START( nitedrvr )
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
MDRV_WATCHDOG_VBLANK_INIT(3)
- MDRV_SCREEN_REFRESH_RATE(57) // how is this derived?
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(nitedrvr)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(57) // how is this derived?
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(nitedrvr)
MDRV_PALETTE_LENGTH(2)
diff --git a/src/mame/drivers/niyanpai.c b/src/mame/drivers/niyanpai.c
index 46efabdaad3..70f38eba9e4 100644
--- a/src/mame/drivers/niyanpai.c
+++ b/src/mame/drivers/niyanpai.c
@@ -860,17 +860,17 @@ static MACHINE_DRIVER_START( niyanpai )
MDRV_CPU_PROGRAM_MAP(sound_readmem, sound_writemem)
MDRV_CPU_IO_MAP(sound_readport, sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(niyanpai)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(1024, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 640-1, 0, 240-1)
+
MDRV_PALETTE_LENGTH(768)
MDRV_VIDEO_START(niyanpai)
diff --git a/src/mame/drivers/nmg5.c b/src/mame/drivers/nmg5.c
index e49aefd51c3..b15eefc39f4 100644
--- a/src/mame/drivers/nmg5.c
+++ b/src/mame/drivers/nmg5.c
@@ -992,17 +992,17 @@ static MACHINE_DRIVER_START( nmg5 )
MDRV_CPU_PROGRAM_MAP(nmg5_sound_map,0)
MDRV_CPU_IO_MAP(sound_io_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(nmg5)
MDRV_MACHINE_RESET(nmg5)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(nmg5)
MDRV_PALETTE_LENGTH(0x400)
@@ -1050,6 +1050,7 @@ static MACHINE_DRIVER_START( searchp2 )
/* basic machine hardware */
MDRV_IMPORT_FROM(nmg5)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_REFRESH_RATE(55) // !
MDRV_GFXDECODE(pclubys)
diff --git a/src/mame/drivers/nmk16.c b/src/mame/drivers/nmk16.c
index d4ab7c3671f..bc2cfeba7d6 100644
--- a/src/mame/drivers/nmk16.c
+++ b/src/mame/drivers/nmk16.c
@@ -3708,7 +3708,7 @@ static MACHINE_DRIVER_START( tharrier )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(56)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -3754,14 +3754,14 @@ static MACHINE_DRIVER_START( manybloc )
MDRV_CPU_PROGRAM_MAP(tharrier_sound_readmem,tharrier_sound_writemem)
MDRV_CPU_IO_MAP(tharrier_sound_readport,tharrier_sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(56)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tharrier)
MDRV_PALETTE_LENGTH(512)
@@ -3796,15 +3796,16 @@ static MACHINE_DRIVER_START( mustang )
MDRV_CPU_VBLANK_INT(nmk_interrupt,2)
MDRV_CPU_PERIODIC_INT(irq1_line_hold,112)/* ???????? */
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(NMK004)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross)
MDRV_PALETTE_LENGTH(1024)
@@ -3842,15 +3843,16 @@ static MACHINE_DRIVER_START( mustangb )
SEIBU_SOUND_SYSTEM_CPU(14318180/4)
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(mustang_sound)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross)
MDRV_PALETTE_LENGTH(1024)
@@ -3921,15 +3923,16 @@ static MACHINE_DRIVER_START( bioship )
MDRV_CPU_VBLANK_INT(nmk_interrupt,2)
MDRV_CPU_PERIODIC_INT(irq1_line_hold,112)/* ???????? */
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(NMK004)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(bioship)
MDRV_PALETTE_LENGTH(1024)
@@ -3964,15 +3967,16 @@ static MACHINE_DRIVER_START( vandyke )
MDRV_CPU_VBLANK_INT(nmk_interrupt,2)
MDRV_CPU_PERIODIC_INT(irq1_line_hold,112)/* ???????? */
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(NMK004)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross)
MDRV_PALETTE_LENGTH(1024)
@@ -4010,15 +4014,16 @@ static MACHINE_DRIVER_START( vandykeb )
MDRV_CPU_ADD(PIC16C57, 12000000) /* 3MHz */
MDRV_CPU_FLAGS(CPU_DISABLE)
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
//MDRV_MACHINE_RESET(NMK004) // no NMK004
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross)
MDRV_PALETTE_LENGTH(1024)
@@ -4042,15 +4047,16 @@ static MACHINE_DRIVER_START( acrobatm )
MDRV_CPU_VBLANK_INT(nmk_interrupt,2)
MDRV_CPU_PERIODIC_INT(irq1_line_hold,112)/* ???????? */
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(NMK004)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross)
MDRV_PALETTE_LENGTH(1024)
@@ -4090,15 +4096,16 @@ static MACHINE_DRIVER_START( tdragonb )
SEIBU_SOUND_SYSTEM_CPU(14318180/4)
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(mustang_sound)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross)
MDRV_PALETTE_LENGTH(1024)
@@ -4119,15 +4126,16 @@ static MACHINE_DRIVER_START( tdragon )
//MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
MDRV_CPU_PERIODIC_INT(irq1_line_hold,112)/* ?? drives music */
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(NMK004)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross)
MDRV_PALETTE_LENGTH(1024)
@@ -4165,15 +4173,16 @@ static MACHINE_DRIVER_START( ssmissin )
MDRV_CPU_ADD(Z80, 8000000/2) /* 4 Mhz */
MDRV_CPU_PROGRAM_MAP(ssmissin_sound_readmem,ssmissin_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(nmk16)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross)
MDRV_PALETTE_LENGTH(1024)
@@ -4198,15 +4207,16 @@ static MACHINE_DRIVER_START( strahl )
MDRV_CPU_VBLANK_INT(nmk_interrupt,2)
MDRV_CPU_PERIODIC_INT(irq1_line_hold,112)/* ???????? */
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(NMK004)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(strahl)
MDRV_PALETTE_LENGTH(1024)
@@ -4242,15 +4252,16 @@ static MACHINE_DRIVER_START( hachamf )
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
MDRV_CPU_PERIODIC_INT(irq1_line_hold,112)/* ???????? */
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(NMK004)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross)
MDRV_PALETTE_LENGTH(1024)
@@ -4286,15 +4297,16 @@ static MACHINE_DRIVER_START( macross )
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
MDRV_CPU_PERIODIC_INT(irq1_line_hold,112)/* ???????? */
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(NMK004)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross)
MDRV_PALETTE_LENGTH(1024)
@@ -4330,15 +4342,16 @@ static MACHINE_DRIVER_START( gunnail )
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
MDRV_CPU_PERIODIC_INT(irq1_line_hold,112)
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(NMK004)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross)
MDRV_PALETTE_LENGTH(1024)
@@ -4379,15 +4392,16 @@ static MACHINE_DRIVER_START( macross2 )
MDRV_CPU_PROGRAM_MAP(macross2_sound_readmem,macross2_sound_writemem)
MDRV_CPU_IO_MAP(macross2_sound_readport,macross2_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(nmk16)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross2)
MDRV_PALETTE_LENGTH(1024)
@@ -4424,15 +4438,16 @@ static MACHINE_DRIVER_START( tdragon2 )
MDRV_CPU_PROGRAM_MAP(macross2_sound_readmem,macross2_sound_writemem)
MDRV_CPU_IO_MAP(macross2_sound_readport,macross2_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(nmk16)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross2)
MDRV_PALETTE_LENGTH(1024)
@@ -4467,15 +4482,16 @@ static MACHINE_DRIVER_START( raphero )
MDRV_CPU_ADD_TAG("sound",TMP90841, 8000000)
MDRV_CPU_PROGRAM_MAP(raphero_sound_mem_map,0)
- MDRV_SCREEN_REFRESH_RATE(56) // measured
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(nmk16)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56) // measured
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross2)
MDRV_PALETTE_LENGTH(1024)
@@ -4507,15 +4523,16 @@ static MACHINE_DRIVER_START( bjtwin )
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
MDRV_CPU_PERIODIC_INT(irq1_line_hold,112)/* ?? drives music */
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(nmk16)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(bjtwin)
MDRV_PALETTE_LENGTH(1024)
@@ -5013,7 +5030,7 @@ static MACHINE_DRIVER_START( stagger1 )
MDRV_CPU_PROGRAM_MAP(afega_sound_cpu,0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(56)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -5081,7 +5098,7 @@ static MACHINE_DRIVER_START( firehawk )
MDRV_CPU_PROGRAM_MAP(firehawk_sound_cpu,0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(56)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
@@ -5120,14 +5137,14 @@ static MACHINE_DRIVER_START( twinactn )
MDRV_CPU_ADD(Z80, 4000000)
MDRV_CPU_PROGRAM_MAP(twinactn_sound_cpu,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(56)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(macross)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/nova2001.c b/src/mame/drivers/nova2001.c
index 6af9a9f8d7d..795765cb769 100644
--- a/src/mame/drivers/nova2001.c
+++ b/src/mame/drivers/nova2001.c
@@ -692,11 +692,12 @@ static MACHINE_DRIVER_START( nova2001 )
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
/* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
+
MDRV_GFXDECODE(nova2001)
MDRV_PALETTE_LENGTH(0x200)
@@ -732,11 +733,13 @@ static MACHINE_DRIVER_START( ninjakun )
MDRV_MACHINE_START(ninjakun)
/* video hardware */
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1 )
+
MDRV_GFXDECODE(ninjakun)
MDRV_PALETTE_LENGTH(0x300)
@@ -764,11 +767,12 @@ static MACHINE_DRIVER_START( pkunwar )
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
/* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
+
MDRV_GFXDECODE(pkunwar)
MDRV_PALETTE_LENGTH(0x200)
@@ -803,11 +807,12 @@ static MACHINE_DRIVER_START( raiders5 )
MDRV_INTERLEAVE(400)
/* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
+
MDRV_GFXDECODE(raiders5)
MDRV_PALETTE_LENGTH(0x300)
diff --git a/src/mame/drivers/nss.c b/src/mame/drivers/nss.c
index 074e91b3f62..925ba8be441 100644
--- a/src/mame/drivers/nss.c
+++ b/src/mame/drivers/nss.c
@@ -464,9 +464,8 @@ static MACHINE_DRIVER_START( snes )
/* video hardware */
MDRV_VIDEO_UPDATE( snes )
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(DOTCLK_NTSC, SNES_HTOTAL, 0, SNES_SCR_WIDTH, SNES_VTOTAL_NTSC, 0, SNES_SCR_HEIGHT_NTSC)
diff --git a/src/mame/drivers/nwk-tr.c b/src/mame/drivers/nwk-tr.c
index 3bd2eb884ac..b2f9a09d420 100644
--- a/src/mame/drivers/nwk-tr.c
+++ b/src/mame/drivers/nwk-tr.c
@@ -910,17 +910,18 @@ static MACHINE_DRIVER_START( nwktr )
MDRV_CPU_CONFIG(sharc_cfg)
MDRV_CPU_DATA_MAP(sharc_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(nwktr)
MDRV_NVRAM_HANDLER( timekeeper_0 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(512, 384)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 0, 383)
+
MDRV_PALETTE_LENGTH(65536)
MDRV_VIDEO_START(nwktr)
diff --git a/src/mame/drivers/nycaptor.c b/src/mame/drivers/nycaptor.c
index 17c817e91d0..bc0b336d395 100644
--- a/src/mame/drivers/nycaptor.c
+++ b/src/mame/drivers/nycaptor.c
@@ -814,18 +814,19 @@ static MACHINE_DRIVER_START( nycaptor )
MDRV_CPU_ADD(M68705,2000000)
MDRV_CPU_PROGRAM_MAP(m68705_readmem,m68705_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
MDRV_MACHINE_RESET(ta7630)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(nycaptor)
MDRV_PALETTE_LENGTH(512)
@@ -868,14 +869,16 @@ static MACHINE_DRIVER_START( cyclshtg )
MDRV_CPU_PROGRAM_MAP(m68705_readmem,m68705_writemem)
#endif
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(1)
MDRV_MACHINE_RESET(ta7630)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(nycaptor)
MDRV_PALETTE_LENGTH(512)
@@ -915,14 +918,16 @@ static MACHINE_DRIVER_START( bronx )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(2)
MDRV_MACHINE_RESET(ta7630)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(nycaptor)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/nyny.c b/src/mame/drivers/nyny.c
index 7bc791f0cd1..c42e875e357 100644
--- a/src/mame/drivers/nyny.c
+++ b/src/mame/drivers/nyny.c
@@ -691,15 +691,14 @@ static MACHINE_DRIVER_START( nyny )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(nyny)
MDRV_VIDEO_UPDATE(nyny)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 256, 0, 256, 256, 0, 256) /* temporary, CRTC will configure screen */
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
MDRV_DEVICE_CONFIG(mc6845_intf)
/* audio hardware */
diff --git a/src/mame/drivers/offtwall.c b/src/mame/drivers/offtwall.c
index b4e3f1151b3..815f867c16b 100644
--- a/src/mame/drivers/offtwall.c
+++ b/src/mame/drivers/offtwall.c
@@ -397,11 +397,11 @@ static MACHINE_DRIVER_START( offtwall )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(offtwall)
MDRV_PALETTE_LENGTH(2048)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses a VAD chip to generate video signals */
diff --git a/src/mame/drivers/ohmygod.c b/src/mame/drivers/ohmygod.c
index dcf7ebc3853..22828eb2823 100644
--- a/src/mame/drivers/ohmygod.c
+++ b/src/mame/drivers/ohmygod.c
@@ -334,17 +334,17 @@ static MACHINE_DRIVER_START( ohmygod )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(ohmygod)
MDRV_WATCHDOG_TIME_INIT(ATTOTIME_IN_SEC(3)) /* a guess, and certainly wrong */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 0*8, 30*8-1 )
+
MDRV_GFXDECODE(ohmygod)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/ojankohs.c b/src/mame/drivers/ojankohs.c
index a3a3c4c4828..17cb549d355 100644
--- a/src/mame/drivers/ojankohs.c
+++ b/src/mame/drivers/ojankohs.c
@@ -958,17 +958,17 @@ static MACHINE_DRIVER_START( ojankohs )
MDRV_CPU_IO_MAP(readport_ojankohs,writeport_ojankohs)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(ojankohs)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 288-1, 0, 224-1)
+
MDRV_GFXDECODE(ojankohs)
MDRV_PALETTE_LENGTH(1024)
@@ -995,17 +995,17 @@ static MACHINE_DRIVER_START( ojankoy )
MDRV_CPU_IO_MAP(readport_ojankohs,writeport_ojankoy)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(ojankohs)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 288-1, 0, 224-1)
+
MDRV_GFXDECODE(ojankohs)
MDRV_PALETTE_LENGTH(1024)
MDRV_PALETTE_INIT(ojankoy)
@@ -1033,17 +1033,17 @@ static MACHINE_DRIVER_START( ccasino )
MDRV_CPU_IO_MAP(readport_ccasino,writeport_ccasino)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(ojankohs)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 288-1, 0, 224-1)
+
MDRV_GFXDECODE(ojankohs)
MDRV_PALETTE_LENGTH(1024)
@@ -1070,17 +1070,17 @@ static MACHINE_DRIVER_START( ojankoc )
MDRV_CPU_IO_MAP(readport_ojankoc,writeport_ojankoc)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(ojankohs)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 8, 248-1)
+
MDRV_PALETTE_LENGTH(16)
MDRV_VIDEO_START(ojankoc)
diff --git a/src/mame/drivers/olibochu.c b/src/mame/drivers/olibochu.c
index 98c84e45d68..a6f8ecd3352 100644
--- a/src/mame/drivers/olibochu.c
+++ b/src/mame/drivers/olibochu.c
@@ -375,14 +375,14 @@ static MACHINE_DRIVER_START( olibochu )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(olibochu)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/omegrace.c b/src/mame/drivers/omegrace.c
index ffd8a5aeadd..091763b7554 100644
--- a/src/mame/drivers/omegrace.c
+++ b/src/mame/drivers/omegrace.c
@@ -494,17 +494,15 @@ static MACHINE_DRIVER_START( omegrace )
MDRV_CPU_IO_MAP(sound_port, 0)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse,250)
- MDRV_SCREEN_REFRESH_RATE(40)
- MDRV_SCREEN_VBLANK_TIME(0)
-
MDRV_MACHINE_RESET(omegrace)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(40)
MDRV_SCREEN_SIZE(400, 300)
MDRV_SCREEN_VISIBLE_AREA(522, 1566, 522, 1566)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(dvg)
diff --git a/src/mame/drivers/oneshot.c b/src/mame/drivers/oneshot.c
index 56ffe370d27..2a947fe3994 100644
--- a/src/mame/drivers/oneshot.c
+++ b/src/mame/drivers/oneshot.c
@@ -377,16 +377,16 @@ static MACHINE_DRIVER_START( oneshot )
MDRV_CPU_ADD(Z80, 5000000)
MDRV_CPU_PROGRAM_MAP(snd_readmem, snd_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(oneshot)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0*16, 20*16-1, 0*16, 15*16-1)
+
MDRV_PALETTE_LENGTH(0x400)
MDRV_VIDEO_START(oneshot)
diff --git a/src/mame/drivers/onetwo.c b/src/mame/drivers/onetwo.c
index 1320ff0729c..40c41a52742 100644
--- a/src/mame/drivers/onetwo.c
+++ b/src/mame/drivers/onetwo.c
@@ -273,14 +273,14 @@ static MACHINE_DRIVER_START( onetwo )
MDRV_CPU_PROGRAM_MAP(sound_cpu,0)
MDRV_CPU_IO_MAP(sound_cpu_io,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(16))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
+
MDRV_GFXDECODE(onetwo)
MDRV_PALETTE_LENGTH(0x80)
diff --git a/src/mame/drivers/opwolf.c b/src/mame/drivers/opwolf.c
index 3178e5fe8f6..e0314fe335b 100644
--- a/src/mame/drivers/opwolf.c
+++ b/src/mame/drivers/opwolf.c
@@ -572,18 +572,19 @@ static MACHINE_DRIVER_START( opwolf )
MDRV_CPU_ADD(Z80, 4000000 ) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(z80_readmem,z80_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
MDRV_MACHINE_START(opwolf)
MDRV_MACHINE_RESET(opwolf)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(opwolf)
MDRV_PALETTE_LENGTH(8192)
@@ -624,17 +625,18 @@ static MACHINE_DRIVER_START( opwolfb )
MDRV_CPU_PROGRAM_MAP(sub_z80_readmem,sub_z80_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
MDRV_MACHINE_START(opwolf)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(opwolfb)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/orbit.c b/src/mame/drivers/orbit.c
index 9f4fd2ee6fd..ba1ba93714e 100644
--- a/src/mame/drivers/orbit.c
+++ b/src/mame/drivers/orbit.c
@@ -267,15 +267,16 @@ static MACHINE_DRIVER_START( orbit )
MDRV_CPU_VBLANK_INT(irq0_line_pulse, 1)
MDRV_CPU_PERIODIC_INT(orbit_interrupt, 240)
- MDRV_SCREEN_REFRESH_RATE(60) /* interlaced */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC((int) ((22. * 1000000) / (262. * 60) + 0.5)))
MDRV_MACHINE_RESET(orbit)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60) /* interlaced */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC((int) ((22. * 1000000) / (262. * 60) + 0.5)))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 524)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 0, 479)
+
MDRV_GFXDECODE(orbit)
MDRV_PALETTE_LENGTH(2)
MDRV_PALETTE_INIT(orbit)
diff --git a/src/mame/drivers/othldrby.c b/src/mame/drivers/othldrby.c
index 63db4af2a72..c411ff3fe5d 100644
--- a/src/mame/drivers/othldrby.c
+++ b/src/mame/drivers/othldrby.c
@@ -245,14 +245,14 @@ static MACHINE_DRIVER_START( othldrby )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(othldrby)
MDRV_PALETTE_LENGTH(0x800)
diff --git a/src/mame/drivers/othunder.c b/src/mame/drivers/othunder.c
index 866f1335df7..1d42dd042aa 100644
--- a/src/mame/drivers/othunder.c
+++ b/src/mame/drivers/othunder.c
@@ -710,18 +710,18 @@ static MACHINE_DRIVER_START( othunder )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(z80_sound_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(othunder)
MDRV_MACHINE_START(othunder)
MDRV_MACHINE_RESET(othunder)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(othunder)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/overdriv.c b/src/mame/drivers/overdriv.c
index cfb1ecc0d3d..6b6f1fc9259 100644
--- a/src/mame/drivers/overdriv.c
+++ b/src/mame/drivers/overdriv.c
@@ -410,18 +410,21 @@ static MACHINE_DRIVER_START( overdriv )
/* 60 fps, that's how I fixed it for now. */
MDRV_CPU_PROGRAM_MAP(overdriv_s_readmem,overdriv_s_writemem)
- MDRV_SCREEN_REFRESH_RATE(59)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(200)
MDRV_MACHINE_RESET(overdriv)
MDRV_NVRAM_HANDLER(overdriv)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 0*8, 32*8-1 )
+
MDRV_GFXDECODE(overdriv)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/pacland.c b/src/mame/drivers/pacland.c
index a794f755447..d6724d51b68 100644
--- a/src/mame/drivers/pacland.c
+++ b/src/mame/drivers/pacland.c
@@ -422,15 +422,16 @@ static MACHINE_DRIVER_START( pacland )
MDRV_CPU_IO_MAP(mcu_port_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_assert,1)
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* we need heavy synching between the MCU and the CPU */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(3*8, 39*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pacland)
MDRV_PALETTE_LENGTH(256*4+256*4+64*16)
diff --git a/src/mame/drivers/pacman.c b/src/mame/drivers/pacman.c
index 781db56d3a5..df1dea930e7 100644
--- a/src/mame/drivers/pacman.c
+++ b/src/mame/drivers/pacman.c
@@ -3079,11 +3079,10 @@ static MACHINE_DRIVER_START( pacman )
MDRV_WATCHDOG_VBLANK_INIT(16)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(pacman)
MDRV_PALETTE_LENGTH(128*4)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
@@ -3207,6 +3206,7 @@ static MACHINE_DRIVER_START( vanvan )
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(2*8, 34*8-1, 0*8, 28*8-1)
/* sound hardware */
@@ -3227,6 +3227,7 @@ static MACHINE_DRIVER_START( bigbucks )
MDRV_CPU_IO_MAP(bigbucks_readport,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,20)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
MACHINE_DRIVER_END
@@ -3241,10 +3242,11 @@ static MACHINE_DRIVER_START( s2650games )
MDRV_CPU_PROGRAM_MAP(s2650games_map,0)
MDRV_CPU_VBLANK_INT(s2650_interrupt,1)
- MDRV_SCREEN_SIZE(32*8, 32*8)
- MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MDRV_GFXDECODE(s2650games)
+ MDRV_SCREEN_MODIFY("main")
+ MDRV_SCREEN_SIZE(32*8, 32*8)
+ MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_VIDEO_START(s2650games)
@@ -3295,6 +3297,7 @@ static MACHINE_DRIVER_START( rocktrv2 )
MDRV_CPU_PROGRAM_MAP(rocktrv2_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/pandoras.c b/src/mame/drivers/pandoras.c
index c0d59d347d8..f73c0d98c61 100644
--- a/src/mame/drivers/pandoras.c
+++ b/src/mame/drivers/pandoras.c
@@ -394,17 +394,18 @@ static MACHINE_DRIVER_START( pandoras )
MDRV_CPU_PROGRAM_MAP(i8039_readmem,i8039_writemem)
MDRV_CPU_IO_MAP(i8039_readport,i8039_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(50) /* slices per frame */
MDRV_MACHINE_RESET(pandoras)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pandoras)
MDRV_PALETTE_LENGTH(16*16+16*16)
diff --git a/src/mame/drivers/pangofun.c b/src/mame/drivers/pangofun.c
index 30b7b84d478..6ecd90bd087 100644
--- a/src/mame/drivers/pangofun.c
+++ b/src/mame/drivers/pangofun.c
@@ -115,12 +115,13 @@ static MACHINE_DRIVER_START( pangofun )
MDRV_CPU_PROGRAM_MAP(pangofun_map, 0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_VIDEO_START(pangofun)
diff --git a/src/mame/drivers/panicr.c b/src/mame/drivers/panicr.c
index 34601a2a914..b2858fe17db 100644
--- a/src/mame/drivers/panicr.c
+++ b/src/mame/drivers/panicr.c
@@ -364,12 +364,13 @@ static MACHINE_DRIVER_START( panicr )
MDRV_CPU_PROGRAM_MAP(t5182_map, 0)
MDRV_CPU_IO_MAP(t5182_io, 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(panicr)
MDRV_PALETTE_LENGTH(256*3)
MDRV_PALETTE_INIT(panicr)
diff --git a/src/mame/drivers/paradise.c b/src/mame/drivers/paradise.c
index 57b0b35d8e8..29f5d040cdc 100644
--- a/src/mame/drivers/paradise.c
+++ b/src/mame/drivers/paradise.c
@@ -541,14 +541,14 @@ static MACHINE_DRIVER_START( paradise )
MDRV_CPU_IO_MAP(paradise_readport,paradise_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4) /* No nmi routine */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(54) /* 54 verified */
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */ /* we're using IPT_VBLANK */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-1-16)
+
MDRV_GFXDECODE(paradise)
MDRV_PALETTE_LENGTH(0x800 + 16)
diff --git a/src/mame/drivers/paranoia.c b/src/mame/drivers/paranoia.c
index a2c19f5f257..310424a1b63 100644
--- a/src/mame/drivers/paranoia.c
+++ b/src/mame/drivers/paranoia.c
@@ -134,8 +134,6 @@ static MACHINE_DRIVER_START( paranoia )
MDRV_CPU_IO_MAP(pce_io, 0)
MDRV_CPU_VBLANK_INT(pce_interrupt, VDC_LPF)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(1)
MDRV_CPU_ADD(8085A, 18000000/3)
@@ -147,10 +145,11 @@ static MACHINE_DRIVER_START( paranoia )
MDRV_CPU_IO_MAP(paranoia_z80_io_map,0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
- MDRV_SCREEN_ADD("main",0)
MDRV_SCREEN_RAW_PARAMS(PCE_MAIN_CLOCK/2, VDC_WPF, 70, 70 + 512 + 32, VDC_LPF, 14, 14+242)
+
/* MDRV_GFXDECODE( pce_gfxdecodeinfo ) */
MDRV_PALETTE_LENGTH(1024)
MDRV_PALETTE_INIT( vce )
diff --git a/src/mame/drivers/parodius.c b/src/mame/drivers/parodius.c
index e0130362c0b..6072482aa27 100644
--- a/src/mame/drivers/parodius.c
+++ b/src/mame/drivers/parodius.c
@@ -305,16 +305,19 @@ static MACHINE_DRIVER_START( parodius )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(parodius_readmem_sound,parodius_writemem_sound)
/* NMIs are triggered by the 053260 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(parodius)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(parodius)
diff --git a/src/mame/drivers/pasha2.c b/src/mame/drivers/pasha2.c
index e3a4590156a..1ddd46a227c 100644
--- a/src/mame/drivers/pasha2.c
+++ b/src/mame/drivers/pasha2.c
@@ -392,16 +392,16 @@ static MACHINE_DRIVER_START( pasha2 )
MDRV_CPU_IO_MAP(pasha2_io,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 383, 0, 239)
+
MDRV_PALETTE_LENGTH(0x200)
MDRV_VIDEO_START(pasha2)
diff --git a/src/mame/drivers/pass.c b/src/mame/drivers/pass.c
index 1fb63ddc475..6d9330eb158 100644
--- a/src/mame/drivers/pass.c
+++ b/src/mame/drivers/pass.c
@@ -281,14 +281,14 @@ static MACHINE_DRIVER_START( pass )
MDRV_CPU_IO_MAP(pass_sound_readport,pass_sound_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x200)
MDRV_GFXDECODE(pass)
diff --git a/src/mame/drivers/pastelg.c b/src/mame/drivers/pastelg.c
index 47251ebb05d..a8769e3a26e 100644
--- a/src/mame/drivers/pastelg.c
+++ b/src/mame/drivers/pastelg.c
@@ -207,17 +207,17 @@ static MACHINE_DRIVER_START( pastelg )
// MDRV_CPU_VBLANK_INT(nb1413m3_interrupt,96) // nmiclock not written, chip is 1411M1 instead of 1413M3
MDRV_CPU_VBLANK_INT(nb1413m3_interrupt, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(nb1413m3)
MDRV_NVRAM_HANDLER(nb1413m3)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 16, 240-1)
+
MDRV_PALETTE_LENGTH(32)
MDRV_PALETTE_INIT(pastelg)
diff --git a/src/mame/drivers/pbaction.c b/src/mame/drivers/pbaction.c
index b531d4f2984..874f2045dfb 100644
--- a/src/mame/drivers/pbaction.c
+++ b/src/mame/drivers/pbaction.c
@@ -275,14 +275,15 @@ static MACHINE_DRIVER_START( pbaction )
MDRV_CPU_IO_MAP(0,sound_writeport)
MDRV_CPU_VBLANK_INT(pbaction_interrupt,2) /* ??? */
/* IRQs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pbaction)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/pcktgal.c b/src/mame/drivers/pcktgal.c
index 38bd7a01418..f0cdfa0e7a9 100644
--- a/src/mame/drivers/pcktgal.c
+++ b/src/mame/drivers/pcktgal.c
@@ -246,14 +246,15 @@ static MACHINE_DRIVER_START( pcktgal )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
/* IRQs are caused by the ADPCM chip */
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pcktgal)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/pengo.c b/src/mame/drivers/pengo.c
index fbfbb3350e7..a81a58cfa5d 100644
--- a/src/mame/drivers/pengo.c
+++ b/src/mame/drivers/pengo.c
@@ -351,11 +351,10 @@ static MACHINE_DRIVER_START( pengo )
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(pengo)
MDRV_PALETTE_LENGTH(128*4)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
diff --git a/src/mame/drivers/peplus.c b/src/mame/drivers/peplus.c
index 6bfa597bed6..2bdbcf2676c 100644
--- a/src/mame/drivers/peplus.c
+++ b/src/mame/drivers/peplus.c
@@ -980,14 +980,14 @@ static MACHINE_DRIVER_START( peplus )
MDRV_CPU_IO_MAP(peplus_iomap, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(peplus)
MDRV_NVRAM_HANDLER(peplus)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE((52+1)*8, (31+1)*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 25*8-1)
diff --git a/src/mame/drivers/pgm.c b/src/mame/drivers/pgm.c
index 6ae5ce1a08b..7f5b88819dc 100644
--- a/src/mame/drivers/pgm.c
+++ b/src/mame/drivers/pgm.c
@@ -1556,14 +1556,14 @@ static MACHINE_DRIVER_START( pgm )
MDRV_SOUND_CONFIG(pgm_ics2115_interface)
MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 5.0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 56*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(pgm)
MDRV_PALETTE_LENGTH(0x1200/2)
MDRV_MACHINE_RESET ( pgm )
diff --git a/src/mame/drivers/phoenix.c b/src/mame/drivers/phoenix.c
index a861cd9e0c8..64d52a429d5 100644
--- a/src/mame/drivers/phoenix.c
+++ b/src/mame/drivers/phoenix.c
@@ -423,13 +423,13 @@ static MACHINE_DRIVER_START( phoenix )
MDRV_CPU_ADD_TAG("main", 8085A, CPU_CLOCK) /* 2.75 MHz */
MDRV_CPU_PROGRAM_MAP(phoenix_memory_map, 0)
- MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
-
MDRV_MACHINE_RESET(phoenix)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
+ MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
+
MDRV_GFXDECODE(phoenix)
MDRV_PALETTE_LENGTH(256)
@@ -489,16 +489,17 @@ static MACHINE_DRIVER_START( survival )
MDRV_CPU_ADD_TAG("main", 8085A, CPU_CLOCK) /* 5.50 MHz */
MDRV_CPU_PROGRAM_MAP(survival_memory_map, 0)
+ MDRV_MACHINE_RESET(phoenix)
+
+ /* video hardware */
+
/* schematics fairly identical to phoenix, however the interesting
* page is missing
*/
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
- MDRV_MACHINE_RESET(phoenix)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_GFXDECODE(phoenix)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/pingpong.c b/src/mame/drivers/pingpong.c
index 503ba6ef196..ac2a5e968b2 100644
--- a/src/mame/drivers/pingpong.c
+++ b/src/mame/drivers/pingpong.c
@@ -459,14 +459,14 @@ static MACHINE_DRIVER_START( pingpong )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(pingpong_interrupt,16) /* 1 IRQ + 8 NMI */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pingpong)
MDRV_PALETTE_LENGTH(64*4+64*4)
diff --git a/src/mame/drivers/pipedrm.c b/src/mame/drivers/pipedrm.c
index 73779f29694..5292396fd43 100644
--- a/src/mame/drivers/pipedrm.c
+++ b/src/mame/drivers/pipedrm.c
@@ -566,16 +566,16 @@ static MACHINE_DRIVER_START( pipedrm )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_IO_MAP(sound_portmap,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(pipedrm)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(44*8, 30*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 44*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(pipedrm)
MDRV_PALETTE_LENGTH(2048)
@@ -606,16 +606,16 @@ static MACHINE_DRIVER_START( hatris )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_IO_MAP(hatris_sound_portmap,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(pipedrm)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(44*8, 30*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 44*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(hatris)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/pipeline.c b/src/mame/drivers/pipeline.c
index 1b8e9c88d8b..2e78f4fe5e5 100644
--- a/src/mame/drivers/pipeline.c
+++ b/src/mame/drivers/pipeline.c
@@ -367,14 +367,14 @@ static MACHINE_DRIVER_START( pipeline )
MDRV_CPU_ADD(M68705, 7372800/2)
MDRV_CPU_PROGRAM_MAP(mcu_mem, 0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 16, 239)
+
MDRV_GFXDECODE(pipeline)
MDRV_MACHINE_RESET(pipeline)
diff --git a/src/mame/drivers/pirates.c b/src/mame/drivers/pirates.c
index f0292a6943f..72751999b23 100644
--- a/src/mame/drivers/pirates.c
+++ b/src/mame/drivers/pirates.c
@@ -289,17 +289,18 @@ static MACHINE_DRIVER_START( pirates )
MDRV_CPU_PROGRAM_MAP(pirates_readmem,pirates_writemem)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(pirates)
MDRV_GFXDECODE(pirates)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x2000)
MDRV_VIDEO_START(pirates)
diff --git a/src/mame/drivers/pitnrun.c b/src/mame/drivers/pitnrun.c
index 1ea0f02d16e..4306e64f1d5 100644
--- a/src/mame/drivers/pitnrun.c
+++ b/src/mame/drivers/pitnrun.c
@@ -288,9 +288,6 @@ static MACHINE_DRIVER_START( pitnrun )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(pitnrun_nmi_source,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_CPU_ADD(Z80, 10000000/4) /* 2.5 MHz */
/* audio CPU */
@@ -306,7 +303,9 @@ static MACHINE_DRIVER_START( pitnrun )
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/pkscram.c b/src/mame/drivers/pkscram.c
index 03ca04c95e3..00b9b62cf06 100644
--- a/src/mame/drivers/pkscram.c
+++ b/src/mame/drivers/pkscram.c
@@ -287,18 +287,18 @@ static MACHINE_DRIVER_START( pkscramble )
MDRV_CPU_PROGRAM_MAP(pkscramble_map,0)
//MDRV_CPU_VBLANK_INT(irq1_line_hold,1) /* only valid irq */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
MDRV_MACHINE_RESET(pkscramble)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 24*8-1)
+
MDRV_PALETTE_LENGTH(0x800)
MDRV_GFXDECODE(pkscram)
diff --git a/src/mame/drivers/pktgaldx.c b/src/mame/drivers/pktgaldx.c
index fae9bc9a60a..8f969c75b28 100644
--- a/src/mame/drivers/pktgaldx.c
+++ b/src/mame/drivers/pktgaldx.c
@@ -349,14 +349,14 @@ static MACHINE_DRIVER_START( pktgaldx )
MDRV_CPU_PROGRAM_MAP(pktgaldx_map,0)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_PALETTE_LENGTH(4096)
MDRV_GFXDECODE(pktgaldx)
@@ -384,14 +384,14 @@ static MACHINE_DRIVER_START( pktgaldb )
MDRV_CPU_PROGRAM_MAP(pktgaldb_readmem,pktgaldb_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_PALETTE_LENGTH(4096)
MDRV_GFXDECODE(bootleg)
diff --git a/src/mame/drivers/playch10.c b/src/mame/drivers/playch10.c
index f1a2654f266..dad0f47f2a8 100644
--- a/src/mame/drivers/playch10.c
+++ b/src/mame/drivers/playch10.c
@@ -743,18 +743,17 @@ static MACHINE_DRIVER_START( playch10 )
MDRV_MACHINE_RESET(pc10)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(playch10)
MDRV_PALETTE_LENGTH(256+8*4*16)
MDRV_DEFAULT_LAYOUT(layout_dualhuov)
- MDRV_SCREEN_ADD("top", 0x000)
+ MDRV_SCREEN_ADD("top", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(32*8, 262)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
- MDRV_SCREEN_ADD("bottom", 0x000)
+ MDRV_SCREEN_ADD("bottom", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(32*8, 262)
diff --git a/src/mame/drivers/playmark.c b/src/mame/drivers/playmark.c
index 5fd74a4ee9a..fa11eec6295 100644
--- a/src/mame/drivers/playmark.c
+++ b/src/mame/drivers/playmark.c
@@ -976,14 +976,14 @@ static MACHINE_DRIVER_START( bigtwin )
/* Program and Data Maps are internal to the MCU */
MDRV_CPU_IO_MAP(playmark_sound_io_map, 0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(playmark)
MDRV_PALETTE_LENGTH(1024)
@@ -1010,16 +1010,16 @@ static MACHINE_DRIVER_START( wbeachvl )
/* Program and Data Maps are internal to the MCU */
// MDRV_CPU_IO_MAP(playmark_sound_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(wbeachvl)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(wbeachvl)
MDRV_PALETTE_LENGTH(2048)
@@ -1045,14 +1045,14 @@ static MACHINE_DRIVER_START( excelsr )
/* Program and Data Maps are internal to the MCU */
MDRV_CPU_IO_MAP(playmark_sound_io_map, 0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(excelsr)
MDRV_PALETTE_LENGTH(1024)
@@ -1078,16 +1078,16 @@ static MACHINE_DRIVER_START( hotmind )
/* Program and Data Maps are internal to the MCU */
MDRV_CPU_IO_MAP(playmark_sound_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(wbeachvl)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(hrdtimes)
MDRV_PALETTE_LENGTH(1024)
@@ -1113,14 +1113,14 @@ static MACHINE_DRIVER_START( hrdtimes )
/* Program and Data Maps are internal to the MCU */
// MDRV_CPU_IO_MAP(playmark_sound_io_map, 0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(hrdtimes)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/plygonet.c b/src/mame/drivers/plygonet.c
index c85d5523c08..69436feae4a 100644
--- a/src/mame/drivers/plygonet.c
+++ b/src/mame/drivers/plygonet.c
@@ -695,17 +695,17 @@ static MACHINE_DRIVER_START( plygonet )
MDRV_CPU_PROGRAM_MAP(sound_map, 0)
MDRV_CPU_PERIODIC_INT(audio_interrupt, 480)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(plygonet)
MDRV_NVRAM_HANDLER(polygonet)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 32*8-1 )
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(polygonet)
diff --git a/src/mame/drivers/pmpoker.c b/src/mame/drivers/pmpoker.c
index b1c0475597f..77aee098367 100644
--- a/src/mame/drivers/pmpoker.c
+++ b/src/mame/drivers/pmpoker.c
@@ -1005,13 +1005,12 @@ static MACHINE_DRIVER_START( pmpoker )
MDRV_CPU_PROGRAM_MAP(pmpoker_map, 0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE((39+1)*8, (31+1)*8) /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1) */
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 29*8-1) /* Taken from MC6845 init, registers 01 & 06 */
@@ -1024,7 +1023,7 @@ static MACHINE_DRIVER_START( pmpoker )
MDRV_VIDEO_START(pmpoker)
MDRV_VIDEO_UPDATE(pmpoker)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
MACHINE_DRIVER_END
static MACHINE_DRIVER_START( jokerpkr )
diff --git a/src/mame/drivers/pntnpuzl.c b/src/mame/drivers/pntnpuzl.c
index a5a7fa34ade..81ff2846f9e 100644
--- a/src/mame/drivers/pntnpuzl.c
+++ b/src/mame/drivers/pntnpuzl.c
@@ -457,15 +457,16 @@ static MACHINE_DRIVER_START( pntnpuzl )
MDRV_CPU_PROGRAM_MAP(pntnpuzl_map,0)
MDRV_CPU_VBLANK_INT(pntnpuzl_irq,1) // irq1 = coin irq2 = service irq4 = coin
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(pntnpuzl)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 50*8-1, 0*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(pntnpuzl)
diff --git a/src/mame/drivers/pokechmp.c b/src/mame/drivers/pokechmp.c
index 87ab7cf0bbc..5f797a87fdb 100644
--- a/src/mame/drivers/pokechmp.c
+++ b/src/mame/drivers/pokechmp.c
@@ -255,14 +255,14 @@ static MACHINE_DRIVER_START( pokechmp )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pokechmp)
MDRV_PALETTE_LENGTH(0x400)
diff --git a/src/mame/drivers/polepos.c b/src/mame/drivers/polepos.c
index 1695d65c0de..d29cb21aead 100644
--- a/src/mame/drivers/polepos.c
+++ b/src/mame/drivers/polepos.c
@@ -898,18 +898,20 @@ static MACHINE_DRIVER_START( polepos )
MDRV_CPU_IO_MAP(namco_54xx_map_io,0)
MDRV_WATCHDOG_VBLANK_INIT(16) // 128V clocks the same as VBLANK
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
+
MDRV_INTERLEAVE(100) /* some interleaving */
MDRV_MACHINE_RESET(polepos)
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(polepos)
MDRV_PALETTE_LENGTH(0x0f00)
diff --git a/src/mame/drivers/policetr.c b/src/mame/drivers/policetr.c
index c439765d570..6c871d30443 100644
--- a/src/mame/drivers/policetr.c
+++ b/src/mame/drivers/policetr.c
@@ -468,15 +468,17 @@ static MACHINE_DRIVER_START( policetr )
MDRV_CPU_PROGRAM_MAP(policetr_map,0)
MDRV_CPU_VBLANK_INT(irq4_gen,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_NVRAM_HANDLER(policetr)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(400, 262) /* needs to be verified */
MDRV_SCREEN_VISIBLE_AREA(0, 393, 0, 239)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(policetr)
diff --git a/src/mame/drivers/polyplay.c b/src/mame/drivers/polyplay.c
index a7ddb56d9f3..bf96c4ff245 100644
--- a/src/mame/drivers/polyplay.c
+++ b/src/mame/drivers/polyplay.c
@@ -296,15 +296,15 @@ static MACHINE_DRIVER_START( polyplay )
MDRV_CPU_PERIODIC_INT(periodic_interrupt,75)
MDRV_CPU_VBLANK_INT(coin_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(50)
-
MDRV_MACHINE_RESET(polyplay)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(50)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(polyplay)
MDRV_PALETTE_LENGTH(10)
diff --git a/src/mame/drivers/poolshrk.c b/src/mame/drivers/poolshrk.c
index 3e7d035391b..66f95911e08 100644
--- a/src/mame/drivers/poolshrk.c
+++ b/src/mame/drivers/poolshrk.c
@@ -218,13 +218,13 @@ static MACHINE_DRIVER_START( poolshrk )
MDRV_CPU_PROGRAM_MAP(poolshrk_cpu_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_assert, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(1, 255, 24, 255)
+
MDRV_GFXDECODE(poolshrk)
MDRV_PALETTE_LENGTH(4)
MDRV_PALETTE_INIT(poolshrk)
diff --git a/src/mame/drivers/pooyan.c b/src/mame/drivers/pooyan.c
index 6d533a2b54c..527c6005184 100644
--- a/src/mame/drivers/pooyan.c
+++ b/src/mame/drivers/pooyan.c
@@ -218,15 +218,15 @@ static MACHINE_DRIVER_START( pooyan )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_VBLANK_INT(pooyan_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_START(pooyan)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pooyan)
MDRV_PALETTE_LENGTH(16*16+16*16)
diff --git a/src/mame/drivers/popeye.c b/src/mame/drivers/popeye.c
index 2a510dd8960..015982fdc13 100644
--- a/src/mame/drivers/popeye.c
+++ b/src/mame/drivers/popeye.c
@@ -486,14 +486,14 @@ static MACHINE_DRIVER_START( skyskipr )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(popeye_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0*16, 32*16-1, 2*16, 30*16-1)
+
MDRV_GFXDECODE(popeye)
MDRV_PALETTE_LENGTH(16+16*2+64*4)
diff --git a/src/mame/drivers/popper.c b/src/mame/drivers/popper.c
index c43d4a86137..d6bbae8bad9 100644
--- a/src/mame/drivers/popper.c
+++ b/src/mame/drivers/popper.c
@@ -319,15 +319,16 @@ static MACHINE_DRIVER_START( popper )
MDRV_CPU_PROGRAM_MAP(popper_sound_readmem,popper_sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4) //NMIs caused by the main CPU
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(30)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(33*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 33*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(popper)
MDRV_PALETTE_LENGTH(64)
diff --git a/src/mame/drivers/portrait.c b/src/mame/drivers/portrait.c
index 3066d0431c7..ddcf0a73774 100644
--- a/src/mame/drivers/portrait.c
+++ b/src/mame/drivers/portrait.c
@@ -256,13 +256,13 @@ static MACHINE_DRIVER_START( portrait )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(portrait_sound_map,0)
- MDRV_SCREEN_REFRESH_RATE(50)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_NVRAM_HANDLER(generic_0fill)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(50)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
+ MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 54*8-1, 0*8, 40*8-1)
diff --git a/src/mame/drivers/powerbal.c b/src/mame/drivers/powerbal.c
index 4c2aaf46e4c..1c9bf0f6c4b 100644
--- a/src/mame/drivers/powerbal.c
+++ b/src/mame/drivers/powerbal.c
@@ -415,14 +415,14 @@ static MACHINE_DRIVER_START( powerbal )
MDRV_CPU_PROGRAM_MAP(powerbal_main_map, 0)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(61)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(128*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(powerbal)
MDRV_PALETTE_LENGTH(512)
@@ -443,16 +443,16 @@ static MACHINE_DRIVER_START( magicstk )
MDRV_CPU_PROGRAM_MAP(magicstk_main_map, 0)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(61)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(magicstk)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(61)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(128*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(powerbal)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/powerins.c b/src/mame/drivers/powerins.c
index e99cd82b48a..8cceb5bd64e 100644
--- a/src/mame/drivers/powerins.c
+++ b/src/mame/drivers/powerins.c
@@ -356,16 +356,16 @@ static MACHINE_DRIVER_START( powerins )
MDRV_CPU_PROGRAM_MAP(readmem_snd,writemem_snd)
MDRV_CPU_IO_MAP(powerins_io_snd,0)
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(powerins)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(powerins)
MDRV_PALETTE_LENGTH(2048)
@@ -393,6 +393,7 @@ static MACHINE_DRIVER_START( powerina )
/* basic machine hardware */
MDRV_IMPORT_FROM(powerins)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_CPU_REMOVE("sound")
@@ -410,6 +411,7 @@ static MACHINE_DRIVER_START( powerinb )
/* basic machine hardware */
MDRV_IMPORT_FROM(powerins)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_CPU_MODIFY("sound") /* 6 MHz */
diff --git a/src/mame/drivers/ppmast93.c b/src/mame/drivers/ppmast93.c
index 8dc1bd6ecc0..e0356859c89 100644
--- a/src/mame/drivers/ppmast93.c
+++ b/src/mame/drivers/ppmast93.c
@@ -354,14 +354,14 @@ static MACHINE_DRIVER_START( ppmast93 )
MDRV_CPU_IO_MAP(ppmast93_cpu2_io,0)
MDRV_CPU_PERIODIC_INT(irq0_line_hold,8000)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(55)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1)
+
MDRV_GFXDECODE(ppmast93)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
diff --git a/src/mame/drivers/prehisle.c b/src/mame/drivers/prehisle.c
index 59fe3a97334..593bc11e95d 100644
--- a/src/mame/drivers/prehisle.c
+++ b/src/mame/drivers/prehisle.c
@@ -244,14 +244,14 @@ static MACHINE_DRIVER_START( prehisle )
MDRV_CPU_PROGRAM_MAP(prehisle_sound_readmem,prehisle_sound_writemem)
MDRV_CPU_IO_MAP(prehisle_sound_readport,prehisle_sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(prehisle)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/progolf.c b/src/mame/drivers/progolf.c
index cb1ac060f33..5c53822040f 100644
--- a/src/mame/drivers/progolf.c
+++ b/src/mame/drivers/progolf.c
@@ -208,11 +208,10 @@ static MACHINE_DRIVER_START( progolf )
// MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
// MDRV_CPU_VBLANK_INT(nmi_line_pulse,16)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(3072))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
diff --git a/src/mame/drivers/psikyo.c b/src/mame/drivers/psikyo.c
index aacb50d4149..fc81942777a 100644
--- a/src/mame/drivers/psikyo.c
+++ b/src/mame/drivers/psikyo.c
@@ -1572,16 +1572,16 @@ static MACHINE_DRIVER_START( sngkace )
MDRV_CPU_PROGRAM_MAP(sngkace_sound_readmem,sngkace_sound_writemem)
MDRV_CPU_IO_MAP(sngkace_sound_readport,sngkace_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(59.3)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) // we're using IPT_VBLANK
-
MDRV_MACHINE_RESET(psikyo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.3)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) // we're using IPT_VBLANK
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-32-1)
+
MDRV_GFXDECODE(psikyo)
MDRV_PALETTE_LENGTH(0x1000)
@@ -1626,16 +1626,16 @@ static MACHINE_DRIVER_START( gunbird )
MDRV_CPU_PROGRAM_MAP(gunbird_sound_readmem,gunbird_sound_writemem)
MDRV_CPU_IO_MAP(gunbird_sound_readport,gunbird_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(59.3)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) // we're using IPT_VBLANK
-
MDRV_MACHINE_RESET(psikyo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.3)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) // we're using IPT_VBLANK
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-32-1)
+
MDRV_GFXDECODE(psikyo)
MDRV_PALETTE_LENGTH(0x1000)
@@ -1690,16 +1690,16 @@ static MACHINE_DRIVER_START( s1945 )
/* MCU should go here */
- MDRV_SCREEN_REFRESH_RATE(59.3)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) // we're using IPT_VBLANK
-
MDRV_MACHINE_RESET(psikyo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.3)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) // we're using IPT_VBLANK
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-32-1)
+
MDRV_GFXDECODE(psikyo)
MDRV_PALETTE_LENGTH(0x1000)
diff --git a/src/mame/drivers/psikyo4.c b/src/mame/drivers/psikyo4.c
index de0adce76a6..3cb62e8ec78 100644
--- a/src/mame/drivers/psikyo4.c
+++ b/src/mame/drivers/psikyo4.c
@@ -497,19 +497,18 @@ static MACHINE_DRIVER_START( ps4big )
MDRV_NVRAM_HANDLER(93C56)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(ps4)
MDRV_PALETTE_LENGTH((0x2000/4)*2 + 2) /* 0x2000/4 for each screen. 1 for each screen clear colour */
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/psikyosh.c b/src/mame/drivers/psikyosh.c
index a3c390d7292..de129487d74 100644
--- a/src/mame/drivers/psikyosh.c
+++ b/src/mame/drivers/psikyosh.c
@@ -600,16 +600,18 @@ static MACHINE_DRIVER_START( psikyo3v1 )
MDRV_CPU_PROGRAM_MAP(ps3v1_readmem,ps3v1_writemem)
MDRV_CPU_VBLANK_INT(psikyosh_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(93C56)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM ) /* If using alpha */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM ) /* If using alpha */
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 28*8-1)
+
MDRV_GFXDECODE(psikyosh)
MDRV_PALETTE_LENGTH(0x5000/4)
@@ -643,6 +645,7 @@ static MACHINE_DRIVER_START( psikyo5_240 )
MDRV_CPU_PROGRAM_MAP(ps5_readmem,ps5_writemem)
/* It probably has a register to change visarea */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 30*8-1)
MACHINE_DRIVER_END
#endif
diff --git a/src/mame/drivers/psychic5.c b/src/mame/drivers/psychic5.c
index 90d094f9424..b24bc0adf67 100644
--- a/src/mame/drivers/psychic5.c
+++ b/src/mame/drivers/psychic5.c
@@ -557,17 +557,18 @@ static MACHINE_DRIVER_START( psychic5 )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(0,sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(53.8)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- /* frames per second hand tuned to match game and music speed */
MDRV_INTERLEAVE(10) /* Allow time for 2nd cpu to interleave*/
MDRV_MACHINE_RESET(psychic5)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(53.8)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
+ /* frames per second hand tuned to match game and music speed */
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(psychic5)
MDRV_PALETTE_LENGTH(768)
diff --git a/src/mame/drivers/pturn.c b/src/mame/drivers/pturn.c
index 0c6508e4001..6efb820df19 100644
--- a/src/mame/drivers/pturn.c
+++ b/src/mame/drivers/pturn.c
@@ -454,15 +454,16 @@ static MACHINE_DRIVER_START( pturn )
MDRV_CPU_PROGRAM_MAP(sub_map,0)
MDRV_CPU_VBLANK_INT(pturn_sub_intgen,3)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(pturn)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
diff --git a/src/mame/drivers/puckpkmn.c b/src/mame/drivers/puckpkmn.c
index 8c9e15452d8..9305361177b 100644
--- a/src/mame/drivers/puckpkmn.c
+++ b/src/mame/drivers/puckpkmn.c
@@ -160,13 +160,14 @@ static MACHINE_DRIVER_START( puckpkmn )
MDRV_CPU_PROGRAM_MAP(puckpkmn_readmem,puckpkmn_writemem)
MDRV_CPU_VBLANK_INT(genesis_vblank_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_START(genesis)
MDRV_MACHINE_RESET(genesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(342,262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 223)
diff --git a/src/mame/drivers/punchout.c b/src/mame/drivers/punchout.c
index bd410454c67..fa2fa4305fe 100644
--- a/src/mame/drivers/punchout.c
+++ b/src/mame/drivers/punchout.c
@@ -797,19 +797,18 @@ static MACHINE_DRIVER_START( punchout )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(punchout)
MDRV_PALETTE_LENGTH(128*4+128*4+64*8+128*4)
MDRV_DEFAULT_LAYOUT(layout_dualhuov)
- MDRV_SCREEN_ADD("top", 0x000)
+ MDRV_SCREEN_ADD("top", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
- MDRV_SCREEN_ADD("bottom", 0x000)
+ MDRV_SCREEN_ADD("bottom", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/pushman.c b/src/mame/drivers/pushman.c
index 023e3c37f9f..c382e64c437 100644
--- a/src/mame/drivers/pushman.c
+++ b/src/mame/drivers/pushman.c
@@ -446,15 +446,16 @@ static MACHINE_DRIVER_START( pushman )
MDRV_CPU_ADD(M68705, 4000000) /* No idea */
MDRV_CPU_PROGRAM_MAP(mcu_readmem,mcu_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(60)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pushman)
MDRV_PALETTE_LENGTH(1024)
@@ -484,17 +485,18 @@ static MACHINE_DRIVER_START( bballs )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(0,sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(60)
MDRV_MACHINE_RESET(bballs)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pushman)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/qdrmfgp.c b/src/mame/drivers/qdrmfgp.c
index c86cd1cfd59..3821e0754f5 100644
--- a/src/mame/drivers/qdrmfgp.c
+++ b/src/mame/drivers/qdrmfgp.c
@@ -678,18 +678,18 @@ static MACHINE_DRIVER_START( qdrmfgp )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(qdrmfgp_interrupt, 2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(qdrmfgp)
MDRV_MACHINE_RESET(qdrmfgp)
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(40, 40+384-1, 16, 16+224-1)
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(qdrmfgp)
@@ -711,18 +711,18 @@ static MACHINE_DRIVER_START( qdrmfgp2 )
MDRV_CPU_PROGRAM_MAP(gp2_readmem,gp2_writemem)
MDRV_CPU_VBLANK_INT(qdrmfgp2_interrupt, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(qdrmfgp)
MDRV_MACHINE_RESET(qdrmfgp2)
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(40, 40+384-1, 16, 16+224-1)
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(qdrmfgp2)
diff --git a/src/mame/drivers/quantum.c b/src/mame/drivers/quantum.c
index da0dbf67492..6ced32cf0ce 100644
--- a/src/mame/drivers/quantum.c
+++ b/src/mame/drivers/quantum.c
@@ -241,16 +241,14 @@ static MACHINE_DRIVER_START( quantum )
MDRV_CPU_PROGRAM_MAP(main_map, 0)
MDRV_CPU_PERIODIC_INT(irq1_line_hold, (double)MASTER_CLOCK / 4096 / 12)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(400, 300)
MDRV_SCREEN_VISIBLE_AREA(0, 900, 0, 600)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(avg_quantum)
diff --git a/src/mame/drivers/quasar.c b/src/mame/drivers/quasar.c
index 3f5487b6631..ea301408042 100644
--- a/src/mame/drivers/quasar.c
+++ b/src/mame/drivers/quasar.c
@@ -354,12 +354,12 @@ static MACHINE_DRIVER_START( quasar )
MDRV_MACHINE_START( cvs )
- MDRV_SCREEN_REFRESH_RATE(50) /* From dot clock */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(50) /* From dot clock */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(1*8+1, 29*8-1, 2*8, 32*8-1)
diff --git a/src/mame/drivers/quizdna.c b/src/mame/drivers/quizdna.c
index 1698d5e36fe..77cfa9b6b51 100644
--- a/src/mame/drivers/quizdna.c
+++ b/src/mame/drivers/quizdna.c
@@ -458,14 +458,14 @@ static MACHINE_DRIVER_START( quizdna )
MDRV_CPU_IO_MAP(quizdna_readport,quizdna_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, 56*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(quizdna)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/quizo.c b/src/mame/drivers/quizo.c
index 1faff688a4a..5520e0872ea 100644
--- a/src/mame/drivers/quizo.c
+++ b/src/mame/drivers/quizo.c
@@ -196,14 +196,14 @@ static MACHINE_DRIVER_START( quizo )
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 200)
MDRV_SCREEN_VISIBLE_AREA(0*8, 320-1, 0*8, 200-1)
+
MDRV_PALETTE_LENGTH(16)
MDRV_PALETTE_INIT(quizo)
diff --git a/src/mame/drivers/quizpani.c b/src/mame/drivers/quizpani.c
index 317b49a478a..ef8c918404a 100644
--- a/src/mame/drivers/quizpani.c
+++ b/src/mame/drivers/quizpani.c
@@ -254,13 +254,13 @@ static MACHINE_DRIVER_START( quizpani )
MDRV_MACHINE_RESET( quizpani )
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(quizpani)
MDRV_PALETTE_LENGTH(0x200)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 0*8, 28*8-1)
diff --git a/src/mame/drivers/r2dtank.c b/src/mame/drivers/r2dtank.c
index 3916c3418e0..cdc399ddc12 100644
--- a/src/mame/drivers/r2dtank.c
+++ b/src/mame/drivers/r2dtank.c
@@ -557,15 +557,14 @@ static MACHINE_DRIVER_START( r2dtank )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(r2dtank)
MDRV_VIDEO_UPDATE(r2dtank)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 256, 0, 256, 256, 0, 256) /* temporary, CRTC will configure screen */
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
MDRV_DEVICE_CONFIG(mc6845_intf)
/* audio hardware */
diff --git a/src/mame/drivers/rabbit.c b/src/mame/drivers/rabbit.c
index e9b9e956ea5..c9dcdc7804f 100644
--- a/src/mame/drivers/rabbit.c
+++ b/src/mame/drivers/rabbit.c
@@ -1078,15 +1078,15 @@ static MACHINE_DRIVER_START( rabbit )
lev 6 : 0x78 : 0000 0204 -
lev 7 : 0x7c : 0000 3106 - unused?
*/
-
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_NVRAM_HANDLER(93C46)
MDRV_GFXDECODE(rabbit)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16, 64*16)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
diff --git a/src/mame/drivers/raiden.c b/src/mame/drivers/raiden.c
index aef7c80a08c..9dd253ead25 100644
--- a/src/mame/drivers/raiden.c
+++ b/src/mame/drivers/raiden.c
@@ -244,17 +244,20 @@ static MACHINE_DRIVER_START( raiden )
SEIBU_SOUND_SYSTEM_CPU(XTAL_14_31818MHz/4) /* verified on pcb */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(200)
MDRV_MACHINE_RESET(seibu_sound_2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(raiden)
MDRV_PALETTE_LENGTH(2048)
@@ -280,17 +283,20 @@ static MACHINE_DRIVER_START( raidena )
SEIBU_SOUND_SYSTEM_CPU(XTAL_14_31818MHz/4) /* verified on pcb */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(120)
MDRV_MACHINE_RESET(seibu_sound_2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(raiden)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/raiden2.c b/src/mame/drivers/raiden2.c
index 001d145f0e1..1563fb7231b 100644
--- a/src/mame/drivers/raiden2.c
+++ b/src/mame/drivers/raiden2.c
@@ -1183,13 +1183,14 @@ static MACHINE_DRIVER_START( raiden2 )
MDRV_CPU_PROGRAM_MAP(raiden2_mem, 0)
MDRV_CPU_VBLANK_INT(raiden2_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate *//2)
-
MDRV_MACHINE_RESET(raiden2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate *//2)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
#if 1
MDRV_SCREEN_SIZE(64*8, 64*8)
@@ -2238,15 +2239,13 @@ static MACHINE_DRIVER_START( rdx_v33 )
MDRV_CPU_PROGRAM_MAP(rdx_v33_map, 0)
MDRV_CPU_VBLANK_INT(rdx_v33_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(rdx_v33)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
-
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(5*8, 43*8-1, 1, 30*8)
diff --git a/src/mame/drivers/rainbow.c b/src/mame/drivers/rainbow.c
index e6cb8ef103b..8a670de3ed8 100644
--- a/src/mame/drivers/rainbow.c
+++ b/src/mame/drivers/rainbow.c
@@ -623,15 +623,16 @@ static MACHINE_DRIVER_START( rainbow )
MDRV_CPU_ADD(Z80, XTAL_16MHz/4) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(rainbow_s_readmem,rainbow_s_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(rainbow)
MDRV_PALETTE_LENGTH(8192)
@@ -658,15 +659,16 @@ static MACHINE_DRIVER_START( jumping )
MDRV_CPU_ADD(Z80, 4000000)
MDRV_CPU_PROGRAM_MAP(jumping_sound_readmem,jumping_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough ? */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(jumping)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/rallyx.c b/src/mame/drivers/rallyx.c
index 074c2dbd960..d168873e240 100644
--- a/src/mame/drivers/rallyx.c
+++ b/src/mame/drivers/rallyx.c
@@ -842,14 +842,16 @@ static MACHINE_DRIVER_START( rallyx )
MDRV_CPU_IO_MAP(0,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_assert,1)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60.606060)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(rallyx)
MDRV_PALETTE_LENGTH(64*4+4)
@@ -877,14 +879,16 @@ static MACHINE_DRIVER_START( jungler )
MDRV_CPU_PROGRAM_MAP(jungler_map,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* frames per second, vblank duration */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(jungler)
MDRV_PALETTE_LENGTH(64*4+4+64)
@@ -914,6 +918,7 @@ static MACHINE_DRIVER_START( locomotn )
MDRV_IMPORT_FROM(jungler)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MDRV_VIDEO_START(locomotn)
MDRV_VIDEO_UPDATE(locomotn)
@@ -926,6 +931,7 @@ static MACHINE_DRIVER_START( commsega )
MDRV_IMPORT_FROM(jungler)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MDRV_VIDEO_START(commsega)
MDRV_VIDEO_UPDATE(locomotn)
diff --git a/src/mame/drivers/rampart.c b/src/mame/drivers/rampart.c
index 76953823a67..cd70674c516 100644
--- a/src/mame/drivers/rampart.c
+++ b/src/mame/drivers/rampart.c
@@ -392,11 +392,11 @@ static MACHINE_DRIVER_START( rampart )
MDRV_WATCHDOG_VBLANK_INIT(8)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(rampart)
MDRV_PALETTE_LENGTH(512)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS-2 chip to generate video signals */
diff --git a/src/mame/drivers/rastan.c b/src/mame/drivers/rastan.c
index 070c008d340..a39242e2538 100644
--- a/src/mame/drivers/rastan.c
+++ b/src/mame/drivers/rastan.c
@@ -388,15 +388,16 @@ static MACHINE_DRIVER_START( rastan )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(rastan_s_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(rastan)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/rbmk.c b/src/mame/drivers/rbmk.c
index 3bb46e0446c..e599bc0882e 100644
--- a/src/mame/drivers/rbmk.c
+++ b/src/mame/drivers/rbmk.c
@@ -502,15 +502,17 @@ static MACHINE_DRIVER_START( rbmk )
MDRV_CPU_ADD_TAG("main", M68000, 22000000 /2)
MDRV_CPU_PROGRAM_MAP(rbmk_mem,0)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_GFXDECODE(rbmk)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x800)
MDRV_VIDEO_START(rbmk)
diff --git a/src/mame/drivers/rcasino.c b/src/mame/drivers/rcasino.c
index fea6d643688..399c6a161d2 100644
--- a/src/mame/drivers/rcasino.c
+++ b/src/mame/drivers/rcasino.c
@@ -298,11 +298,11 @@ static MACHINE_DRIVER_START( rcasino )
MDRV_CPU_IO_MAP(rcasino_io_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
+ // video hardware
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- // video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/rcorsair.c b/src/mame/drivers/rcorsair.c
index 533eef7c911..298a604d222 100644
--- a/src/mame/drivers/rcorsair.c
+++ b/src/mame/drivers/rcorsair.c
@@ -123,13 +123,13 @@ static MACHINE_DRIVER_START( rcorsair )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
// MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1)
+
MDRV_GFXDECODE(rcorsair)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/realbrk.c b/src/mame/drivers/realbrk.c
index b72657d8e79..0faf08c3897 100644
--- a/src/mame/drivers/realbrk.c
+++ b/src/mame/drivers/realbrk.c
@@ -685,17 +685,16 @@ static MACHINE_DRIVER_START( realbrk )
MDRV_CPU_PROGRAM_MAP(base_mem,realbrk_mem)
MDRV_CPU_VBLANK_INT(realbrk_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET( tmp68301 )
/* video hardware */
- MDRV_SCREEN_ADD("main", 0)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x140, 0xe0)
MDRV_SCREEN_VISIBLE_AREA(0, 0x140-1, 0, 0xe0-1)
+
MDRV_GFXDECODE(realbrk)
MDRV_PALETTE_LENGTH(0x8000)
diff --git a/src/mame/drivers/redclash.c b/src/mame/drivers/redclash.c
index b76001f9a22..42f4140830b 100644
--- a/src/mame/drivers/redclash.c
+++ b/src/mame/drivers/redclash.c
@@ -353,14 +353,14 @@ static MACHINE_DRIVER_START( zerohour )
MDRV_CPU_PROGRAM_MAP(zero_readmem,zero_writemem)
MDRV_CPU_VBLANK_INT(redclash_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 4*8, 28*8-1)
+
MDRV_GFXDECODE(redclash)
MDRV_PALETTE_LENGTH(4*8+4*16+32)
@@ -380,14 +380,14 @@ static MACHINE_DRIVER_START( redclash )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(redclash_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 4*8, 28*8-1)
+
MDRV_GFXDECODE(redclash)
MDRV_PALETTE_LENGTH(4*8+4*16+32)
diff --git a/src/mame/drivers/relief.c b/src/mame/drivers/relief.c
index 44ce37a6602..3fc6b00dd9a 100644
--- a/src/mame/drivers/relief.c
+++ b/src/mame/drivers/relief.c
@@ -330,11 +330,11 @@ static MACHINE_DRIVER_START( relief )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(relief)
MDRV_PALETTE_LENGTH(2048)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses a VAD chip to generate video signals */
diff --git a/src/mame/drivers/renegade.c b/src/mame/drivers/renegade.c
index 9cc4eadd0d4..c4d032576dc 100644
--- a/src/mame/drivers/renegade.c
+++ b/src/mame/drivers/renegade.c
@@ -794,16 +794,17 @@ static MACHINE_DRIVER_START( renegade )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
/* IRQs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */*2)
MDRV_MACHINE_START(renegade)
MDRV_MACHINE_RESET(renegade)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */*2)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 0, 30*8-1)
+
MDRV_GFXDECODE(renegade)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/retofinv.c b/src/mame/drivers/retofinv.c
index 72369e440af..ac02d7831c3 100644
--- a/src/mame/drivers/retofinv.c
+++ b/src/mame/drivers/retofinv.c
@@ -380,15 +380,16 @@ static MACHINE_DRIVER_START( retofinv )
MDRV_CPU_ADD_TAG("68705", M68705,18432000/6) /* 3.072 MHz? */
MDRV_CPU_PROGRAM_MAP(mcu_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame - enough for the sound CPU to read all commands */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(retofinv)
MDRV_PALETTE_LENGTH(256*2+64*16+64*16)
diff --git a/src/mame/drivers/rmhaihai.c b/src/mame/drivers/rmhaihai.c
index 2c6f6c68987..eb133e65e83 100644
--- a/src/mame/drivers/rmhaihai.c
+++ b/src/mame/drivers/rmhaihai.c
@@ -516,14 +516,14 @@ static MACHINE_DRIVER_START( rmhaihai )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(4*8, 60*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(1)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/rockola.c b/src/mame/drivers/rockola.c
index 56246cacbdb..16959551abc 100644
--- a/src/mame/drivers/rockola.c
+++ b/src/mame/drivers/rockola.c
@@ -1083,16 +1083,17 @@ static MACHINE_DRIVER_START( sasuke )
MDRV_CPU_PROGRAM_MAP(sasuke_map, 0)
MDRV_CPU_VBLANK_INT(satansat_interrupt, 2)
- MDRV_SCREEN_REFRESH_RATE((11289000.0 / 16) / (45 * 32 * 8))
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(sasuke)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE((11289000.0 / 16) / (45 * 32 * 8))
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(sasuke)
MDRV_PALETTE_LENGTH(32)
@@ -1100,7 +1101,7 @@ static MACHINE_DRIVER_START( sasuke )
MDRV_VIDEO_START(satansat)
MDRV_VIDEO_UPDATE(rockola)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
// sound hardware
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -1157,16 +1158,17 @@ static MACHINE_DRIVER_START( vanguard )
MDRV_CPU_PROGRAM_MAP(vanguard_map, 0)
MDRV_CPU_VBLANK_INT(rockola_interrupt, 2)
- MDRV_SCREEN_REFRESH_RATE((11289000.0 / 16) / (45 * 32 * 8))
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(vanguard)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE((11289000.0 / 16) / (45 * 32 * 8))
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(vanguard)
MDRV_PALETTE_LENGTH(64)
@@ -1174,7 +1176,7 @@ static MACHINE_DRIVER_START( vanguard )
MDRV_VIDEO_START(rockola)
MDRV_VIDEO_UPDATE(rockola)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
// sound hardware
MDRV_SPEAKER_STANDARD_MONO("mono")
@@ -1231,6 +1233,7 @@ static MACHINE_DRIVER_START( pballoon )
MDRV_MACHINE_RESET(pballoon)
// video hardware
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/rockrage.c b/src/mame/drivers/rockrage.c
index 13cdea4ffa6..923532dc316 100644
--- a/src/mame/drivers/rockrage.c
+++ b/src/mame/drivers/rockrage.c
@@ -301,14 +301,14 @@ static MACHINE_DRIVER_START( rockrage )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(rockrage_readmem_sound,rockrage_writemem_sound)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(rockrage)
MDRV_PALETTE_LENGTH(64 + 2*16*16)
diff --git a/src/mame/drivers/rocnrope.c b/src/mame/drivers/rocnrope.c
index 35dba984622..7fae34ddf1d 100644
--- a/src/mame/drivers/rocnrope.c
+++ b/src/mame/drivers/rocnrope.c
@@ -225,14 +225,14 @@ static MACHINE_DRIVER_START( rocnrope )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(rocnrope)
MDRV_PALETTE_LENGTH(16*16+16*16)
diff --git a/src/mame/drivers/rohga.c b/src/mame/drivers/rohga.c
index fcd025db7f1..e9e29449d71 100644
--- a/src/mame/drivers/rohga.c
+++ b/src/mame/drivers/rohga.c
@@ -822,14 +822,16 @@ static MACHINE_DRIVER_START( rohga )
MDRV_CPU_ADD(H6280,32220000/4/3) /* verified on pcb (8.050Mhz is XIN on pin 10 of H6280 */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(rohga)
MDRV_PALETTE_LENGTH(2048)
@@ -865,14 +867,16 @@ static MACHINE_DRIVER_START( wizdfire )
MDRV_CPU_ADD(H6280,32220000/4/3) /* verified on pcb (8.050Mhz is XIN on pin 10 of H6280 */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM )
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(wizdfire)
MDRV_PALETTE_LENGTH(2048)
@@ -908,14 +912,16 @@ static MACHINE_DRIVER_START( nitrobal )
MDRV_CPU_ADD(H6280,32220000/4/3) /* verified on pcb (8.050Mhz is XIN on pin 10 of H6280 */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM )
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(wizdfire)
MDRV_PALETTE_LENGTH(2048)
@@ -951,14 +957,16 @@ static MACHINE_DRIVER_START( schmeisr )
MDRV_CPU_ADD(H6280,32220000/4/3) /* verified on pcb (8.050Mhz is XIN on pin 10 of H6280 */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(schmeisr)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/rollerg.c b/src/mame/drivers/rollerg.c
index ddee0e61951..f088a6eba9a 100644
--- a/src/mame/drivers/rollerg.c
+++ b/src/mame/drivers/rollerg.c
@@ -253,15 +253,18 @@ static MACHINE_DRIVER_START( rollerg )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
/* NMIs are generated by the 053260 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(rollerg)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(1024)
MDRV_VIDEO_START(rollerg)
diff --git a/src/mame/drivers/rollrace.c b/src/mame/drivers/rollrace.c
index 1d436088423..10fa3e8dcf0 100644
--- a/src/mame/drivers/rollrace.c
+++ b/src/mame/drivers/rollrace.c
@@ -244,14 +244,14 @@ static MACHINE_DRIVER_START( rollrace )
MDRV_CPU_PROGRAM_MAP(readmem_snd,writemem_snd)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,4)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(16,255,16, 255-16)
+
MDRV_GFXDECODE(rollrace)
MDRV_PALETTE_LENGTH(256)
@@ -276,6 +276,7 @@ static MACHINE_DRIVER_START( rollace2 )
/* basic machine hardware */
MDRV_IMPORT_FROM(rollrace)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0,255-24,16, 255-16)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/rotaryf.c b/src/mame/drivers/rotaryf.c
index dd195e92b8a..f47b6caceb2 100644
--- a/src/mame/drivers/rotaryf.c
+++ b/src/mame/drivers/rotaryf.c
@@ -152,13 +152,11 @@ static MACHINE_DRIVER_START( rotaryf )
MDRV_CPU_PROGRAM_MAP(rotaryf_map,0)
MDRV_CPU_IO_MAP(rotaryf_io_map,0)
MDRV_CPU_VBLANK_INT(rotaryf_interrupt,5)
- MDRV_SCREEN_REFRESH_RATE(60)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(rotaryf)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*8, 262) /* vert size is a guess, taken from mw8080bw */
MDRV_SCREEN_VISIBLE_AREA(1*8, 30*8-1, 0*8, 32*8-1)
diff --git a/src/mame/drivers/route16.c b/src/mame/drivers/route16.c
index cc01b8b7a26..ccb7568a428 100644
--- a/src/mame/drivers/route16.c
+++ b/src/mame/drivers/route16.c
@@ -615,10 +615,9 @@ static MACHINE_DRIVER_START( route16 )
MDRV_CPU_PROGRAM_MAP(route16_cpu2_map,0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(route16)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1)
diff --git a/src/mame/drivers/royalmah.c b/src/mame/drivers/royalmah.c
index a791acb2723..3f4f11e7e2b 100644
--- a/src/mame/drivers/royalmah.c
+++ b/src/mame/drivers/royalmah.c
@@ -3320,12 +3320,11 @@ static MACHINE_DRIVER_START( royalmah )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(royalmah)
MDRV_PALETTE_LENGTH(16*2)
MDRV_PALETTE_INIT(royalmah)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 255)
@@ -3418,6 +3417,7 @@ static MACHINE_DRIVER_START( janptr96 )
MDRV_CPU_IO_MAP(janptr96_iomap,0)
MDRV_CPU_VBLANK_INT(janptr96_interrupt,3) /* IM 2 needs a vector on the data bus */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 9, 255-8)
MACHINE_DRIVER_END
@@ -3429,6 +3429,7 @@ static MACHINE_DRIVER_START( mjifb )
MDRV_CPU_IO_MAP(mjifb_iomap,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 8, 255-8)
MACHINE_DRIVER_END
@@ -3440,6 +3441,7 @@ static MACHINE_DRIVER_START( mjdejavu )
MDRV_CPU_IO_MAP(mjifb_iomap,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 8, 255-8)
MACHINE_DRIVER_END
@@ -3460,6 +3462,7 @@ static MACHINE_DRIVER_START( mjtensin )
MDRV_CPU_IO_MAP(mjtensin_iomap,0)
MDRV_CPU_VBLANK_INT( mjtensin_interrupt,2 )
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 8, 255-8)
MACHINE_DRIVER_END
@@ -3470,6 +3473,7 @@ static MACHINE_DRIVER_START( cafetime )
MDRV_CPU_IO_MAP(cafetime_iomap,0)
MDRV_CPU_VBLANK_INT(mjtensin_interrupt,2)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 255, 8, 255-8)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/rpunch.c b/src/mame/drivers/rpunch.c
index cf23d25cb64..064ccf5d806 100644
--- a/src/mame/drivers/rpunch.c
+++ b/src/mame/drivers/rpunch.c
@@ -509,15 +509,15 @@ static MACHINE_DRIVER_START( rpunch )
MDRV_CPU_ADD(Z80, MASTER_CLOCK/4)
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(rpunch)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(304, 224)
MDRV_SCREEN_VISIBLE_AREA(8, 303-8, 0, 223-8)
+
MDRV_GFXDECODE(rpunch)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/runaway.c b/src/mame/drivers/runaway.c
index 90f7852730e..60b597dfef8 100644
--- a/src/mame/drivers/runaway.c
+++ b/src/mame/drivers/runaway.c
@@ -358,16 +358,16 @@ static MACHINE_DRIVER_START( runaway )
MDRV_CPU_ADD(M6502, 12096000 / 8) /* ? */
MDRV_CPU_PROGRAM_MAP(readmem, writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(runaway)
MDRV_NVRAM_HANDLER(atari_vg)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 263)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
+
MDRV_GFXDECODE(runaway)
MDRV_PALETTE_LENGTH(16)
diff --git a/src/mame/drivers/rungun.c b/src/mame/drivers/rungun.c
index e6e1092e935..f046d6693a2 100644
--- a/src/mame/drivers/rungun.c
+++ b/src/mame/drivers/rungun.c
@@ -339,8 +339,6 @@ static MACHINE_DRIVER_START( rng )
MDRV_CPU_PERIODIC_INT(audio_interrupt, 480)
MDRV_INTERLEAVE(100) // higher if sound stutters
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_GFXDECODE(rungun)
@@ -348,10 +346,15 @@ static MACHINE_DRIVER_START( rng )
MDRV_NVRAM_HANDLER(rungun)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(88, 88+384-1, 24, 24+224-1)
+
MDRV_PALETTE_LENGTH(1024)
MDRV_VIDEO_START(rng)
diff --git a/src/mame/drivers/safarir.c b/src/mame/drivers/safarir.c
index bb557db90b8..cac12a19c01 100644
--- a/src/mame/drivers/safarir.c
+++ b/src/mame/drivers/safarir.c
@@ -268,14 +268,13 @@ static MACHINE_DRIVER_START( safarir )
MDRV_MACHINE_START(safarir)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(safarir)
MDRV_VIDEO_UPDATE(safarir)
MDRV_PALETTE_INIT(safarir)
MDRV_PALETTE_LENGTH(2*8)
MDRV_GFXDECODE(safarir)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 26*8-1)
diff --git a/src/mame/drivers/sandscrp.c b/src/mame/drivers/sandscrp.c
index fb4778c8922..187eafc83f4 100644
--- a/src/mame/drivers/sandscrp.c
+++ b/src/mame/drivers/sandscrp.c
@@ -441,17 +441,18 @@ static MACHINE_DRIVER_START( sandscrp )
MDRV_CPU_PROGRAM_MAP(sandscrp_soundmem,0)
MDRV_CPU_IO_MAP(sandscrp_soundport,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME( ATTOSECONDS_IN_USEC(2500) /* not accurate */ )
MDRV_WATCHDOG_TIME_INIT(ATTOTIME_IN_SEC(3)) /* a guess, and certainly wrong */
MDRV_MACHINE_RESET(sandscrp)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME( ATTOSECONDS_IN_USEC(2500) /* not accurate */ )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(sandscrp)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/sangho.c b/src/mame/drivers/sangho.c
index 23fccd43337..9ed1117a99a 100644
--- a/src/mame/drivers/sangho.c
+++ b/src/mame/drivers/sangho.c
@@ -237,13 +237,15 @@ static MACHINE_DRIVER_START(pzlestar)
MDRV_CPU_IO_MAP(readport_pzlestar,writeport_pzlestar)
MDRV_CPU_VBLANK_INT(sangho_interrupt,262)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512 + 32, (212 + 28) * 2)
MDRV_SCREEN_VISIBLE_AREA(0, 512 + 32 - 1, 0, (212 + 28) * 2 - 1)
+
MDRV_PALETTE_LENGTH(512)
MDRV_MACHINE_RESET(pzlestar)
@@ -268,13 +270,15 @@ static MACHINE_DRIVER_START(sexyboom )
MDRV_CPU_IO_MAP(readport_sexyboom,writeport_sexyboom)
MDRV_CPU_VBLANK_INT(sangho_interrupt,262)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512 + 32, (212 + 28) * 2)
MDRV_SCREEN_VISIBLE_AREA(0, 512 + 32 - 1, 0, (212 + 28) * 2 - 1)
+
MDRV_PALETTE_LENGTH(512)
MDRV_MACHINE_RESET(sexyboom)
diff --git a/src/mame/drivers/sauro.c b/src/mame/drivers/sauro.c
index e1c8136e9e1..800391f6463 100644
--- a/src/mame/drivers/sauro.c
+++ b/src/mame/drivers/sauro.c
@@ -365,14 +365,14 @@ static MACHINE_DRIVER_START( tecfri )
MDRV_CPU_ADD_TAG("main", Z80, 4000000) // 4 MHz???
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(5000)) // frames per second, vblank duration (otherwise sprites lag)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32 * 8, 32 * 8)
MDRV_SCREEN_VISIBLE_AREA(1 * 8, 31 * 8 - 1, 2 * 8, 30 * 8 - 1)
+
MDRV_PALETTE_LENGTH(1024)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
diff --git a/src/mame/drivers/sbasketb.c b/src/mame/drivers/sbasketb.c
index 6b380c60173..8742e2049d6 100644
--- a/src/mame/drivers/sbasketb.c
+++ b/src/mame/drivers/sbasketb.c
@@ -246,14 +246,14 @@ static MACHINE_DRIVER_START( sbasketb )
/* audio CPU */ /* 3.5795 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(sbasketb)
MDRV_PALETTE_LENGTH(16*16+16*16*16)
diff --git a/src/mame/drivers/sbowling.c b/src/mame/drivers/sbowling.c
index 544dbfbd81e..ee039b8eafb 100644
--- a/src/mame/drivers/sbowling.c
+++ b/src/mame/drivers/sbowling.c
@@ -331,14 +331,15 @@ static MACHINE_DRIVER_START( sbowling )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_IO_MAP(port_map,0)
MDRV_CPU_VBLANK_INT(sbw_interrupt, 2)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_GFXDECODE(sbowling)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 262) /* vert size taken from mw8080bw */
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 4*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(sbowling)
MDRV_VIDEO_START(sbowling)
diff --git a/src/mame/drivers/sbrkout.c b/src/mame/drivers/sbrkout.c
index 7dad6f785bf..50d21041f90 100644
--- a/src/mame/drivers/sbrkout.c
+++ b/src/mame/drivers/sbrkout.c
@@ -486,11 +486,10 @@ static MACHINE_DRIVER_START( sbrkout )
MDRV_WATCHDOG_VBLANK_INIT(8)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(sbrkout)
MDRV_PALETTE_LENGTH(2)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(MAIN_CLOCK/2, 384, 0, 256, 262, 0, 224)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
diff --git a/src/mame/drivers/sbugger.c b/src/mame/drivers/sbugger.c
index 8dc31cd2020..7375b26c404 100644
--- a/src/mame/drivers/sbugger.c
+++ b/src/mame/drivers/sbugger.c
@@ -231,15 +231,16 @@ static MACHINE_DRIVER_START( sbugger )
MDRV_CPU_IO_MAP(readport,0)
MDRV_CPU_VBLANK_INT(irq3_line_hold,NUM_INTS_FRAME)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(sbugger)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(512)
MDRV_PALETTE_INIT(sbugger)
diff --git a/src/mame/drivers/scobra.c b/src/mame/drivers/scobra.c
index c2e8b1837e2..66ce127aa7a 100644
--- a/src/mame/drivers/scobra.c
+++ b/src/mame/drivers/scobra.c
@@ -1386,9 +1386,6 @@ static MACHINE_DRIVER_START( type1 )
MDRV_CPU_ADD_TAG("main", Z80, 18432000/6) /* 3.072 MHz */
MDRV_CPU_PROGRAM_MAP(type1_readmem,type1_writemem)
- MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_CPU_ADD(Z80,14318000/8)
/* audio CPU */ /* 1.78975 MHz */
MDRV_CPU_PROGRAM_MAP(scobra_sound_readmem,scobra_sound_writemem)
@@ -1397,10 +1394,13 @@ static MACHINE_DRIVER_START( type1 )
MDRV_MACHINE_RESET(scramble)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(scobra)
MDRV_PALETTE_LENGTH(32+64+2+1) /* 32 for characters, 64 for stars, 2 for bullets, 1 for background */
@@ -1454,7 +1454,7 @@ static MACHINE_DRIVER_START( rescue )
MDRV_IMPORT_FROM(type1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER) /* needs fine color resolution for the gradient background */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_PALETTE_LENGTH(32+64+2+128) /* 32 for characters, 64 for stars, 2 for bullets, 128 for background */
@@ -1469,7 +1469,7 @@ static MACHINE_DRIVER_START( minefld )
MDRV_IMPORT_FROM(type1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER) /* needs fine color resolution for the gradient background */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_PALETTE_LENGTH(32+64+2+256) /* 32 for characters, 64 for stars, 2 for bullets, 256 for background */
@@ -1543,9 +1543,6 @@ static MACHINE_DRIVER_START( hustler )
MDRV_CPU_ADD_TAG("main", Z80, 18432000/6) /* 3.072 MHz */
MDRV_CPU_PROGRAM_MAP(hustler_readmem,hustler_writemem)
- MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_CPU_ADD_TAG("sound",Z80,14318000/8)
/* audio CPU */ /* 1.78975 MHz */
MDRV_CPU_PROGRAM_MAP(hustler_sound_readmem,hustler_sound_writemem)
@@ -1554,10 +1551,13 @@ static MACHINE_DRIVER_START( hustler )
MDRV_MACHINE_RESET(scramble)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(scobra)
MDRV_PALETTE_LENGTH(32+64+2) /* 32 for characters, 64 for stars, 2 for bullets */
diff --git a/src/mame/drivers/scotrsht.c b/src/mame/drivers/scotrsht.c
index 8df663781b3..b1ce78bcb1b 100644
--- a/src/mame/drivers/scotrsht.c
+++ b/src/mame/drivers/scotrsht.c
@@ -233,14 +233,14 @@ static MACHINE_DRIVER_START( scotrsht )
MDRV_CPU_PROGRAM_MAP(scotrsht_sound_map,0)
MDRV_CPU_IO_MAP(scotrsht_sound_port,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(scotrsht)
MDRV_PALETTE_LENGTH(16*8*16+16*8*16)
diff --git a/src/mame/drivers/scramble.c b/src/mame/drivers/scramble.c
index b984d5eef9f..4fbf68c1985 100644
--- a/src/mame/drivers/scramble.c
+++ b/src/mame/drivers/scramble.c
@@ -1991,9 +1991,6 @@ static MACHINE_DRIVER_START( scramble )
MDRV_CPU_ADD_TAG("main", Z80, 18432000/6) /* 3.072 MHz */
MDRV_CPU_PROGRAM_MAP(scramble_readmem,scramble_writemem)
- MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_CPU_ADD_TAG("audio", Z80, 14318000/8) /* 1.78975 MHz */
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(scramble_sound_readmem,scramble_sound_writemem)
@@ -2002,10 +1999,13 @@ static MACHINE_DRIVER_START( scramble )
MDRV_MACHINE_RESET(scramble)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(scramble)
MDRV_PALETTE_LENGTH(32+64+2+1) /* 32 for characters, 64 for stars, 2 for bullets, 0/1 for background */
@@ -2288,6 +2288,7 @@ static MACHINE_DRIVER_START( sfx )
MDRV_MACHINE_RESET(sfx)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(2*8, 30*8-1, 2*8, 30*8-1)
MDRV_PALETTE_LENGTH(32+64+2+8) /* 32 for characters, 64 for stars, 2 for bullets, 8 for background */
MDRV_GFXDECODE(sfx)
@@ -2331,6 +2332,7 @@ static MACHINE_DRIVER_START( monsterz )
MDRV_MACHINE_RESET(monsterz)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(2*8, 30*8-1, 2*8, 30*8-1)
MDRV_PALETTE_LENGTH(32+64+2+8) /* 32 for characters, 64 for stars, 2 for bullets, 8 for background */
MDRV_GFXDECODE(sfx)
@@ -2406,6 +2408,7 @@ static MACHINE_DRIVER_START( hunchbks )
MDRV_CPU_IO_MAP(hunchbks_readport,0)
MDRV_CPU_VBLANK_INT(hunchbks_vh_interrupt,1)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
/* video hardware */
@@ -2454,14 +2457,14 @@ static MACHINE_DRIVER_START( ad2083 )
MDRV_MACHINE_RESET(galaxian)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(16000.0/132/2)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(ad2083)
MDRV_PALETTE_LENGTH(32+64+2+8) /* 32 for characters, 64 for stars, 2 for bullets, 8 for background */
diff --git a/src/mame/drivers/scregg.c b/src/mame/drivers/scregg.c
index 0daf248f5d1..755c2285002 100644
--- a/src/mame/drivers/scregg.c
+++ b/src/mame/drivers/scregg.c
@@ -234,14 +234,14 @@ static MACHINE_DRIVER_START( dommy )
MDRV_CPU_PROGRAM_MAP(dommy_readmem,dommy_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,16)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(3072) /* frames per second, vblank duration taken from Burger Time */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(scregg)
MDRV_PALETTE_LENGTH(8)
@@ -267,14 +267,14 @@ static MACHINE_DRIVER_START( scregg )
MDRV_CPU_PROGRAM_MAP(eggs_readmem,eggs_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,16)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(3072) /* frames per second, vblank duration taken from Burger Time */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(scregg)
MDRV_PALETTE_LENGTH(8)
diff --git a/src/mame/drivers/sderby.c b/src/mame/drivers/sderby.c
index 06087f69244..aecb77dd504 100644
--- a/src/mame/drivers/sderby.c
+++ b/src/mame/drivers/sderby.c
@@ -255,15 +255,16 @@ static MACHINE_DRIVER_START( sderby )
MDRV_CPU_PROGRAM_MAP(sderby_readmem,sderby_writemem)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(sderby)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(4*8, 44*8-1, 3*8, 33*8-1)
+
MDRV_PALETTE_LENGTH(0x1000)
MDRV_VIDEO_START(sderby)
@@ -282,15 +283,16 @@ static MACHINE_DRIVER_START( pmroulet )
MDRV_CPU_PROGRAM_MAP(roulette_map,0)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_GFXDECODE(sderby)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(4*8, 44*8-1, 3*8, 33*8-1)
+
MDRV_PALETTE_LENGTH(0x1000)
MDRV_VIDEO_START(sderby)
diff --git a/src/mame/drivers/seattle.c b/src/mame/drivers/seattle.c
index f709ffa7d0b..fa83eaebc72 100644
--- a/src/mame/drivers/seattle.c
+++ b/src/mame/drivers/seattle.c
@@ -2462,13 +2462,12 @@ static MACHINE_DRIVER_START( seattle_common )
MDRV_CPU_CONFIG(config)
MDRV_CPU_PROGRAM_MAP(seattle_map,0)
- MDRV_SCREEN_REFRESH_RATE(57)
-
MDRV_MACHINE_RESET(seattle)
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(640, 480)
MDRV_SCREEN_VISIBLE_AREA(0, 639, 0, 479)
diff --git a/src/mame/drivers/segac2.c b/src/mame/drivers/segac2.c
index 41b44ec207c..45bd76ea219 100644
--- a/src/mame/drivers/segac2.c
+++ b/src/mame/drivers/segac2.c
@@ -1367,17 +1367,19 @@ static MACHINE_DRIVER_START( segac )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_VBLANK_INT(genesis_vblank_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_START(segac2)
MDRV_MACHINE_RESET(segac2)
MDRV_NVRAM_HANDLER(generic_randfill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(342,262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 223)
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(segac2)
diff --git a/src/mame/drivers/segae.c b/src/mame/drivers/segae.c
index 9ec1bb2136a..ba83a0dbcb2 100644
--- a/src/mame/drivers/segae.c
+++ b/src/mame/drivers/segae.c
@@ -2045,14 +2045,13 @@ static MACHINE_DRIVER_START( systeme )
MDRV_CPU_IO_MAP(sms_readport,sms_writeport)
/* IRQ handled via the timers */
+ MDRV_MACHINE_RESET(systeme)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) // Vblank handled manually.
- MDRV_MACHINE_RESET(systeme)
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
-
MDRV_SCREEN_SIZE(256, 256)
// MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 223)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 191)
diff --git a/src/mame/drivers/segag80r.c b/src/mame/drivers/segag80r.c
index 1fb30c193fc..dca0f57701e 100644
--- a/src/mame/drivers/segag80r.c
+++ b/src/mame/drivers/segag80r.c
@@ -823,17 +823,13 @@ static MACHINE_DRIVER_START( g80r_base )
MDRV_CPU_IO_MAP(main_portmap,0)
MDRV_CPU_VBLANK_INT(segag80r_vblank_start,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(g80r)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(segag80r)
MDRV_PALETTE_LENGTH(64)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
@@ -872,7 +868,8 @@ static MACHINE_DRIVER_START( spaceod )
MDRV_IMPORT_FROM(g80r_base)
/* background board changes */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_ALWAYS_UPDATE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_GFXDECODE(spaceod)
MDRV_PALETTE_LENGTH(64+64)
diff --git a/src/mame/drivers/segag80v.c b/src/mame/drivers/segag80v.c
index 64d7ed13191..50b523a20fa 100644
--- a/src/mame/drivers/segag80v.c
+++ b/src/mame/drivers/segag80v.c
@@ -918,14 +918,13 @@ static MACHINE_DRIVER_START( g80v_base )
MDRV_MACHINE_START(g80v)
MDRV_MACHINE_RESET(g80v)
- MDRV_SCREEN_REFRESH_RATE(40)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(40)
MDRV_SCREEN_SIZE(400, 300)
MDRV_SCREEN_VISIBLE_AREA(512, 1536, 640-32, 1408+32)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(sega)
diff --git a/src/mame/drivers/segahang.c b/src/mame/drivers/segahang.c
index 992eb874ddc..76b256eee78 100644
--- a/src/mame/drivers/segahang.c
+++ b/src/mame/drivers/segahang.c
@@ -850,17 +850,14 @@ static MACHINE_DRIVER_START( hangon_base )
MDRV_CPU_ADD_TAG("sub", M68000, MASTER_CLOCK_25MHz/4)
MDRV_CPU_PROGRAM_MAP(sub_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(hangon)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(segahang)
MDRV_PALETTE_LENGTH(2048*3)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK_25MHz/4, 400, 0, 320, 262, 0, 224)
diff --git a/src/mame/drivers/segald.c b/src/mame/drivers/segald.c
index 602f1e64252..f92a3e3be52 100644
--- a/src/mame/drivers/segald.c
+++ b/src/mame/drivers/segald.c
@@ -352,8 +352,8 @@ static MACHINE_DRIVER_START( astron )
MDRV_MACHINE_START(astron)
/* video */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/segaorun.c b/src/mame/drivers/segaorun.c
index 1ed900b1193..85483594bd7 100644
--- a/src/mame/drivers/segaorun.c
+++ b/src/mame/drivers/segaorun.c
@@ -824,17 +824,14 @@ static MACHINE_DRIVER_START( outrundx )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_IO_MAP(sound_portmap,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(outrun)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(segaorun)
MDRV_PALETTE_LENGTH(4096*3)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/8, 400, 0, 320, 262, 0, 224)
diff --git a/src/mame/drivers/segas16a.c b/src/mame/drivers/segas16a.c
index c9b47fc3759..7a6930aaf4c 100644
--- a/src/mame/drivers/segas16a.c
+++ b/src/mame/drivers/segas16a.c
@@ -1790,16 +1790,16 @@ static MACHINE_DRIVER_START( system16a )
MDRV_CPU_PROGRAM_MAP(n7751_map,0)
MDRV_CPU_IO_MAP(n7751_portmap,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(system16a)
MDRV_NVRAM_HANDLER(system16a)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(342,262) /* to be verified */
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(segas16a)
MDRV_PALETTE_LENGTH(2048*3)
diff --git a/src/mame/drivers/segas16b.c b/src/mame/drivers/segas16b.c
index 442059a2e24..ad43c5d39ef 100644
--- a/src/mame/drivers/segas16b.c
+++ b/src/mame/drivers/segas16b.c
@@ -3223,17 +3223,14 @@ static MACHINE_DRIVER_START( system16b )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_IO_MAP(sound_portmap,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(system16b)
MDRV_NVRAM_HANDLER(system16b)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(segas16b)
MDRV_PALETTE_LENGTH(2048*3)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK_25MHz/4, 400, 0, 320, 262, 0, 224)
diff --git a/src/mame/drivers/segas18.c b/src/mame/drivers/segas18.c
index 0ada3f33227..4cd643ce0ac 100644
--- a/src/mame/drivers/segas18.c
+++ b/src/mame/drivers/segas18.c
@@ -1265,16 +1265,16 @@ static MACHINE_DRIVER_START( system18 )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_IO_MAP(sound_portmap,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(system18)
MDRV_NVRAM_HANDLER(system18)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(342,262)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(segas18)
MDRV_PALETTE_LENGTH(2048*3+2048)
diff --git a/src/mame/drivers/segas24.c b/src/mame/drivers/segas24.c
index 64a009b7fed..513a7a90c24 100644
--- a/src/mame/drivers/segas24.c
+++ b/src/mame/drivers/segas24.c
@@ -1913,18 +1913,21 @@ static MACHINE_DRIVER_START( system24 )
MDRV_CPU_ADD(M68000, 10000000)
MDRV_CPU_PROGRAM_MAP(system24_cpu2_map, 0)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(100))
MDRV_INTERLEAVE(4)
MDRV_MACHINE_START(system24)
MDRV_MACHINE_RESET(system24)
MDRV_NVRAM_HANDLER(system24)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(100))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(62*8, 48*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 62*8-1, 0*8, 48*8-1)
+
MDRV_PALETTE_LENGTH(8192*2)
MDRV_VIDEO_START(system24)
diff --git a/src/mame/drivers/segas32.c b/src/mame/drivers/segas32.c
index 45005d4d156..430d604b583 100644
--- a/src/mame/drivers/segas32.c
+++ b/src/mame/drivers/segas32.c
@@ -2202,11 +2202,10 @@ static MACHINE_DRIVER_START( system32 )
MDRV_NVRAM_HANDLER(system32)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_GFXDECODE(segas32)
MDRV_PALETTE_LENGTH(0x4000)
- MDRV_SCREEN_ADD("main", 0x000)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(52*8, 262)
@@ -2257,18 +2256,17 @@ static MACHINE_DRIVER_START( multi32 )
MDRV_NVRAM_HANDLER(system32)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_GFXDECODE(segas32)
MDRV_PALETTE_LENGTH(0x8000)
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(52*8, 262)
MDRV_SCREEN_VISIBLE_AREA(0*8, 52*8-1, 0*8, 28*8-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(52*8, 262)
diff --git a/src/mame/drivers/segaxbd.c b/src/mame/drivers/segaxbd.c
index 024aa56a0e8..a07144994fb 100644
--- a/src/mame/drivers/segaxbd.c
+++ b/src/mame/drivers/segaxbd.c
@@ -1140,18 +1140,15 @@ static MACHINE_DRIVER_START( xboard )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_IO_MAP(sound_portmap,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(xboard)
MDRV_NVRAM_HANDLER(xboard)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(segaxbd)
MDRV_PALETTE_LENGTH(8192*3)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK/8, 400, 0, 320, 262, 0, 224)
diff --git a/src/mame/drivers/segaybd.c b/src/mame/drivers/segaybd.c
index a560aee4ee6..004c07ecc0a 100644
--- a/src/mame/drivers/segaybd.c
+++ b/src/mame/drivers/segaybd.c
@@ -971,17 +971,17 @@ static MACHINE_DRIVER_START( yboard )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_IO_MAP(sound_portmap,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(yboard)
MDRV_NVRAM_HANDLER(yboard)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(342,262) /* to be verified */
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
+
MDRV_PALETTE_LENGTH(8192*3)
MDRV_VIDEO_START(yboard)
diff --git a/src/mame/drivers/seibuspi.c b/src/mame/drivers/seibuspi.c
index ddf7d9b62a2..0617e523b60 100644
--- a/src/mame/drivers/seibuspi.c
+++ b/src/mame/drivers/seibuspi.c
@@ -1786,18 +1786,19 @@ static MACHINE_DRIVER_START( spi )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(spisound_map, 0)
- MDRV_SCREEN_REFRESH_RATE(54)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(200)
MDRV_MACHINE_RESET(spi)
MDRV_NVRAM_HANDLER(spi)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(54)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(spi)
MDRV_PALETTE_LENGTH(6144)
@@ -2100,17 +2101,17 @@ static MACHINE_DRIVER_START( seibu386 )
MDRV_CPU_PROGRAM_MAP(seibu386_map, 0)
MDRV_CPU_VBLANK_INT(spi_interrupt, 1)
- MDRV_SCREEN_REFRESH_RATE(54)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(sxx2f)
MDRV_MACHINE_RESET(seibu386)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(54)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(spi)
MDRV_PALETTE_LENGTH(6144)
diff --git a/src/mame/drivers/seicross.c b/src/mame/drivers/seicross.c
index dd2e796585d..ce21a43ed5f 100644
--- a/src/mame/drivers/seicross.c
+++ b/src/mame/drivers/seicross.c
@@ -409,18 +409,19 @@ static MACHINE_DRIVER_START( nvram )
MDRV_CPU_ADD_TAG("mcu", NSC8105, 6000000) /* ??? */
MDRV_CPU_PROGRAM_MAP(mcu_nvram_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */ /* frames per second, vblank duration */)
MDRV_INTERLEAVE(20) /* 20 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
MDRV_MACHINE_RESET(friskyt)
MDRV_NVRAM_HANDLER(seicross)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */ /* frames per second, vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(seicross)
MDRV_PALETTE_LENGTH(64)
diff --git a/src/mame/drivers/sengokmj.c b/src/mame/drivers/sengokmj.c
index 4a81067bc8e..14e4c4b2fc7 100644
--- a/src/mame/drivers/sengokmj.c
+++ b/src/mame/drivers/sengokmj.c
@@ -293,16 +293,16 @@ static MACHINE_DRIVER_START( sengokmj )
SEIBU_SOUND_SYSTEM_CPU(14318180/4)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(16*8, 56*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(sengokmj)
MDRV_PALETTE_LENGTH(0x800)
diff --git a/src/mame/drivers/senjyo.c b/src/mame/drivers/senjyo.c
index 3c7c5fadf88..7f5af20e514 100644
--- a/src/mame/drivers/senjyo.c
+++ b/src/mame/drivers/senjyo.c
@@ -672,16 +672,16 @@ static MACHINE_DRIVER_START( senjyo )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(senjyo)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(senjyo)
MDRV_PALETTE_LENGTH(512+2) /* 512 real palette + 2 for the radar */
diff --git a/src/mame/drivers/seta.c b/src/mame/drivers/seta.c
index 9b1cc1ca8a9..cef07d58161 100644
--- a/src/mame/drivers/seta.c
+++ b/src/mame/drivers/seta.c
@@ -6692,14 +6692,14 @@ static MACHINE_DRIVER_START( tndrcade )
MDRV_CPU_PROGRAM_MAP(tndrcade_sub_readmem,tndrcade_sub_writemem)
MDRV_CPU_VBLANK_INT(tndrcade_sub_interrupt,TNDRCADE_SUB_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tndrcade)
MDRV_PALETTE_LENGTH(512) /* sprites only */
@@ -6742,14 +6742,14 @@ static MACHINE_DRIVER_START( twineagl )
MDRV_CPU_PROGRAM_MAP(twineagl_sub_readmem,twineagl_sub_writemem)
MDRV_CPU_VBLANK_INT(seta_sub_interrupt,SETA_SUB_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(downtown)
MDRV_PALETTE_LENGTH(512)
@@ -6784,14 +6784,14 @@ static MACHINE_DRIVER_START( downtown )
MDRV_CPU_PROGRAM_MAP(downtown_sub_readmem,downtown_sub_writemem)
MDRV_CPU_VBLANK_INT(seta_sub_interrupt,SETA_SUB_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(downtown)
MDRV_PALETTE_LENGTH(512)
@@ -6844,14 +6844,14 @@ static MACHINE_DRIVER_START( usclssic )
MDRV_CPU_PROGRAM_MAP(calibr50_sub_readmem,calibr50_sub_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1) /* NMI caused by main cpu when writing to the sound latch */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(usclssic)
MDRV_PALETTE_LENGTH(16*32 + 64*32) /* sprites, layer */
@@ -6889,14 +6889,15 @@ static MACHINE_DRIVER_START( calibr50 )
MDRV_CPU_PROGRAM_MAP(calibr50_sub_readmem,calibr50_sub_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4) /* IRQ: 4/frame
NMI: when the 68k writes the sound latch */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(downtown)
MDRV_PALETTE_LENGTH(512)
@@ -6930,14 +6931,14 @@ static MACHINE_DRIVER_START( metafox )
MDRV_CPU_PROGRAM_MAP(metafox_sub_readmem,metafox_sub_writemem)
MDRV_CPU_VBLANK_INT(seta_sub_interrupt,SETA_SUB_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(downtown)
MDRV_PALETTE_LENGTH(512)
@@ -6969,14 +6970,14 @@ static MACHINE_DRIVER_START( atehate )
MDRV_CPU_PROGRAM_MAP(atehate_readmem,atehate_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_1_and_2,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tndrcade)
MDRV_PALETTE_LENGTH(512) /* sprites only */
@@ -7011,14 +7012,14 @@ static MACHINE_DRIVER_START( blandia )
MDRV_CPU_VBLANK_INT(seta_interrupt_2_and_4,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(blandia)
MDRV_PALETTE_LENGTH(16*32+64*32+64*32) /* sprites, layer1, layer2 */
@@ -7043,14 +7044,14 @@ static MACHINE_DRIVER_START( blandiap )
MDRV_CPU_PROGRAM_MAP(blandiap_readmem,blandiap_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_2_and_4,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(blandia)
MDRV_PALETTE_LENGTH(16*32+64*32+64*32) /* sprites, layer1, layer2 */
@@ -7080,14 +7081,14 @@ static MACHINE_DRIVER_START( blockcar )
MDRV_CPU_PROGRAM_MAP(blockcar_readmem,blockcar_writemem)
MDRV_CPU_VBLANK_INT(irq3_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tndrcade)
MDRV_PALETTE_LENGTH(512) /* sprites only */
@@ -7115,14 +7116,14 @@ static MACHINE_DRIVER_START( daioh )
MDRV_CPU_PROGRAM_MAP(daioh_readmem,daioh_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_1_and_2,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(msgundam)
MDRV_PALETTE_LENGTH(512 * 3) /* sprites, layer1, layer2 */
@@ -7155,14 +7156,14 @@ static MACHINE_DRIVER_START( drgnunit )
MDRV_CPU_PROGRAM_MAP(drgnunit_readmem,drgnunit_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_1_and_2,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(downtown)
MDRV_PALETTE_LENGTH(512)
@@ -7189,14 +7190,14 @@ static MACHINE_DRIVER_START( qzkklgy2 )
MDRV_CPU_PROGRAM_MAP(drgnunit_readmem,drgnunit_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_1_and_2,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(qzkklgy2)
MDRV_PALETTE_LENGTH(512)
@@ -7225,14 +7226,14 @@ static MACHINE_DRIVER_START( eightfrc )
MDRV_CPU_PROGRAM_MAP(wrofaero_readmem,wrofaero_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_1_and_2,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(msgundam)
MDRV_PALETTE_LENGTH(512 * 3) /* sprites, layer1, layer2 */
@@ -7265,14 +7266,14 @@ static MACHINE_DRIVER_START( extdwnhl )
MDRV_CPU_PROGRAM_MAP(extdwnhl_readmem,extdwnhl_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_1_and_2,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(zingzip)
MDRV_PALETTE_LENGTH(16*32+16*32+64*32) /* sprites, layer2, layer1 */
@@ -7322,18 +7323,18 @@ static MACHINE_DRIVER_START( gundhara )
MDRV_CPU_VBLANK_INT(seta_interrupt_2_and_4,SETA_INTERRUPTS_NUM)
#endif // __uPD71054_TIMER
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
#if __uPD71054_TIMER
MDRV_MACHINE_RESET( wrofaero )
#endif // __uPD71054_TIMER
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(jjsquawk)
MDRV_PALETTE_LENGTH(16*32+64*32+64*32) /* sprites, layer2, layer1 */
@@ -7366,14 +7367,14 @@ static MACHINE_DRIVER_START( jjsquawk )
MDRV_CPU_PROGRAM_MAP(wrofaero_readmem,wrofaero_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_1_and_2,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(jjsquawk)
MDRV_PALETTE_LENGTH(16*32+64*32+64*32) /* sprites, layer2, layer1 */
@@ -7402,18 +7403,18 @@ static MACHINE_DRIVER_START( kamenrid )
MDRV_CPU_PROGRAM_MAP(kamenrid_readmem,kamenrid_writemem)
MDRV_CPU_VBLANK_INT( wrofaero_interrupt, 1 )
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
#if __uPD71054_TIMER
MDRV_MACHINE_RESET( wrofaero )
#endif // __uPD71054_TIMER
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(msgundam)
MDRV_PALETTE_LENGTH(512 * 3) /* sprites, layer2, layer1 */
@@ -7442,14 +7443,14 @@ static MACHINE_DRIVER_START( orbs )
MDRV_CPU_PROGRAM_MAP(orbs_readmem,orbs_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_1_and_2,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 39*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(orbs)
MDRV_PALETTE_LENGTH(512) /* sprites only */
@@ -7477,14 +7478,14 @@ static MACHINE_DRIVER_START( krzybowl )
MDRV_CPU_PROGRAM_MAP(krzybowl_readmem,krzybowl_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_1_and_2,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 39*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tndrcade)
MDRV_PALETTE_LENGTH(512) /* sprites only */
@@ -7513,15 +7514,14 @@ static MACHINE_DRIVER_START( madshark )
MDRV_CPU_PROGRAM_MAP(madshark_readmem,madshark_writemem)
MDRV_CPU_VBLANK_INT( wrofaero_interrupt, 1 )
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
#if __uPD71054_TIMER
MDRV_MACHINE_RESET( wrofaero )
#endif // __uPD71054_TIMER
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
@@ -7560,18 +7560,18 @@ static MACHINE_DRIVER_START( msgundam )
MDRV_CPU_VBLANK_INT(seta_interrupt_2_and_4,SETA_INTERRUPTS_NUM)
#endif // __uPD71054_TIMER
- MDRV_SCREEN_REFRESH_RATE(56.66) /* between 56 and 57 to match a real PCB's game speed */
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
#if __uPD71054_TIMER
MDRV_MACHINE_RESET( wrofaero )
#endif // __uPD71054_TIMER
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56.66) /* between 56 and 57 to match a real PCB's game speed */
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(msgundam)
MDRV_PALETTE_LENGTH(512 * 3) /* sprites, layer2, layer1 */
@@ -7601,14 +7601,14 @@ static MACHINE_DRIVER_START( oisipuzl )
MDRV_CPU_PROGRAM_MAP(oisipuzl_readmem,oisipuzl_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_1_and_2,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(msgundam)
MDRV_PALETTE_LENGTH(512 * 3) /* sprites, layer2, layer1 */
@@ -7637,14 +7637,14 @@ static MACHINE_DRIVER_START( triplfun )
MDRV_CPU_PROGRAM_MAP(triplfun_readmem,triplfun_writemem)
MDRV_CPU_VBLANK_INT(irq3_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(msgundam)
MDRV_PALETTE_LENGTH(512 * 3) /* sprites, layer2, layer1 */
@@ -7671,14 +7671,15 @@ static MACHINE_DRIVER_START( kiwame )
MDRV_CPU_PROGRAM_MAP(kiwame_readmem,kiwame_writemem)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)/* lev 1-7 are the same. WARNING:
the interrupt table is written to. */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 56*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tndrcade)
MDRV_PALETTE_LENGTH(512) /* sprites only */
@@ -7709,14 +7710,14 @@ static MACHINE_DRIVER_START( rezon )
MDRV_CPU_PROGRAM_MAP(wrofaero_readmem,wrofaero_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_1_and_2,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(msgundam)
MDRV_PALETTE_LENGTH(512 * 3) /* sprites, layer1, layer2 */
@@ -7747,14 +7748,14 @@ static MACHINE_DRIVER_START( thunderl )
MDRV_CPU_PROGRAM_MAP(thunderl_readmem,thunderl_writemem)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tndrcade)
MDRV_PALETTE_LENGTH(512) /* sprites only */
@@ -7781,14 +7782,14 @@ static MACHINE_DRIVER_START( wiggie )
MDRV_CPU_ADD(Z80, 16000000/4) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(wiggie_sound_readmem,wiggie_sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(wiggie)
MDRV_PALETTE_LENGTH(512) /* sprites only */
@@ -7811,14 +7812,14 @@ static MACHINE_DRIVER_START( wits )
MDRV_CPU_PROGRAM_MAP(thunderl_readmem,thunderl_writemem)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tndrcade)
MDRV_PALETTE_LENGTH(512) /* sprites only */
@@ -7847,14 +7848,14 @@ static MACHINE_DRIVER_START( umanclub )
MDRV_CPU_PROGRAM_MAP(umanclub_readmem,umanclub_writemem)
MDRV_CPU_VBLANK_INT(irq3_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tndrcade)
MDRV_PALETTE_LENGTH(512)
@@ -7887,11 +7888,10 @@ static MACHINE_DRIVER_START( utoukond )
MDRV_CPU_PROGRAM_MAP(utoukond_sound_readmem,utoukond_sound_writemem)
MDRV_CPU_IO_MAP(utoukond_sound_readport,utoukond_sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
@@ -7932,18 +7932,18 @@ static MACHINE_DRIVER_START( wrofaero )
MDRV_CPU_VBLANK_INT(seta_interrupt_2_and_4,SETA_INTERRUPTS_NUM)
#endif // __uPD71054_TIMER
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
#if __uPD71054_TIMER
MDRV_MACHINE_RESET( wrofaero )
#endif // __uPD71054_TIMER
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(msgundam)
MDRV_PALETTE_LENGTH(512 * 3) /* sprites, layer1, layer2 */
@@ -7978,14 +7978,14 @@ static MACHINE_DRIVER_START( zingzip )
MDRV_CPU_PROGRAM_MAP(wrofaero_readmem,wrofaero_writemem)
MDRV_CPU_VBLANK_INT(irq3_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(zingzip)
MDRV_PALETTE_LENGTH(16*32+16*32+64*32) /* sprites, layer2, layer1 */
@@ -8013,14 +8013,14 @@ static MACHINE_DRIVER_START( pairlove )
MDRV_CPU_PROGRAM_MAP(pairlove_readmem,pairlove_writemem)
MDRV_CPU_VBLANK_INT(seta_interrupt_1_and_2,SETA_INTERRUPTS_NUM)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tndrcade)
MDRV_PALETTE_LENGTH(2048) /* sprites only */
@@ -8057,14 +8057,14 @@ static MACHINE_DRIVER_START( crazyfgt )
MDRV_CPU_PROGRAM_MAP(crazyfgt_map,0)
MDRV_CPU_VBLANK_INT(crazyfgt_interrupt,1+5)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8-4, 30*8-1-4)
+
MDRV_GFXDECODE(crazyfgt)
MDRV_PALETTE_LENGTH(16*32+64*32+64*32) /* sprites, layer1, layer2 */
@@ -8116,14 +8116,14 @@ static MACHINE_DRIVER_START( inttoote )
MDRV_CPU_PROGRAM_MAP(inttoote_map,0)
MDRV_CPU_VBLANK_INT(inttoote_interrupt,8+1+1+1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(inttoote)
MDRV_PALETTE_LENGTH(512 * 1) /* sprites, layer1, layer2 */
diff --git a/src/mame/drivers/seta2.c b/src/mame/drivers/seta2.c
index c169b796a75..5cd1ca017e9 100644
--- a/src/mame/drivers/seta2.c
+++ b/src/mame/drivers/seta2.c
@@ -1816,16 +1816,16 @@ static MACHINE_DRIVER_START( mj4simai )
MDRV_CPU_PROGRAM_MAP(mj4simai_readmem,mj4simai_writemem)
MDRV_CPU_VBLANK_INT(seta2_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET( tmp68301 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x200, 0x200)
MDRV_SCREEN_VISIBLE_AREA(0x40, 0x1c0-1, 0x80, 0x170-1)
+
MDRV_GFXDECODE(seta2)
MDRV_PALETTE_LENGTH(0x8000)
@@ -1852,6 +1852,7 @@ static MACHINE_DRIVER_START( gundamex )
MDRV_NVRAM_HANDLER(93C46_gundamex)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0x00, 0x180-1, 0x100, 0x1e0-1)
MACHINE_DRIVER_END
@@ -1862,6 +1863,7 @@ static MACHINE_DRIVER_START( grdians )
MDRV_CPU_PROGRAM_MAP(grdians_readmem,grdians_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0x80, 0x80 + 0x130 -1, 0x80, 0x80 + 0xe8 -1)
MACHINE_DRIVER_END
@@ -1874,6 +1876,7 @@ static MACHINE_DRIVER_START( myangel )
MDRV_CPU_PROGRAM_MAP(myangel_readmem,myangel_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x178-1, 0x00, 0xf0-1)
MDRV_VIDEO_START(seta2_offset)
@@ -1888,6 +1891,7 @@ static MACHINE_DRIVER_START( myangel2 )
MDRV_CPU_PROGRAM_MAP(myangel2_readmem,myangel2_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x178-1, 0x00, 0xf0-1)
MDRV_VIDEO_START(seta2_offset)
@@ -1902,6 +1906,7 @@ static MACHINE_DRIVER_START( pzlbowl )
MDRV_CPU_PROGRAM_MAP(pzlbowl_readmem,pzlbowl_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0x10, 0x190-1, 0x100, 0x1f0-1)
MACHINE_DRIVER_END
@@ -1914,6 +1919,7 @@ static MACHINE_DRIVER_START( penbros )
MDRV_CPU_PROGRAM_MAP(penbros_readmem,penbros_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x140-1, 0x80, 0x160-1)
MACHINE_DRIVER_END
@@ -1928,6 +1934,7 @@ static MACHINE_DRIVER_START( samshoot )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0x40, 0x180-1, 0x40, 0x130-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/sf.c b/src/mame/drivers/sf.c
index 1bae9985beb..a20ba5ea804 100644
--- a/src/mame/drivers/sf.c
+++ b/src/mame/drivers/sf.c
@@ -832,14 +832,14 @@ static MACHINE_DRIVER_START( sf )
MDRV_CPU_IO_MAP(sound2_readport,sound2_writeport)
MDRV_CPU_PERIODIC_INT(irq0_line_hold,8000)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
+
MDRV_GFXDECODE(sf)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/sfkick.c b/src/mame/drivers/sfkick.c
index 1e72cd16a3b..28df06cc819 100644
--- a/src/mame/drivers/sfkick.c
+++ b/src/mame/drivers/sfkick.c
@@ -88,13 +88,13 @@ static MACHINE_DRIVER_START( sfkick )
//MDRV_CPU_PROGRAM_MAP(readmem2,writemem2)
// MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1)
+
//MDRV_GFXDECODE(sfkick) // GFX don't seem to be tile based
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/sg1000a.c b/src/mame/drivers/sg1000a.c
index bf9eeb118fd..c1efc2ddd62 100644
--- a/src/mame/drivers/sg1000a.c
+++ b/src/mame/drivers/sg1000a.c
@@ -274,6 +274,7 @@ static MACHINE_DRIVER_START( sg1000a )
/* video hardware */
MDRV_IMPORT_FROM(tms9928a)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
diff --git a/src/mame/drivers/sgladiat.c b/src/mame/drivers/sgladiat.c
index 11a30c03ce9..42441df82d7 100644
--- a/src/mame/drivers/sgladiat.c
+++ b/src/mame/drivers/sgladiat.c
@@ -158,15 +158,18 @@ static MACHINE_DRIVER_START( sgladiat )
MDRV_CPU_IO_MAP(sgladiat_sound_portmap,0)
MDRV_CPU_PERIODIC_INT(irq0_line_hold, 244) // Marvin's frequency, sounds ok
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(300)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8+16, 36*8-1-16, 1*8, 28*8-1)
+
MDRV_GFXDECODE(tnk3)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/shadfrce.c b/src/mame/drivers/shadfrce.c
index 99b0e0ac6bb..521c92fe99f 100644
--- a/src/mame/drivers/shadfrce.c
+++ b/src/mame/drivers/shadfrce.c
@@ -559,16 +559,16 @@ static MACHINE_DRIVER_START( shadfrce )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
+ MDRV_GFXDECODE(shadfrce)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- MDRV_GFXDECODE(shadfrce)
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x4000)
MDRV_VIDEO_START(shadfrce)
diff --git a/src/mame/drivers/shangha3.c b/src/mame/drivers/shangha3.c
index e3cafb7c124..ed07811fe52 100644
--- a/src/mame/drivers/shangha3.c
+++ b/src/mame/drivers/shangha3.c
@@ -501,14 +501,16 @@ static MACHINE_DRIVER_START( shangha3 )
MDRV_CPU_PROGRAM_MAP(shangha3_readmem,shangha3_writemem)
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS )
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(24*16, 16*16)
MDRV_SCREEN_VISIBLE_AREA(0*16, 24*16-1, 1*16, 15*16-1)
+
MDRV_GFXDECODE(shangha3)
MDRV_PALETTE_LENGTH(2048)
@@ -539,14 +541,17 @@ static MACHINE_DRIVER_START( heberpop )
MDRV_CPU_PROGRAM_MAP(heberpop_sound_readmem,heberpop_sound_writemem)
MDRV_CPU_IO_MAP(heberpop_sound_readport,heberpop_sound_writeport)
/* NMI triggered by YM3438 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(24*16, 16*16)
MDRV_SCREEN_VISIBLE_AREA(0*16, 24*16-1, 1*16, 15*16-1)
+
MDRV_GFXDECODE(shangha3)
MDRV_PALETTE_LENGTH(2048)
@@ -578,14 +583,17 @@ static MACHINE_DRIVER_START( blocken )
MDRV_CPU_PROGRAM_MAP(heberpop_sound_readmem,heberpop_sound_writemem)
MDRV_CPU_IO_MAP(heberpop_sound_readport,heberpop_sound_writeport)
/* NMI triggered by YM3438 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(24*16, 16*16)
MDRV_SCREEN_VISIBLE_AREA(0*16, 24*16-1, 1*16, 15*16-1)
+
MDRV_GFXDECODE(shangha3)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/shanghai.c b/src/mame/drivers/shanghai.c
index ba374038de0..68dd70c88e5 100644
--- a/src/mame/drivers/shanghai.c
+++ b/src/mame/drivers/shanghai.c
@@ -988,13 +988,13 @@ static MACHINE_DRIVER_START( shanghai )
MDRV_CPU_IO_MAP(shanghai_portmap,0)
MDRV_CPU_VBLANK_INT(shanghai_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(30)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(30)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 280)
MDRV_SCREEN_VISIBLE_AREA(0, 384-1, 0, 280-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_PALETTE_INIT(shanghai)
@@ -1021,13 +1021,13 @@ static MACHINE_DRIVER_START( shangha2 )
MDRV_CPU_IO_MAP(shangha2_portmap,0)
MDRV_CPU_VBLANK_INT(shanghai_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(30)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(30)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 280)
MDRV_SCREEN_VISIBLE_AREA(0, 384-1, 0, 280-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(shanghai)
@@ -1054,16 +1054,17 @@ static MACHINE_DRIVER_START( kothello )
SEIBU3A_SOUND_SYSTEM_CPU(14318180/4)
- MDRV_SCREEN_REFRESH_RATE(30)
MDRV_INTERLEAVE(200)
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(30)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(384, 384)
MDRV_SCREEN_VISIBLE_AREA(0, 384-1, 0, 280-1)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(shanghai)
diff --git a/src/mame/drivers/shangkid.c b/src/mame/drivers/shangkid.c
index 3f07b62e331..001bf06596e 100644
--- a/src/mame/drivers/shangkid.c
+++ b/src/mame/drivers/shangkid.c
@@ -400,15 +400,16 @@ static MACHINE_DRIVER_START( chinhero )
MDRV_MACHINE_RESET(chinhero)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(16, 319-16, 0, 223)
+
MDRV_GFXDECODE(chinhero)
MDRV_PALETTE_LENGTH(256)
@@ -479,14 +480,14 @@ static MACHINE_DRIVER_START( dynamski )
MDRV_CPU_IO_MAP(dynamski_portmap,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256+32, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255+32, 16, 255-16)
+
MDRV_GFXDECODE(dynamski)
MDRV_PALETTE_LENGTH(16*4+16*4)
diff --git a/src/mame/drivers/shaolins.c b/src/mame/drivers/shaolins.c
index 80861c34dcf..cc4108d74ea 100644
--- a/src/mame/drivers/shaolins.c
+++ b/src/mame/drivers/shaolins.c
@@ -222,14 +222,14 @@ static MACHINE_DRIVER_START( shaolins )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(shaolins_interrupt,16) /* 1 IRQ + 8 NMI */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(shaolins)
MDRV_PALETTE_LENGTH(16*8*16+16*8*16)
diff --git a/src/mame/drivers/shisen.c b/src/mame/drivers/shisen.c
index 1616836a275..932249e9b91 100644
--- a/src/mame/drivers/shisen.c
+++ b/src/mame/drivers/shisen.c
@@ -251,16 +251,17 @@ static MACHINE_DRIVER_START( shisen )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,128) /* clocked by V1? (Vigilante) */
/* IRQs are generated by main Z80 and YM2151 */
- MDRV_SCREEN_REFRESH_RATE(55)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(m72_sound)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(55)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(shisen)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/shootout.c b/src/mame/drivers/shootout.c
index 14cca178c0c..828b53c79c9 100644
--- a/src/mame/drivers/shootout.c
+++ b/src/mame/drivers/shootout.c
@@ -311,14 +311,14 @@ static MACHINE_DRIVER_START( shootout )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(shootout)
MDRV_PALETTE_LENGTH(256)
@@ -342,14 +342,14 @@ static MACHINE_DRIVER_START( shootouj )
MDRV_CPU_PROGRAM_MAP(readmem_alt,writemem_alt)
MDRV_CPU_VBLANK_INT(shootout_interrupt,1) /* nmi's are triggered at coin up */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(shootout)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/shougi.c b/src/mame/drivers/shougi.c
index 7e4f3332d0e..a4ae22c679d 100644
--- a/src/mame/drivers/shougi.c
+++ b/src/mame/drivers/shougi.c
@@ -368,15 +368,16 @@ static MACHINE_DRIVER_START( shougi )
MDRV_CPU_ADD(ALPHA8201, 10000000/4/8)
MDRV_CPU_PROGRAM_MAP(mcu_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 255)
+
MDRV_PALETTE_LENGTH(32)
MDRV_PALETTE_INIT(shougi)
diff --git a/src/mame/drivers/shuuz.c b/src/mame/drivers/shuuz.c
index b094c30aca4..1ef88978c15 100644
--- a/src/mame/drivers/shuuz.c
+++ b/src/mame/drivers/shuuz.c
@@ -269,11 +269,11 @@ static MACHINE_DRIVER_START( shuuz )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(shuuz)
MDRV_PALETTE_LENGTH(1024)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses a VAD chip to generate video signals */
diff --git a/src/mame/drivers/sidearms.c b/src/mame/drivers/sidearms.c
index b01426d6752..035848a0375 100644
--- a/src/mame/drivers/sidearms.c
+++ b/src/mame/drivers/sidearms.c
@@ -724,14 +724,16 @@ static MACHINE_DRIVER_START( sidearms )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
+
MDRV_GFXDECODE(sidearms)
MDRV_PALETTE_LENGTH(1024)
@@ -768,14 +770,16 @@ static MACHINE_DRIVER_START( turtship )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
+
MDRV_GFXDECODE(turtship)
MDRV_PALETTE_LENGTH(1024)
@@ -813,15 +817,18 @@ static MACHINE_DRIVER_START( whizz )
MDRV_CPU_IO_MAP(whizz_readport,whizz_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(1000)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
+
MDRV_GFXDECODE(turtship)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/sidepckt.c b/src/mame/drivers/sidepckt.c
index 0f2926e64a7..12ad7b3db3d 100644
--- a/src/mame/drivers/sidepckt.c
+++ b/src/mame/drivers/sidepckt.c
@@ -301,14 +301,15 @@ static MACHINE_DRIVER_START( sidepckt )
/* audio CPU */ /* 1.5 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
/* NMIs are triggered by the main cpu */
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */ /* VERIFY: May be 55 or 56 */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */ /* VERIFY: May be 55 or 56 */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(sidepckt)
MDRV_PALETTE_LENGTH(256)
@@ -339,14 +340,15 @@ static MACHINE_DRIVER_START( sidepctj )
/* audio CPU */ /* 1.5 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
/* NMIs are triggered by the main cpu */
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */ /* VERIFY: May be 55 or 56 */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */ /* VERIFY: May be 55 or 56 */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(sidepckt)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/silkroad.c b/src/mame/drivers/silkroad.c
index fe713b5e7bd..16ca6d69f37 100644
--- a/src/mame/drivers/silkroad.c
+++ b/src/mame/drivers/silkroad.c
@@ -375,14 +375,14 @@ static MACHINE_DRIVER_START( silkroad )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(6*8+2, 64*8-1-(10*8)-2, 2*8, 32*8-1-(2*8))
+
MDRV_GFXDECODE(silkroad)
MDRV_PALETTE_LENGTH(0x2000)
diff --git a/src/mame/drivers/simpl156.c b/src/mame/drivers/simpl156.c
index 206643ce0a2..d1796fcccfc 100644
--- a/src/mame/drivers/simpl156.c
+++ b/src/mame/drivers/simpl156.c
@@ -486,15 +486,16 @@ static MACHINE_DRIVER_START( chainrec )
MDRV_CPU_PROGRAM_MAP(chainrec_map,0)
MDRV_CPU_VBLANK_INT(simpl156_vbl_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(800))
MDRV_NVRAM_HANDLER(simpl156) // 93C45
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(800))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_PALETTE_LENGTH(4096)
MDRV_GFXDECODE(simpl156)
MDRV_VIDEO_START(simpl156)
diff --git a/src/mame/drivers/simpsons.c b/src/mame/drivers/simpsons.c
index e3ecb918956..87bfe8701ad 100644
--- a/src/mame/drivers/simpsons.c
+++ b/src/mame/drivers/simpsons.c
@@ -284,17 +284,20 @@ static MACHINE_DRIVER_START( simpsons )
MDRV_CPU_ADD(Z80, XTAL_3_579545MHz) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(z80_map,0)
/* NMIs are generated by the 053260 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(simpsons)
MDRV_NVRAM_HANDLER(simpsons)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(simpsons)
diff --git a/src/mame/drivers/skullxbo.c b/src/mame/drivers/skullxbo.c
index 72622021b39..5905b12e8f6 100644
--- a/src/mame/drivers/skullxbo.c
+++ b/src/mame/drivers/skullxbo.c
@@ -257,11 +257,11 @@ static MACHINE_DRIVER_START( skullxbo )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(skullxbo)
MDRV_PALETTE_LENGTH(2048)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS-2 chip to generate video signals */
diff --git a/src/mame/drivers/skyarmy.c b/src/mame/drivers/skyarmy.c
index 7d91205016f..836c4710d7c 100644
--- a/src/mame/drivers/skyarmy.c
+++ b/src/mame/drivers/skyarmy.c
@@ -268,13 +268,13 @@ static MACHINE_DRIVER_START( skyarmy )
MDRV_CPU_PERIODIC_INT(skyarmy_nmi_source,650) /* Hz */
/* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8,32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8,32*8-1,1*8,31*8-1)
+
MDRV_GFXDECODE(skyarmy)
MDRV_PALETTE_LENGTH(32)
diff --git a/src/mame/drivers/skydiver.c b/src/mame/drivers/skydiver.c
index 0f0326713c2..9e6e16fc9ea 100644
--- a/src/mame/drivers/skydiver.c
+++ b/src/mame/drivers/skydiver.c
@@ -373,15 +373,16 @@ static MACHINE_DRIVER_START( skydiver )
MDRV_CPU_VBLANK_INT(skydiver_interrupt, 5)
MDRV_WATCHDOG_VBLANK_INIT(8) // 128V clocks the same as VBLANK
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(skydiver)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(skydiver)
MDRV_PALETTE_LENGTH(sizeof(colortable_source) / sizeof(colortable_source[0]))
diff --git a/src/mame/drivers/skyfox.c b/src/mame/drivers/skyfox.c
index 743ddee8258..6c0c93a791a 100644
--- a/src/mame/drivers/skyfox.c
+++ b/src/mame/drivers/skyfox.c
@@ -262,14 +262,14 @@ static MACHINE_DRIVER_START( skyfox )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(skyfox_sound_readmem,skyfox_sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) // we're using IPT_VBLANK
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0+0x60, 320-1+0x60, 0+16, 256-1-16) // from $30*2 to $CC*2+8
+
MDRV_GFXDECODE(skyfox)
MDRV_PALETTE_LENGTH(256+256) /* 256 static colors (+256 for the background??) */
diff --git a/src/mame/drivers/skykid.c b/src/mame/drivers/skykid.c
index 70e9c14c126..e923e60ed09 100644
--- a/src/mame/drivers/skykid.c
+++ b/src/mame/drivers/skykid.c
@@ -461,17 +461,18 @@ static MACHINE_DRIVER_START( skykid )
MDRV_CPU_IO_MAP(mcu_port_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_assert,1)
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* we need heavy synch */
MDRV_MACHINE_START(skykid)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(skykid)
MDRV_PALETTE_LENGTH(64*4+128*4+64*8)
diff --git a/src/mame/drivers/skylncr.c b/src/mame/drivers/skylncr.c
index 9448f527637..2a48c013c30 100644
--- a/src/mame/drivers/skylncr.c
+++ b/src/mame/drivers/skylncr.c
@@ -431,14 +431,14 @@ static MACHINE_DRIVER_START( skylncr )
MDRV_CPU_IO_MAP(io_map_skylncr,0)
MDRV_CPU_VBLANK_INT(skylncr_vblank_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
+
MDRV_GFXDECODE(skylncr)
MDRV_PALETTE_LENGTH(0x200)
diff --git a/src/mame/drivers/skyraid.c b/src/mame/drivers/skyraid.c
index 40315e35a0a..a4f35c4839a 100644
--- a/src/mame/drivers/skyraid.c
+++ b/src/mame/drivers/skyraid.c
@@ -265,14 +265,14 @@ static MACHINE_DRIVER_START( skyraid )
MDRV_CPU_PROGRAM_MAP(skyraid_readmem, skyraid_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(22 * 1000000 / 15750))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 240)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 0, 239)
+
MDRV_GFXDECODE(skyraid)
MDRV_PALETTE_INIT(skyraid)
diff --git a/src/mame/drivers/slapfght.c b/src/mame/drivers/slapfght.c
index f9e77306553..1ffdf127345 100644
--- a/src/mame/drivers/slapfght.c
+++ b/src/mame/drivers/slapfght.c
@@ -848,17 +848,20 @@ static MACHINE_DRIVER_START( perfrman )
MDRV_CPU_PROGRAM_MAP(perfrman_sound_readmem,perfrman_sound_writemem)
MDRV_CPU_VBLANK_INT(getstar_interrupt,4) /* music speed, verified */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
MDRV_MACHINE_RESET(slapfight)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 34*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(perfrman)
MDRV_PALETTE_LENGTH(256)
@@ -892,17 +895,20 @@ static MACHINE_DRIVER_START( tigerhb )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,6) /* ??? */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
MDRV_MACHINE_RESET(slapfight)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 36*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(slapfght)
MDRV_PALETTE_LENGTH(256)
@@ -938,17 +944,20 @@ static MACHINE_DRIVER_START( tigerh )
MDRV_CPU_ADD(M68705,XTAL_36MHz/12) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(m68705_readmem,m68705_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
MDRV_MACHINE_RESET(slapfight)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 36*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(slapfght)
MDRV_PALETTE_LENGTH(256)
@@ -981,17 +990,20 @@ static MACHINE_DRIVER_START( slapfigh )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(getstar_interrupt, 3)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
MDRV_MACHINE_RESET(slapfight)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 36*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(slapfght)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/slapshot.c b/src/mame/drivers/slapshot.c
index 86433c5d6fb..660c09d302b 100644
--- a/src/mame/drivers/slapshot.c
+++ b/src/mame/drivers/slapshot.c
@@ -556,18 +556,19 @@ static MACHINE_DRIVER_START( slapshot )
/* audio CPU */ /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(z80_sound_readmem,z80_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
MDRV_MACHINE_START(slapshot)
MDRV_NVRAM_HANDLER(timekeeper_0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(slapshot)
MDRV_PALETTE_LENGTH(8192)
@@ -597,17 +598,18 @@ static MACHINE_DRIVER_START( opwolf3 )
/* audio CPU */ /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(z80_sound_readmem,z80_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
MDRV_NVRAM_HANDLER(timekeeper_0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(slapshot)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/sliver.c b/src/mame/drivers/sliver.c
index 3669f87722a..674c95a8da9 100644
--- a/src/mame/drivers/sliver.c
+++ b/src/mame/drivers/sliver.c
@@ -540,12 +540,11 @@ static MACHINE_DRIVER_START( sliver )
MDRV_CPU_DATA_MAP(soundmem_data,0)
MDRV_CPU_IO_MAP(soundmem_io,0)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
-
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 384-1-16, 0*8, 240-1)
diff --git a/src/mame/drivers/smstrv.c b/src/mame/drivers/smstrv.c
index 0fa06aee9ad..aa50bdec556 100644
--- a/src/mame/drivers/smstrv.c
+++ b/src/mame/drivers/smstrv.c
@@ -229,17 +229,17 @@ static MACHINE_DRIVER_START( smstrv )
// MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
// MDRV_NVRAM_HANDLER(generic_0fill)
MDRV_MACHINE_RESET(smstrv)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(256)
// MDRV_PALETTE_INIT(naughtyb)
diff --git a/src/mame/drivers/snk.c b/src/mame/drivers/snk.c
index 4b4c7312d2d..8f7dd9c4a46 100644
--- a/src/mame/drivers/snk.c
+++ b/src/mame/drivers/snk.c
@@ -828,15 +828,18 @@ static MACHINE_DRIVER_START( tnk3 )
MDRV_CPU_PROGRAM_MAP(YM3526_sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 28*8-1)
+
MDRV_GFXDECODE(tnk3)
MDRV_PALETTE_LENGTH(1024)
@@ -869,15 +872,18 @@ static MACHINE_DRIVER_START( athena )
MDRV_CPU_PROGRAM_MAP(YM3526_YM3526_sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(300)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 28*8-1)
+
MDRV_GFXDECODE(athena)
MDRV_PALETTE_LENGTH(1024)
@@ -914,15 +920,18 @@ static MACHINE_DRIVER_START( ikari )
MDRV_CPU_PROGRAM_MAP(YM3526_YM3526_sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 28*8-1)
+
MDRV_GFXDECODE(ikari)
MDRV_PALETTE_LENGTH(1024)
@@ -959,15 +968,18 @@ static MACHINE_DRIVER_START( victroad )
MDRV_CPU_PROGRAM_MAP(YM3526_Y8950_sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 28*8-1)
+
MDRV_GFXDECODE(ikari)
MDRV_PALETTE_LENGTH(1024)
@@ -1004,15 +1016,16 @@ static MACHINE_DRIVER_START( gwar )
MDRV_CPU_PROGRAM_MAP(YM3526_Y8950_sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(400, 224)
MDRV_SCREEN_VISIBLE_AREA(8, 399-8, 0, 223)
+
MDRV_GFXDECODE(gwar)
MDRV_PALETTE_LENGTH(1024)
@@ -1050,15 +1063,16 @@ static MACHINE_DRIVER_START( bermudat )
MDRV_CPU_PROGRAM_MAP(YM3526_Y8950_sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(400, 224)
MDRV_SCREEN_VISIBLE_AREA(16, 399, 0, 223)
+
MDRV_GFXDECODE(bermudat)
MDRV_PALETTE_LENGTH(1024)
@@ -1095,15 +1109,16 @@ static MACHINE_DRIVER_START( psychos )
MDRV_CPU_PROGRAM_MAP(YM3526_Y8950_sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(400, 224)
MDRV_SCREEN_VISIBLE_AREA(8, 399-8, 0, 223)
+
MDRV_GFXDECODE(psychos)
MDRV_PALETTE_LENGTH(1024)
@@ -1140,15 +1155,16 @@ static MACHINE_DRIVER_START( chopper1 )
MDRV_CPU_PROGRAM_MAP(YM3812_Y8950_sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(400, 224)
MDRV_SCREEN_VISIBLE_AREA(8, 399-8, 0, 223)
+
MDRV_GFXDECODE(psychos)
MDRV_PALETTE_LENGTH(1024)
@@ -1185,15 +1201,18 @@ static MACHINE_DRIVER_START( tdfever )
MDRV_CPU_PROGRAM_MAP(YM3526_Y8950_sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1000))
MDRV_INTERLEAVE(300)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1000))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(400,224)
MDRV_SCREEN_VISIBLE_AREA(8, 399-8, 0, 223)
+
MDRV_GFXDECODE(tdfever)
MDRV_PALETTE_LENGTH(1024)
@@ -1230,15 +1249,18 @@ static MACHINE_DRIVER_START( tdfever2 )
MDRV_CPU_PROGRAM_MAP(YM3526_Y8950_sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1000))
MDRV_INTERLEAVE(300)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1000))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(400,224)
MDRV_SCREEN_VISIBLE_AREA(8, 399-8, 0, 223)
+
MDRV_GFXDECODE(tdfever2)
MDRV_PALETTE_LENGTH(1024)
@@ -1275,15 +1297,18 @@ static MACHINE_DRIVER_START( fsoccer )
MDRV_CPU_PROGRAM_MAP(Y8950_sound_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(400,224)
MDRV_SCREEN_VISIBLE_AREA(8, 399-8, 0, 223)
+
MDRV_GFXDECODE(tdfever)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/snk68.c b/src/mame/drivers/snk68.c
index 32579938b4d..54cff3a5293 100644
--- a/src/mame/drivers/snk68.c
+++ b/src/mame/drivers/snk68.c
@@ -707,14 +707,14 @@ static MACHINE_DRIVER_START( ikari3 )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(ikari3)
MDRV_PALETTE_LENGTH(2048)
@@ -746,14 +746,14 @@ static MACHINE_DRIVER_START( pow )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pow)
MDRV_PALETTE_LENGTH(2048)
@@ -785,14 +785,14 @@ static MACHINE_DRIVER_START( searchar )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(searchar)
MDRV_PALETTE_LENGTH(2048)
@@ -824,14 +824,14 @@ static MACHINE_DRIVER_START( streetsm )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(searchar)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/snowbros.c b/src/mame/drivers/snowbros.c
index 1618faa7206..e3ec149a24b 100644
--- a/src/mame/drivers/snowbros.c
+++ b/src/mame/drivers/snowbros.c
@@ -1565,14 +1565,14 @@ static MACHINE_DRIVER_START( snowbros )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57.5) /* ~57.5 - confirmed */
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(snowbros)
MDRV_PALETTE_LENGTH(256)
@@ -1663,14 +1663,14 @@ static MACHINE_DRIVER_START( honeydol )
MDRV_CPU_PROGRAM_MAP(honeydol_sound_readmem,honeydol_sound_writemem)
MDRV_CPU_IO_MAP(honeydol_sound_readport,honeydol_sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57.5)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(honeydol)
MDRV_PALETTE_LENGTH(0x800/2)
@@ -1704,14 +1704,14 @@ static MACHINE_DRIVER_START( twinadv )
MDRV_CPU_IO_MAP(twinadv_sound_readport,twinadv_sound_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57.5)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(twinadv)
MDRV_PALETTE_LENGTH(0x100)
@@ -1779,14 +1779,14 @@ static MACHINE_DRIVER_START( snowbro3 )
MDRV_CPU_PROGRAM_MAP(readmem3,writemem3)
MDRV_CPU_VBLANK_INT(snowbro3_interrupt,3)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(sb3)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/solomon.c b/src/mame/drivers/solomon.c
index 69861b479a5..8aee2623a43 100644
--- a/src/mame/drivers/solomon.c
+++ b/src/mame/drivers/solomon.c
@@ -213,14 +213,15 @@ static MACHINE_DRIVER_START( solomon )
MDRV_CPU_IO_MAP(sound_portmap,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2) /* ??? */
/* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(solomon)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/sonson.c b/src/mame/drivers/sonson.c
index ea99c2a79a8..0fcf8838ffa 100644
--- a/src/mame/drivers/sonson.c
+++ b/src/mame/drivers/sonson.c
@@ -247,14 +247,15 @@ static MACHINE_DRIVER_START( sonson )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4) /* FIRQs are triggered by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(sonson)
MDRV_PALETTE_LENGTH(64*4+32*8)
diff --git a/src/mame/drivers/spacefb.c b/src/mame/drivers/spacefb.c
index 04b3737439d..da4be1bb145 100644
--- a/src/mame/drivers/spacefb.c
+++ b/src/mame/drivers/spacefb.c
@@ -405,11 +405,10 @@ static MACHINE_DRIVER_START( spacefb )
MDRV_MACHINE_RESET(spacefb)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(spacefb)
MDRV_VIDEO_UPDATE(spacefb)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(SPACEFB_PIXEL_CLOCK, SPACEFB_HTOTAL, SPACEFB_HBEND, SPACEFB_HBSTART, SPACEFB_VTOTAL, SPACEFB_VBEND, SPACEFB_VBSTART)
diff --git a/src/mame/drivers/spaceg.c b/src/mame/drivers/spaceg.c
index 5011ab15451..fd7dc813d6f 100644
--- a/src/mame/drivers/spaceg.c
+++ b/src/mame/drivers/spaceg.c
@@ -416,14 +416,14 @@ static MACHINE_DRIVER_START( spaceg )
MDRV_CPU_PROGRAM_MAP(readwritemem,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1) /* 60 Hz NMIs (verified) */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1-3*8)
+
MDRV_PALETTE_LENGTH(16+128-16)
MDRV_PALETTE_INIT( spaceg )
MDRV_VIDEO_START(generic_bitmapped)
diff --git a/src/mame/drivers/spbactn.c b/src/mame/drivers/spbactn.c
index 56fec4e0b77..d8445b17c3c 100644
--- a/src/mame/drivers/spbactn.c
+++ b/src/mame/drivers/spbactn.c
@@ -362,14 +362,14 @@ static MACHINE_DRIVER_START( spbactn )
/* audio CPU */ /* 4 MHz ??? */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(spbactn)
MDRV_PALETTE_LENGTH(0x2800/2)
diff --git a/src/mame/drivers/spcforce.c b/src/mame/drivers/spcforce.c
index d83e2eb4910..496cc031706 100644
--- a/src/mame/drivers/spcforce.c
+++ b/src/mame/drivers/spcforce.c
@@ -268,14 +268,14 @@ static MACHINE_DRIVER_START( spcforce )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(spcforce)
MDRV_PALETTE_LENGTH(sizeof(colortable_source) / sizeof(colortable_source[0]))
diff --git a/src/mame/drivers/spdodgeb.c b/src/mame/drivers/spdodgeb.c
index a119c458d3c..66b953f0c9d 100644
--- a/src/mame/drivers/spdodgeb.c
+++ b/src/mame/drivers/spdodgeb.c
@@ -441,14 +441,14 @@ static MACHINE_DRIVER_START( spdodgeb )
/* audio CPU */ /* 2MHz ? */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(spdodgeb)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/speedatk.c b/src/mame/drivers/speedatk.c
index c033df0e436..4000f68c924 100644
--- a/src/mame/drivers/speedatk.c
+++ b/src/mame/drivers/speedatk.c
@@ -272,11 +272,10 @@ static MACHINE_DRIVER_START( speedatk )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 34*8-1, 0*8, 29*8-1)
diff --git a/src/mame/drivers/speedbal.c b/src/mame/drivers/speedbal.c
index 84882d90d29..6404c235e10 100644
--- a/src/mame/drivers/speedbal.c
+++ b/src/mame/drivers/speedbal.c
@@ -237,14 +237,14 @@ static MACHINE_DRIVER_START( speedbal )
MDRV_CPU_IO_MAP(sound_cpu_io_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,8)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(speedbal)
MDRV_PALETTE_LENGTH(768)
diff --git a/src/mame/drivers/speedspn.c b/src/mame/drivers/speedspn.c
index e06a7724412..36e71927fb4 100644
--- a/src/mame/drivers/speedspn.c
+++ b/src/mame/drivers/speedspn.c
@@ -312,14 +312,14 @@ static MACHINE_DRIVER_START( speedspn )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(readmem2,writemem2)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, 56*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(speedspn)
MDRV_PALETTE_LENGTH(0x400)
diff --git a/src/mame/drivers/speglsht.c b/src/mame/drivers/speglsht.c
index a17cebf6054..1cae4504c56 100644
--- a/src/mame/drivers/speglsht.c
+++ b/src/mame/drivers/speglsht.c
@@ -278,16 +278,17 @@ static MACHINE_DRIVER_START( speglsht )
MDRV_CPU_PROGRAM_MAP(speglsht_mem,0)
MDRV_CPU_VBLANK_INT(irq4_gen,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(speglsht)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 8, 239-8)
+
MDRV_GFXDECODE(speglsht)
MDRV_PALETTE_LENGTH(16*16*4+1)
diff --git a/src/mame/drivers/spiders.c b/src/mame/drivers/spiders.c
index a0545e4becb..96a6ec36e9a 100644
--- a/src/mame/drivers/spiders.c
+++ b/src/mame/drivers/spiders.c
@@ -725,15 +725,14 @@ static MACHINE_DRIVER_START( spiders )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(spiders)
MDRV_VIDEO_UPDATE(spiders)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 256, 0, 256, 256, 0, 256) /* temporary, CRTC will configure screen */
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
MDRV_DEVICE_CONFIG(mc6845_intf)
/* audio hardware */
diff --git a/src/mame/drivers/splash.c b/src/mame/drivers/splash.c
index 75df993b14c..52dc2f70a98 100644
--- a/src/mame/drivers/splash.c
+++ b/src/mame/drivers/splash.c
@@ -442,14 +442,14 @@ static MACHINE_DRIVER_START( splash )
MDRV_CPU_PROGRAM_MAP(splash_readmem_sound,splash_writemem_sound)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,64) /* needed for the msm5205 to play the samples */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(2*8, 49*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(splash)
MDRV_PALETTE_LENGTH(2048)
@@ -490,15 +490,15 @@ static MACHINE_DRIVER_START( roldfrog )
MDRV_CPU_IO_MAP(roldf_sound_io_map,0)
// MDRV_CPU_VBLANK_INT(nmi_line_pulse,64) /* needed for the msm5205 to play the samples */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(2*8, 49*8-1, 2*8, 32*8-1)
// MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 64*8-1)
+
MDRV_GFXDECODE(splash)
MDRV_PALETTE_LENGTH(2048)
@@ -528,14 +528,14 @@ static MACHINE_DRIVER_START( funystrp )
// MDRV_CPU_PROGRAM_MAP(splash_readmem_sound,splash_writemem_sound)
// MDRV_CPU_VBLANK_INT(nmi_line_pulse,64) /* needed for the msm5205 to play the samples */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 47*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(splash)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/sprcros2.c b/src/mame/drivers/sprcros2.c
index f2c3a893516..674a2938570 100644
--- a/src/mame/drivers/sprcros2.c
+++ b/src/mame/drivers/sprcros2.c
@@ -311,16 +311,16 @@ static MACHINE_DRIVER_START( sprcros2 )
MDRV_CPU_IO_MAP(0,sprcros2_s_writeport)
MDRV_CPU_VBLANK_INT(sprcros2_s_interrupt,2) //2 nmis
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(sprcros2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(sprcros2)
MDRV_PALETTE_LENGTH(768)
diff --git a/src/mame/drivers/sprint2.c b/src/mame/drivers/sprint2.c
index dbc4bbcb5fc..94d9cf40194 100644
--- a/src/mame/drivers/sprint2.c
+++ b/src/mame/drivers/sprint2.c
@@ -511,13 +511,13 @@ static MACHINE_DRIVER_START( sprint2 )
MDRV_CPU_VBLANK_INT(sprint2, 1)
MDRV_WATCHDOG_VBLANK_INIT(8)
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 0, 223)
+
MDRV_GFXDECODE(sprint2)
MDRV_PALETTE_LENGTH(12)
diff --git a/src/mame/drivers/sprint4.c b/src/mame/drivers/sprint4.c
index 8bc757aa11e..3bfcc19a362 100644
--- a/src/mame/drivers/sprint4.c
+++ b/src/mame/drivers/sprint4.c
@@ -411,7 +411,7 @@ static MACHINE_DRIVER_START( sprint4 )
MDRV_MACHINE_RESET(sprint4)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, 0, 256, VTOTAL, 0, 224)
MDRV_GFXDECODE(sprint4)
diff --git a/src/mame/drivers/sprint8.c b/src/mame/drivers/sprint8.c
index a69569621ca..af1f05a9918 100644
--- a/src/mame/drivers/sprint8.c
+++ b/src/mame/drivers/sprint8.c
@@ -467,14 +467,15 @@ static MACHINE_DRIVER_START( sprint8 )
MDRV_CPU_ADD(M6800, 11055000 / 11) /* ? */
MDRV_CPU_PROGRAM_MAP(readmem, writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_MACHINE_RESET(sprint8)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 261)
MDRV_SCREEN_VISIBLE_AREA(0, 495, 0, 231)
+
MDRV_GFXDECODE(sprint8)
MDRV_PALETTE_LENGTH(36)
diff --git a/src/mame/drivers/spy.c b/src/mame/drivers/spy.c
index 772bd2b7a4d..ef5180b6b5b 100644
--- a/src/mame/drivers/spy.c
+++ b/src/mame/drivers/spy.c
@@ -544,14 +544,17 @@ static MACHINE_DRIVER_START( spy )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(spy_sound_readmem,spy_sound_writemem)
/* nmi by the sound chip */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(1024)
MDRV_VIDEO_START(spy)
diff --git a/src/mame/drivers/srmp2.c b/src/mame/drivers/srmp2.c
index de47bae2695..51d80d1d20e 100644
--- a/src/mame/drivers/srmp2.c
+++ b/src/mame/drivers/srmp2.c
@@ -1078,17 +1078,17 @@ static MACHINE_DRIVER_START( srmp2 )
MDRV_CPU_PROGRAM_MAP(srmp2_readmem,srmp2_writemem)
MDRV_CPU_VBLANK_INT(srmp2_interrupt,16) /* Interrupt times is not understood */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(srmp2)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(464, 256-16)
MDRV_SCREEN_VISIBLE_AREA(16, 464-1, 8, 256-1-24)
+
MDRV_GFXDECODE(srmp2)
MDRV_PALETTE_LENGTH(1024) /* sprites only */
@@ -1118,17 +1118,17 @@ static MACHINE_DRIVER_START( srmp3 )
MDRV_CPU_IO_MAP(srmp3_readport,srmp3_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(srmp3)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(400, 256-16)
MDRV_SCREEN_VISIBLE_AREA(16, 400-1, 8, 256-1-24)
+
MDRV_GFXDECODE(srmp3)
MDRV_PALETTE_LENGTH(512) /* sprites only */
@@ -1155,17 +1155,17 @@ static MACHINE_DRIVER_START( mjyuugi )
MDRV_CPU_PROGRAM_MAP(mjyuugi_readmem,mjyuugi_writemem)
MDRV_CPU_VBLANK_INT(srmp2_interrupt,16) /* Interrupt times is not understood */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(srmp2)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(400, 256-16)
MDRV_SCREEN_VISIBLE_AREA(16, 400-1, 0, 256-1-16)
+
MDRV_GFXDECODE(srmp3)
MDRV_PALETTE_LENGTH(512) /* sprites only */
diff --git a/src/mame/drivers/srmp5.c b/src/mame/drivers/srmp5.c
index 1e685ebc749..e2eba5fa272 100644
--- a/src/mame/drivers/srmp5.c
+++ b/src/mame/drivers/srmp5.c
@@ -631,13 +631,14 @@ static MACHINE_DRIVER_START( srmp5 )
MDRV_CPU_VBLANK_INT(irq4_line_hold,2)
MDRV_CPU_PROGRAM_MAP(srmp5_mem,0)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 350, 30, 280)
+
MDRV_PALETTE_LENGTH(16*16*4+1)
MDRV_VIDEO_START(st0016)
diff --git a/src/mame/drivers/srmp6.c b/src/mame/drivers/srmp6.c
index 662d2bf022f..d86a2c7c6be 100644
--- a/src/mame/drivers/srmp6.c
+++ b/src/mame/drivers/srmp6.c
@@ -711,13 +711,14 @@ static MACHINE_DRIVER_START( srmp6 )
MDRV_CPU_PROGRAM_MAP(srmp6,0)
MDRV_CPU_VBLANK_INT(srmp6_interrupt,2)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 42*8-1, 0*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x800)
MDRV_VIDEO_START(srmp6)
diff --git a/src/mame/drivers/srumbler.c b/src/mame/drivers/srumbler.c
index a01d4d68db3..d13d26958e2 100644
--- a/src/mame/drivers/srumbler.c
+++ b/src/mame/drivers/srumbler.c
@@ -265,16 +265,18 @@ static MACHINE_DRIVER_START( srumbler )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(srumbler)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(10*8, (64-10)*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE(srumbler)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/ssfindo.c b/src/mame/drivers/ssfindo.c
index 37d03cf469f..b747cc8a1e2 100644
--- a/src/mame/drivers/ssfindo.c
+++ b/src/mame/drivers/ssfindo.c
@@ -613,16 +613,17 @@ static MACHINE_DRIVER_START( ssfindo )
MDRV_CPU_ADD(ARM7, 54000000) // guess...
MDRV_CPU_PROGRAM_MAP(ssfindo_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_CPU_VBLANK_INT(ssfindo_interrupt,1)
MDRV_MACHINE_RESET(ssfindo)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_UPDATE(ssfindo)
@@ -635,16 +636,17 @@ static MACHINE_DRIVER_START( ppcar )
MDRV_CPU_ADD(ARM7, 54000000) // guess...
MDRV_CPU_PROGRAM_MAP(ppcar_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_CPU_VBLANK_INT(ssfindo_interrupt,1)
MDRV_MACHINE_RESET(ssfindo)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_UPDATE(ssfindo)
diff --git a/src/mame/drivers/sshangha.c b/src/mame/drivers/sshangha.c
index f85c5eef407..3bc5d9c7a80 100644
--- a/src/mame/drivers/sshangha.c
+++ b/src/mame/drivers/sshangha.c
@@ -348,15 +348,18 @@ static MACHINE_DRIVER_START( sshangha )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
MDRV_MACHINE_RESET(sshangha) /* init machine */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER /*| VIDEO_BUFFERS_SPRITERAM*/)
+ /*MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)*/
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(sshangha)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/ssingles.c b/src/mame/drivers/ssingles.c
index c8ea9842d8f..351558d644d 100644
--- a/src/mame/drivers/ssingles.c
+++ b/src/mame/drivers/ssingles.c
@@ -274,10 +274,7 @@ static MACHINE_DRIVER_START( ssingles )
MDRV_CPU_IO_MAP(ssingles_io_map,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(4000000, 256, 0, 256, 256, 0, 256) /* temporary, CRTC will configure screen */
@@ -286,7 +283,7 @@ static MACHINE_DRIVER_START( ssingles )
MDRV_VIDEO_START(ssingles)
MDRV_VIDEO_UPDATE(ssingles)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
MDRV_DEVICE_CONFIG(mc6845_intf)
/* sound hardware */
diff --git a/src/mame/drivers/sslam.c b/src/mame/drivers/sslam.c
index 40ea71310aa..3b35f738617 100644
--- a/src/mame/drivers/sslam.c
+++ b/src/mame/drivers/sslam.c
@@ -738,14 +738,14 @@ static MACHINE_DRIVER_START( sslam )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_IO_MAP(0,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 39*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(sslam)
MDRV_PALETTE_LENGTH(0x800)
@@ -771,14 +771,14 @@ static MACHINE_DRIVER_START( powerbls )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_IO_MAP(sound_io_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(powerbls)
MDRV_PALETTE_LENGTH(0x200)
diff --git a/src/mame/drivers/ssozumo.c b/src/mame/drivers/ssozumo.c
index 1489151c202..e0f7037eb57 100644
--- a/src/mame/drivers/ssozumo.c
+++ b/src/mame/drivers/ssozumo.c
@@ -242,14 +242,14 @@ static MACHINE_DRIVER_START( ssozumo )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,16) /* IRQs are triggered by the main CPU */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8 - 1, 1*8, 31*8 - 1)
+
MDRV_GFXDECODE(ssozumo)
MDRV_PALETTE_LENGTH(64 + 16)
diff --git a/src/mame/drivers/sspeedr.c b/src/mame/drivers/sspeedr.c
index ff3a4b40234..b020c9c13eb 100644
--- a/src/mame/drivers/sspeedr.c
+++ b/src/mame/drivers/sspeedr.c
@@ -225,14 +225,14 @@ static MACHINE_DRIVER_START( sspeedr )
MDRV_CPU_IO_MAP(readport, writeport)
MDRV_CPU_VBLANK_INT(irq0_line_assert, 1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(59.39)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(16 * 1000000 / 15680))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(376, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 375, 0, 247)
+
MDRV_GFXDECODE(sspeedr)
MDRV_PALETTE_LENGTH(16)
diff --git a/src/mame/drivers/ssrj.c b/src/mame/drivers/ssrj.c
index a51a6a2b262..9d8d532d03c 100644
--- a/src/mame/drivers/ssrj.c
+++ b/src/mame/drivers/ssrj.c
@@ -175,14 +175,14 @@ static MACHINE_DRIVER_START( ssrj )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(2*8, 30*8-1, 3*8, 32*8-1)
+
MDRV_GFXDECODE(ssrj)
MDRV_PALETTE_LENGTH(128)
MDRV_PALETTE_INIT(ssrj)
diff --git a/src/mame/drivers/sstrangr.c b/src/mame/drivers/sstrangr.c
index d5988e7532a..838c7fd3f9b 100644
--- a/src/mame/drivers/sstrangr.c
+++ b/src/mame/drivers/sstrangr.c
@@ -186,10 +186,9 @@ static MACHINE_DRIVER_START( sstrangr )
MDRV_CPU_VBLANK_INT(irq0_line_hold,2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(sstrangr)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*8, 262) /* vert size is a guess, taken from mw8080bw */
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 32*8-1)
diff --git a/src/mame/drivers/ssv.c b/src/mame/drivers/ssv.c
index a7376ec92ac..2c205d094e1 100644
--- a/src/mame/drivers/ssv.c
+++ b/src/mame/drivers/ssv.c
@@ -2792,16 +2792,15 @@ static MACHINE_DRIVER_START( ssv )
MDRV_CPU_ADD_TAG("main", V60, 16000000) /* Based on STA-0001 & STA-0001B System boards */
MDRV_CPU_VBLANK_INT(ssv_interrupt,2) /* Vblank */
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(ssv)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
-
MDRV_SCREEN_SIZE(0x180, 0x100)
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
+
MDRV_GFXDECODE(ssv)
MDRV_PALETTE_LENGTH(0x8000)
MDRV_VIDEO_START(ssv)
@@ -2827,6 +2826,7 @@ static MACHINE_DRIVER_START( drifto94 )
MDRV_NVRAM_HANDLER(ssv)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 4, 0xf0-1)
MACHINE_DRIVER_END
@@ -2842,6 +2842,7 @@ static MACHINE_DRIVER_START( gdfs )
MDRV_NVRAM_HANDLER(gdfs)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
MDRV_GFXDECODE(gdfs)
@@ -2858,6 +2859,7 @@ static MACHINE_DRIVER_START( hypreact )
MDRV_CPU_PROGRAM_MAP(hypreact_readmem, hypreact_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(8, 0x148-1, 16, 0xf0-1)
MACHINE_DRIVER_END
@@ -2870,6 +2872,7 @@ static MACHINE_DRIVER_START( hypreac2 )
MDRV_CPU_PROGRAM_MAP(hypreac2_readmem, hypreac2_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 8, 0xf8-1)
MACHINE_DRIVER_END
@@ -2882,6 +2885,7 @@ static MACHINE_DRIVER_START( janjans1 )
MDRV_CPU_PROGRAM_MAP(janjans1_readmem, janjans1_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
MACHINE_DRIVER_END
@@ -2894,6 +2898,7 @@ static MACHINE_DRIVER_START( keithlcy )
MDRV_CPU_PROGRAM_MAP(keithlcy_readmem, keithlcy_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 4, 0xf0-1)
MACHINE_DRIVER_END
@@ -2908,6 +2913,7 @@ static MACHINE_DRIVER_START( meosism )
MDRV_NVRAM_HANDLER(ssv)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
MACHINE_DRIVER_END
@@ -2920,6 +2926,7 @@ static MACHINE_DRIVER_START( mslider )
MDRV_CPU_PROGRAM_MAP(mslider_readmem, mslider_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
MACHINE_DRIVER_END
@@ -2932,6 +2939,7 @@ static MACHINE_DRIVER_START( ryorioh )
MDRV_CPU_PROGRAM_MAP(ryorioh_readmem, ryorioh_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
MACHINE_DRIVER_END
@@ -2944,6 +2952,7 @@ static MACHINE_DRIVER_START( srmp4 )
MDRV_CPU_PROGRAM_MAP(srmp4_readmem, srmp4_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 4, 0xf4-1)
MACHINE_DRIVER_END
@@ -2956,6 +2965,7 @@ static MACHINE_DRIVER_START( srmp7 )
MDRV_CPU_PROGRAM_MAP(srmp7_readmem, srmp7_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
MACHINE_DRIVER_END
@@ -2969,6 +2979,7 @@ static MACHINE_DRIVER_START( stmblade )
MDRV_NVRAM_HANDLER(ssv)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x158-1, 0, 0xf0-1)
MACHINE_DRIVER_END
@@ -2981,6 +2992,7 @@ static MACHINE_DRIVER_START( survarts )
MDRV_CPU_PROGRAM_MAP(survarts_readmem, survarts_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 4, 0xf4-1)
MACHINE_DRIVER_END
@@ -2988,6 +3000,7 @@ static MACHINE_DRIVER_START( dynagear )
/* basic machine hardware */
MDRV_IMPORT_FROM(survarts)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(8, 0x158-16-1, 0, 0xf0-1)
MACHINE_DRIVER_END
@@ -3002,6 +3015,7 @@ static MACHINE_DRIVER_START( eaglshot )
MDRV_NVRAM_HANDLER(ssv)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x140-1, 8, 0xe8-1)
MDRV_GFXDECODE(eaglshot)
@@ -3020,6 +3034,7 @@ static MACHINE_DRIVER_START( sxyreact )
MDRV_NVRAM_HANDLER(ssv)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
MACHINE_DRIVER_END
@@ -3032,6 +3047,7 @@ static MACHINE_DRIVER_START( twineag2 )
MDRV_CPU_PROGRAM_MAP(twineag2_readmem, twineag2_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
MACHINE_DRIVER_END
@@ -3044,6 +3060,7 @@ static MACHINE_DRIVER_START( ultrax )
MDRV_CPU_PROGRAM_MAP(ultrax_readmem, ultrax_writemem)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
MACHINE_DRIVER_END
@@ -3058,6 +3075,7 @@ static MACHINE_DRIVER_START( jsk )
MDRV_CPU_PROGRAM_MAP(jsk_v810_mem, 0)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/st0016.c b/src/mame/drivers/st0016.c
index 546e3f20b7c..a02cf193816 100644
--- a/src/mame/drivers/st0016.c
+++ b/src/mame/drivers/st0016.c
@@ -422,14 +422,14 @@ static MACHINE_DRIVER_START( st0016 )
MDRV_CPU_VBLANK_INT(st0016_int,5) /* 4*nmi + int0 */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(48*8, 48*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 0*8, 48*8-1)
+
MDRV_GFXDECODE(st0016)
MDRV_PALETTE_LENGTH(16*16*4+1)
diff --git a/src/mame/drivers/stactics.c b/src/mame/drivers/stactics.c
index fa8a90837e0..5b966e12747 100644
--- a/src/mame/drivers/stactics.c
+++ b/src/mame/drivers/stactics.c
@@ -183,14 +183,16 @@ static MACHINE_DRIVER_START( stactics )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_VBLANK_INT(stactics_interrupt,1)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_ALWAYS_UPDATE)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(stactics)
diff --git a/src/mame/drivers/stadhero.c b/src/mame/drivers/stadhero.c
index f0c5551f182..b46adabb822 100644
--- a/src/mame/drivers/stadhero.c
+++ b/src/mame/drivers/stadhero.c
@@ -265,14 +265,14 @@ static MACHINE_DRIVER_START( stadhero )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(audio_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(stadhero)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/starcrus.c b/src/mame/drivers/starcrus.c
index 37c2a632e3b..3d2157e8cdb 100644
--- a/src/mame/drivers/starcrus.c
+++ b/src/mame/drivers/starcrus.c
@@ -175,14 +175,14 @@ static MACHINE_DRIVER_START( starcrus )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(starcrus)
MDRV_PALETTE_LENGTH(2)
diff --git a/src/mame/drivers/starfire.c b/src/mame/drivers/starfire.c
index a0d1457c80b..fccec796988 100644
--- a/src/mame/drivers/starfire.c
+++ b/src/mame/drivers/starfire.c
@@ -268,7 +268,7 @@ static MACHINE_DRIVER_START( starfire )
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(STARFIRE_PIXEL_CLOCK, STARFIRE_HTOTAL, STARFIRE_HBEND, STARFIRE_HBSTART, STARFIRE_VTOTAL, STARFIRE_VBEND, STARFIRE_VBSTART)
diff --git a/src/mame/drivers/starshp1.c b/src/mame/drivers/starshp1.c
index cbaa615b9ec..81ff88eeff1 100644
--- a/src/mame/drivers/starshp1.c
+++ b/src/mame/drivers/starshp1.c
@@ -306,9 +306,11 @@ static MACHINE_DRIVER_START( starshp1 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(STARSHP1_PIXEL_CLOCK, STARSHP1_HTOTAL, STARSHP1_HBEND, STARSHP1_HBSTART, STARSHP1_VTOTAL, STARSHP1_VBEND, STARSHP1_VBSTART)
+
MDRV_GFXDECODE(starshp1)
MDRV_PALETTE_LENGTH(19)
MDRV_PALETTE_INIT(starshp1)
diff --git a/src/mame/drivers/starwars.c b/src/mame/drivers/starwars.c
index eccd20881cf..6035a44ce48 100644
--- a/src/mame/drivers/starwars.c
+++ b/src/mame/drivers/starwars.c
@@ -389,16 +389,15 @@ static MACHINE_DRIVER_START( starwars )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_map,0)
- MDRV_SCREEN_REFRESH_RATE(40)
- MDRV_SCREEN_VBLANK_TIME(0)
MDRV_MACHINE_RESET(starwars)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(40)
MDRV_SCREEN_SIZE(400, 300)
MDRV_SCREEN_VISIBLE_AREA(0, 250, 0, 280)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(avg_starwars)
diff --git a/src/mame/drivers/statriv2.c b/src/mame/drivers/statriv2.c
index fbf5abc1a14..fb00e9bb6d7 100644
--- a/src/mame/drivers/statriv2.c
+++ b/src/mame/drivers/statriv2.c
@@ -609,16 +609,16 @@ static MACHINE_DRIVER_START( statriv2 )
MDRV_CPU_IO_MAP(statriv2_readport,statriv2_writeport)
MDRV_CPU_VBLANK_INT(statriv2_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(statriv2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(4*8, 38*8-1, 0, 32*8-1)
+
MDRV_GFXDECODE(statriv2)
MDRV_PALETTE_LENGTH(2*64)
@@ -640,6 +640,7 @@ static MACHINE_DRIVER_START( statriv4 )
MDRV_CPU_MODIFY("main")
MDRV_CPU_IO_MAP(statriv4_readport,statriv4_writeport)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(2*8, 36*8-1, 0, 32*8-1)
MACHINE_DRIVER_END
@@ -658,6 +659,7 @@ static MACHINE_DRIVER_START( sextriv )
MDRV_CPU_MODIFY("main")
MDRV_CPU_IO_MAP(trivquiz_readport,trivquiz_writeport)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(2*8, 36*8-1, 0, 32*8-1)
MACHINE_DRIVER_END
@@ -671,6 +673,7 @@ static MACHINE_DRIVER_START( supertr2 )
MDRV_NVRAM_HANDLER(generic_0fill)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(2*8, 36*8-1, 0, 32*8-1)
MACHINE_DRIVER_END
@@ -684,6 +687,7 @@ static MACHINE_DRIVER_START( supertr3 )
MDRV_NVRAM_HANDLER(generic_0fill)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(2*8, 36*8-1, 0, 32*8-1)
MACHINE_DRIVER_END
@@ -693,6 +697,7 @@ static MACHINE_DRIVER_START( quaquiz2 )
MDRV_NVRAM_HANDLER(quaquiz2)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(4*8, 38*8-1, 0, 32*8-1)
MACHINE_DRIVER_END
@@ -703,6 +708,7 @@ static MACHINE_DRIVER_START( hangman )
MDRV_CPU_REPLACE("main",8085A,12400000/4)
MDRV_CPU_IO_MAP(hangman_readport,supertr2_writeport)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(1*8, 35*8-1, 0, 32*8-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/steaser.c b/src/mame/drivers/steaser.c
index 6ac30603972..031a469efdc 100644
--- a/src/mame/drivers/steaser.c
+++ b/src/mame/drivers/steaser.c
@@ -86,7 +86,8 @@ static MACHINE_DRIVER_START( steaser )
MDRV_GFXDECODE(steaser)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
diff --git a/src/mame/drivers/stepstag.c b/src/mame/drivers/stepstag.c
index f22139ccdc7..2a90436e52a 100644
--- a/src/mame/drivers/stepstag.c
+++ b/src/mame/drivers/stepstag.c
@@ -128,15 +128,14 @@ static MACHINE_DRIVER_START( stepstag )
MDRV_CPU_ADD(M68000, 16000000 ) //??
MDRV_CPU_PROGRAM_MAP(stepstag_sub_readmem,stepstag_sub_writemem)
-
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x200)
MDRV_GFXDECODE(stepstag)
diff --git a/src/mame/drivers/stfight.c b/src/mame/drivers/stfight.c
index 2c0138dcb1b..9d3960fe130 100644
--- a/src/mame/drivers/stfight.c
+++ b/src/mame/drivers/stfight.c
@@ -494,17 +494,18 @@ static MACHINE_DRIVER_START( stfight )
MDRV_CPU_PROGRAM_MAP(readmem_cpu2,writemem_cpu2)
MDRV_CPU_PERIODIC_INT(irq0_line_hold,120)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(stfight)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(stfight)
MDRV_PALETTE_LENGTH(16*4+16*16+16*16+16*16)
diff --git a/src/mame/drivers/stlforce.c b/src/mame/drivers/stlforce.c
index ebb19559ecb..a0b41adb24d 100644
--- a/src/mame/drivers/stlforce.c
+++ b/src/mame/drivers/stlforce.c
@@ -244,13 +244,12 @@ static MACHINE_DRIVER_START( stlforce )
MDRV_CPU_PROGRAM_MAP(stlforce_map,0)
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(58)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(stlforce)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 47*8-1, 0*8, 30*8-1)
@@ -274,6 +273,7 @@ static MACHINE_DRIVER_START( twinbrat )
MDRV_IMPORT_FROM(stlforce)
MDRV_CPU_REPLACE("cpu", M68000, 14745600)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(3*8, 45*8-1, 0*8, 30*8-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/strnskil.c b/src/mame/drivers/strnskil.c
index cde41f78c8e..b3859e80182 100644
--- a/src/mame/drivers/strnskil.c
+++ b/src/mame/drivers/strnskil.c
@@ -343,15 +343,16 @@ static MACHINE_DRIVER_START( strnskil )
MDRV_CPU_PROGRAM_MAP(strnskil_readmem2,strnskil_writemem2)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(strnskil)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/stv.c b/src/mame/drivers/stv.c
index 4b0400ff66c..afc959d6fee 100644
--- a/src/mame/drivers/stv.c
+++ b/src/mame/drivers/stv.c
@@ -2746,18 +2746,20 @@ static MACHINE_DRIVER_START( stv )
MDRV_CPU_ADD(M68000, MASTER_CLOCK_352/5) //11.46 MHz
MDRV_CPU_PROGRAM_MAP(sound_mem, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(192)) // guess, needed to force video update after V-Blank OUT interrupt
-
MDRV_MACHINE_START(stv)
MDRV_MACHINE_RESET(stv)
MDRV_NVRAM_HANDLER(stv) /* Actually 93c45 */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK )
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK )
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(192)) // guess, needed to force video update after V-Blank OUT interrupt
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(1024, 1024)
MDRV_SCREEN_VISIBLE_AREA(0*8, 703, 0*8, 512) // we need to use a resolution as high as the max size it can change to
+
MDRV_PALETTE_LENGTH(2048+(2048*2))//standard palette + extra memory for rgb brightness.
MDRV_GFXDECODE(stv)
diff --git a/src/mame/drivers/subs.c b/src/mame/drivers/subs.c
index c4a2278c48b..2145b601f83 100644
--- a/src/mame/drivers/subs.c
+++ b/src/mame/drivers/subs.c
@@ -187,25 +187,21 @@ static MACHINE_DRIVER_START( subs )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(subs_interrupt,4)
- MDRV_SCREEN_REFRESH_RATE(57)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(subs)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(subs)
MDRV_PALETTE_LENGTH(4)
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
diff --git a/src/mame/drivers/suna16.c b/src/mame/drivers/suna16.c
index c23ebbc2968..82b79854429 100644
--- a/src/mame/drivers/suna16.c
+++ b/src/mame/drivers/suna16.c
@@ -864,15 +864,16 @@ static MACHINE_DRIVER_START( bssoccer )
MDRV_CPU_PROGRAM_MAP(bssoccer_pcm_2_readmem,bssoccer_pcm_2_writemem)
MDRV_CPU_IO_MAP(bssoccer_pcm_2_readport,bssoccer_pcm_2_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(suna16)
MDRV_PALETTE_LENGTH(512)
@@ -923,15 +924,16 @@ static MACHINE_DRIVER_START( uballoon )
/* 2nd PCM Z80 missing */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(suna16)
MDRV_PALETTE_LENGTH(512)
@@ -974,15 +976,16 @@ static MACHINE_DRIVER_START( sunaq )
/* 2nd PCM Z80 missing */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(suna16)
MDRV_PALETTE_LENGTH(512)
@@ -1043,15 +1046,16 @@ static MACHINE_DRIVER_START( bestbest )
/* 2nd PCM Z80 missing */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(bestbest)
MDRV_PALETTE_LENGTH(256*8)
diff --git a/src/mame/drivers/suna8.c b/src/mame/drivers/suna8.c
index 72662113469..48001ffa7d7 100644
--- a/src/mame/drivers/suna8.c
+++ b/src/mame/drivers/suna8.c
@@ -1561,14 +1561,14 @@ static MACHINE_DRIVER_START( hardhead )
MDRV_CPU_IO_MAP(hardhead_sound_readport,hardhead_sound_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4) /* No NMI */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(suna8)
MDRV_PALETTE_LENGTH(256)
@@ -1616,14 +1616,14 @@ static MACHINE_DRIVER_START( rranger )
MDRV_CPU_IO_MAP(rranger_sound_readport,rranger_sound_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4) /* NMI = retn */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(suna8)
MDRV_PALETTE_LENGTH(256)
@@ -1679,14 +1679,14 @@ static MACHINE_DRIVER_START( brickzn )
MDRV_CPU_PROGRAM_MAP(brickzn_pcm_readmem,brickzn_pcm_writemem)
MDRV_CPU_IO_MAP(brickzn_pcm_readport,brickzn_pcm_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) // we're using IPT_VBLANK
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(suna8)
MDRV_PALETTE_LENGTH(512)
@@ -1778,14 +1778,14 @@ static MACHINE_DRIVER_START( starfigh )
MDRV_CPU_IO_MAP(hardhead_sound_readport,hardhead_sound_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4) /* No NMI */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(suna8)
MDRV_PALETTE_LENGTH(256)
@@ -1837,14 +1837,14 @@ static MACHINE_DRIVER_START( sparkman )
MDRV_CPU_IO_MAP(hardhead_sound_readport,hardhead_sound_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4) /* No NMI */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
+
MDRV_GFXDECODE(suna8)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/supbtime.c b/src/mame/drivers/supbtime.c
index b7ca669b416..71fc7fe803b 100644
--- a/src/mame/drivers/supbtime.c
+++ b/src/mame/drivers/supbtime.c
@@ -382,14 +382,16 @@ static MACHINE_DRIVER_START( supbtime )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(supbtime)
MDRV_PALETTE_LENGTH(1024)
@@ -421,14 +423,16 @@ static MACHINE_DRIVER_START( chinatwn )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(supbtime)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/supdrapo.c b/src/mame/drivers/supdrapo.c
index feb09621bac..0aba74ee8fe 100644
--- a/src/mame/drivers/supdrapo.c
+++ b/src/mame/drivers/supdrapo.c
@@ -266,11 +266,10 @@ static MACHINE_DRIVER_START( supdrapo )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
diff --git a/src/mame/drivers/superchs.c b/src/mame/drivers/superchs.c
index dfebb31fa13..ecc9204787d 100644
--- a/src/mame/drivers/superchs.c
+++ b/src/mame/drivers/superchs.c
@@ -426,18 +426,19 @@ static MACHINE_DRIVER_START( superchs )
MDRV_CPU_PROGRAM_MAP(superchs_cpub_readmem,superchs_cpub_writemem)
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)/* VBL */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(8) /* CPU slices - Need to interleave Cpu's 1 & 3 */
MDRV_MACHINE_RESET(superchs)
MDRV_NVRAM_HANDLER(superchs)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(superchs)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/superdq.c b/src/mame/drivers/superdq.c
index 75614005e14..cf67e326333 100644
--- a/src/mame/drivers/superdq.c
+++ b/src/mame/drivers/superdq.c
@@ -343,7 +343,9 @@ static MACHINE_DRIVER_START( superdq )
MDRV_MACHINE_START(superdq)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_SELF_RENDER)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_SELF_RENDER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/superqix.c b/src/mame/drivers/superqix.c
index 7caae377a23..e3810dcc41a 100644
--- a/src/mame/drivers/superqix.c
+++ b/src/mame/drivers/superqix.c
@@ -932,14 +932,14 @@ static MACHINE_DRIVER_START( pbillian )
MDRV_CPU_IO_MAP(pbillian_port_map,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pbillian)
MDRV_PALETTE_LENGTH(512)
@@ -966,14 +966,14 @@ static MACHINE_DRIVER_START( hotsmash )
MDRV_CPU_ADD(M68705, 4000000) /* ???? */
MDRV_CPU_PROGRAM_MAP(m68705_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pbillian)
MDRV_PALETTE_LENGTH(512)
@@ -1003,15 +1003,16 @@ static MACHINE_DRIVER_START( sqix )
MDRV_CPU_PROGRAM_MAP(mcu_map,0)
MDRV_CPU_IO_MAP(mcu_io_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(500)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(sqix)
MDRV_PALETTE_LENGTH(256)
@@ -1039,14 +1040,14 @@ static MACHINE_DRIVER_START( sqixbl )
MDRV_CPU_IO_MAP(bootleg_port_map,0)
MDRV_CPU_VBLANK_INT(bootleg_interrupt,6) /* ??? */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(sqix)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/supertnk.c b/src/mame/drivers/supertnk.c
index ed6fba6d3f0..c694cf75574 100644
--- a/src/mame/drivers/supertnk.c
+++ b/src/mame/drivers/supertnk.c
@@ -418,11 +418,10 @@ static MACHINE_DRIVER_START( supertnk )
MDRV_MACHINE_RESET(supertnk)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(supertnk)
MDRV_VIDEO_UPDATE(supertnk)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
diff --git a/src/mame/drivers/suprgolf.c b/src/mame/drivers/suprgolf.c
index 8c9ed5e8bba..9f2f7e13704 100644
--- a/src/mame/drivers/suprgolf.c
+++ b/src/mame/drivers/suprgolf.c
@@ -296,16 +296,16 @@ static MACHINE_DRIVER_START( suprgolf )
MDRV_VIDEO_START(suprgolf)
MDRV_VIDEO_UPDATE(suprgolf)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_RESET(suprgolf)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 191)
+
MDRV_GFXDECODE(suprgolf)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/suprloco.c b/src/mame/drivers/suprloco.c
index 71efa40836e..12a63a2122f 100644
--- a/src/mame/drivers/suprloco.c
+++ b/src/mame/drivers/suprloco.c
@@ -177,14 +177,14 @@ static MACHINE_DRIVER_START( suprloco )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4) /* NMIs are caused by the main CPU */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(5000))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(suprloco)
MDRV_PALETTE_LENGTH(512+256)
diff --git a/src/mame/drivers/suprnova.c b/src/mame/drivers/suprnova.c
index ded46c30e4b..fea97d05087 100644
--- a/src/mame/drivers/suprnova.c
+++ b/src/mame/drivers/suprnova.c
@@ -953,16 +953,18 @@ static MACHINE_DRIVER_START(skns)
MDRV_CPU_PROGRAM_MAP(skns_readmem,skns_writemem)
MDRV_CPU_VBLANK_INT(skns_interrupt,2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(skns)
MDRV_NVRAM_HANDLER(generic_1fill)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16,64*16)
MDRV_SCREEN_VISIBLE_AREA(0,319,0,239)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_GFXDECODE(skns_bg)
diff --git a/src/mame/drivers/suprridr.c b/src/mame/drivers/suprridr.c
index 549b401ed5f..a252b094347 100644
--- a/src/mame/drivers/suprridr.c
+++ b/src/mame/drivers/suprridr.c
@@ -362,14 +362,14 @@ static MACHINE_DRIVER_START( suprridr )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_IO_MAP(sound_portmap,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(suprridr)
MDRV_PALETTE_LENGTH(96)
diff --git a/src/mame/drivers/suprslam.c b/src/mame/drivers/suprslam.c
index fb7288196a1..9be6160ee07 100644
--- a/src/mame/drivers/suprslam.c
+++ b/src/mame/drivers/suprslam.c
@@ -336,15 +336,17 @@ static MACHINE_DRIVER_START( suprslam )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(suprslam_sound_readport,suprslam_sound_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2300) /* hand-tuned */)
-
MDRV_GFXDECODE(suprslam)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2300) /* hand-tuned */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
+
MDRV_PALETTE_LENGTH(0x800)
MDRV_VIDEO_START(suprslam)
diff --git a/src/mame/drivers/surpratk.c b/src/mame/drivers/surpratk.c
index 8e1c18569b2..a176e12ee71 100644
--- a/src/mame/drivers/surpratk.c
+++ b/src/mame/drivers/surpratk.c
@@ -241,16 +241,18 @@ static MACHINE_DRIVER_START( surpratk )
MDRV_CPU_PROGRAM_MAP(surpratk_readmem,surpratk_writemem)
MDRV_CPU_VBLANK_INT(surpratk_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(surpratk)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(surpratk)
diff --git a/src/mame/drivers/system1.c b/src/mame/drivers/system1.c
index 3cebd82cde1..ee1a785ffbe 100644
--- a/src/mame/drivers/system1.c
+++ b/src/mame/drivers/system1.c
@@ -2493,16 +2493,18 @@ static MACHINE_DRIVER_START( system1 )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4) /* NMIs are caused by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(system1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER|VIDEO_ALWAYS_UPDATE)// hw collisions
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)// hw collisions
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(system1)
MDRV_PALETTE_LENGTH(1536)
@@ -2527,6 +2529,7 @@ static MACHINE_DRIVER_START( small )
MDRV_IMPORT_FROM( system1 )
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0*8+8, 32*8-1-8, 0*8, 28*8-1)
MACHINE_DRIVER_END
@@ -2611,6 +2614,7 @@ static MACHINE_DRIVER_START( shtngmst )
MDRV_MACHINE_RESET(system1_banked)
/* video hardware - same as small - left / right 8 pixels clipped */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0*8+8, 32*8-1-8, 0*8, 28*8-1)
MDRV_VIDEO_UPDATE(choplifter)
@@ -2630,6 +2634,7 @@ static MACHINE_DRIVER_START( noboranb )
MDRV_MACHINE_RESET(system1_banked)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 0*8, 28*8-1)
MACHINE_DRIVER_END
@@ -2652,6 +2657,7 @@ static MACHINE_DRIVER_START( ufosensi )
MDRV_IMPORT_FROM( wbml )
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 27*8-1)
/* video hardware */
diff --git a/src/mame/drivers/system16.c b/src/mame/drivers/system16.c
index b868e73cb4b..d2c23edf94a 100644
--- a/src/mame/drivers/system16.c
+++ b/src/mame/drivers/system16.c
@@ -457,14 +457,14 @@ static MACHINE_DRIVER_START( system16 )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(sys16)
MDRV_PALETTE_LENGTH(2048*ShadowColorsMultiplier)
diff --git a/src/mame/drivers/system18.c b/src/mame/drivers/system18.c
index 979e49d514d..d5f89eec04a 100644
--- a/src/mame/drivers/system18.c
+++ b/src/mame/drivers/system18.c
@@ -1126,14 +1126,14 @@ static MACHINE_DRIVER_START( system18 )
MDRV_CPU_PROGRAM_MAP(sound_readmem_18,sound_writemem_18)
MDRV_CPU_IO_MAP(sound_readport_18,sound_writeport_18)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(sys16)
MDRV_PALETTE_LENGTH((2048+2048)*ShadowColorsMultiplier) // 64 extra colours for vdp (but we use 2048 so shadow mask works)
diff --git a/src/mame/drivers/tagteam.c b/src/mame/drivers/tagteam.c
index cf7c436391f..705dd292f28 100644
--- a/src/mame/drivers/tagteam.c
+++ b/src/mame/drivers/tagteam.c
@@ -279,14 +279,14 @@ static MACHINE_DRIVER_START( tagteam )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,16) /* IRQs are triggered by the main CPU */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(3072))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tagteam)
MDRV_PALETTE_LENGTH(32)
diff --git a/src/mame/drivers/tail2nos.c b/src/mame/drivers/tail2nos.c
index b7bf6418dca..73ef981df6a 100644
--- a/src/mame/drivers/tail2nos.c
+++ b/src/mame/drivers/tail2nos.c
@@ -274,16 +274,16 @@ static MACHINE_DRIVER_START( tail2nos )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
/* IRQs are triggered by the YM2608 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(tail2nos)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tail2nos)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/taito_b.c b/src/mame/drivers/taito_b.c
index 41fb3ff4355..16f59b1022a 100644
--- a/src/mame/drivers/taito_b.c
+++ b/src/mame/drivers/taito_b.c
@@ -2646,15 +2646,16 @@ static MACHINE_DRIVER_START( rastsag2 )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -2683,15 +2684,16 @@ static MACHINE_DRIVER_START( ashura )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -2720,15 +2722,16 @@ static MACHINE_DRIVER_START( crimec )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -2757,15 +2760,16 @@ static MACHINE_DRIVER_START( tetrist )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -2793,15 +2797,16 @@ static MACHINE_DRIVER_START( tetrista )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(masterw_sound_readmem,masterw_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -2830,15 +2835,16 @@ static MACHINE_DRIVER_START( hitice )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(viofight_sound_readmem, viofight_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -2873,15 +2879,16 @@ static MACHINE_DRIVER_START( rambo3 )
MDRV_CPU_ADD(Z80, XTAL_24MHz/6) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(rambo3)
MDRV_PALETTE_LENGTH(4096)
@@ -2910,15 +2917,16 @@ static MACHINE_DRIVER_START( rambo3a )
MDRV_CPU_ADD(Z80, XTAL_24MHz/6) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -2947,18 +2955,19 @@ static MACHINE_DRIVER_START( pbobble )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(mb87078)
MDRV_NVRAM_HANDLER(taito_b)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -2987,18 +2996,19 @@ static MACHINE_DRIVER_START( spacedx )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(mb87078)
MDRV_NVRAM_HANDLER(taito_b)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -3027,15 +3037,16 @@ static MACHINE_DRIVER_START( spacedxo )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -3064,18 +3075,19 @@ static MACHINE_DRIVER_START( qzshowby )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(mb87078)
MDRV_NVRAM_HANDLER(taito_b)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -3104,15 +3116,16 @@ static MACHINE_DRIVER_START( viofight )
MDRV_CPU_ADD(Z80, 6000000) /* 6 MHz verified */
MDRV_CPU_PROGRAM_MAP(viofight_sound_readmem, viofight_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -3145,15 +3158,16 @@ static MACHINE_DRIVER_START( masterw )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(masterw_sound_readmem,masterw_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -3183,15 +3197,16 @@ static MACHINE_DRIVER_START( silentd )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -3220,15 +3235,16 @@ static MACHINE_DRIVER_START( selfeena )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -3266,15 +3282,16 @@ static MACHINE_DRIVER_START( ryujin )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
@@ -3310,15 +3327,16 @@ static MACHINE_DRIVER_START( sbm )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taito_b)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/taito_f2.c b/src/mame/drivers/taito_f2.c
index f0192ee4200..c20291d2d4e 100644
--- a/src/mame/drivers/taito_f2.c
+++ b/src/mame/drivers/taito_f2.c
@@ -3876,14 +3876,14 @@ static MACHINE_DRIVER_START( taito_f2 )
MDRV_MACHINE_START(f2)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* frames per second, vblank duration */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taitof2)
MDRV_PALETTE_LENGTH(4096)
@@ -4328,14 +4328,14 @@ static MACHINE_DRIVER_START( camltrya )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(camltrya_sound_readmem,camltrya_sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pivot)
MDRV_PALETTE_LENGTH(4096)
@@ -4370,14 +4370,14 @@ static MACHINE_DRIVER_START( driveout )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(driveout_sound_readmem,driveout_sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(pivot)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/taito_f3.c b/src/mame/drivers/taito_f3.c
index 76e53d8959e..69bba7b54c1 100644
--- a/src/mame/drivers/taito_f3.c
+++ b/src/mame/drivers/taito_f3.c
@@ -446,18 +446,18 @@ static MACHINE_DRIVER_START( f3 )
TAITO_F3_SOUND_SYSTEM_CPU(16000000)
- MDRV_SCREEN_REFRESH_RATE(58.97)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(624) /* 58.97 Hz, 624us vblank time */)
-
MDRV_MACHINE_START(f3)
MDRV_MACHINE_RESET(f3)
MDRV_NVRAM_HANDLER(taito_f3)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(58.97)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(624) /* 58.97 Hz, 624us vblank time */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8+48*2, 32*8)
MDRV_SCREEN_VISIBLE_AREA(46, 40*8-1 + 46, 24, 24+232-1)
+
MDRV_GFXDECODE(taito_f3)
MDRV_PALETTE_LENGTH(8192)
@@ -476,16 +476,19 @@ MACHINE_DRIVER_END
*/
static MACHINE_DRIVER_START( f3_224a )
MDRV_IMPORT_FROM(f3)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(46, 40*8-1 + 46, 31, 31+224-1)
MACHINE_DRIVER_END
static MACHINE_DRIVER_START( f3_224b )
MDRV_IMPORT_FROM(f3)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(46, 40*8-1 + 46, 32, 32+224-1)
MACHINE_DRIVER_END
static MACHINE_DRIVER_START( f3_224c )
MDRV_IMPORT_FROM(f3)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(46, 40*8-1 + 46, 24, 24+224-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/taito_h.c b/src/mame/drivers/taito_h.c
index 3da91e34e8f..fb1cdaf212d 100644
--- a/src/mame/drivers/taito_h.c
+++ b/src/mame/drivers/taito_h.c
@@ -585,15 +585,16 @@ static MACHINE_DRIVER_START( syvalion )
MDRV_MACHINE_START(taitoh)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16, 64*16)
MDRV_SCREEN_VISIBLE_AREA(0*16, 32*16-1, 3*16, 28*16-1)
+
MDRV_GFXDECODE(syvalion)
MDRV_PALETTE_LENGTH(33*16)
@@ -623,15 +624,16 @@ static MACHINE_DRIVER_START( recordbr )
MDRV_MACHINE_START(taitoh)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16, 64*16)
MDRV_SCREEN_VISIBLE_AREA(1*16, 21*16-1, 2*16, 17*16-1)
+
MDRV_GFXDECODE(recordbr)
MDRV_PALETTE_LENGTH(32*16)
@@ -661,15 +663,16 @@ static MACHINE_DRIVER_START( dleague )
MDRV_MACHINE_START(taitoh)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16, 64*16)
MDRV_SCREEN_VISIBLE_AREA(1*16, 21*16-1, 2*16, 17*16-1)
+
MDRV_GFXDECODE(dleague)
MDRV_PALETTE_LENGTH(33*16)
diff --git a/src/mame/drivers/taito_l.c b/src/mame/drivers/taito_l.c
index e7e4a9fb413..66bbd1afbdd 100644
--- a/src/mame/drivers/taito_l.c
+++ b/src/mame/drivers/taito_l.c
@@ -2295,17 +2295,18 @@ static MACHINE_DRIVER_START( fhawk )
MDRV_CPU_PROGRAM_MAP(fhawk_2_readmem,fhawk_2_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,3) /* fixes slow down problems */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(fhawk)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(2)
MDRV_PALETTE_LENGTH(256)
@@ -2390,17 +2391,18 @@ static MACHINE_DRIVER_START( kurikint )
MDRV_CPU_PROGRAM_MAP(kurikint_2_readmem,kurikint_2_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(kurikint)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(2)
MDRV_PALETTE_LENGTH(256)
@@ -2436,16 +2438,16 @@ static MACHINE_DRIVER_START( plotting )
MDRV_CPU_PROGRAM_MAP(plotting_readmem,plotting_writemem)
MDRV_CPU_VBLANK_INT(vbl_interrupt,3)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(plotting)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(1)
MDRV_PALETTE_LENGTH(256)
@@ -2519,17 +2521,18 @@ static MACHINE_DRIVER_START( evilston )
MDRV_CPU_PROGRAM_MAP(evilston_2_readmem,evilston_2_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(evilston)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(2)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/taito_x.c b/src/mame/drivers/taito_x.c
index 37185c0a1da..e61f7bba36b 100644
--- a/src/mame/drivers/taito_x.c
+++ b/src/mame/drivers/taito_x.c
@@ -1014,18 +1014,19 @@ static MACHINE_DRIVER_START( superman )
MDRV_CPU_ADD(Z80, XTAL_16MHz/4) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(57.43)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
MDRV_MACHINE_START(taitox)
MDRV_MACHINE_RESET(cchip1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(57.43)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(52*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(superman)
MDRV_PALETTE_LENGTH(2048)
@@ -1053,17 +1054,18 @@ static MACHINE_DRIVER_START( daisenpu )
MDRV_CPU_ADD(Z80, XTAL_16MHz/4) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(daisenpu_sound_readmem,daisenpu_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
MDRV_MACHINE_START(taitox)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(52*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(superman)
MDRV_PALETTE_LENGTH(2048)
@@ -1089,17 +1091,18 @@ static MACHINE_DRIVER_START( gigandes )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz ??? */
MDRV_CPU_PROGRAM_MAP(ballbros_sound_readmem,ballbros_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
MDRV_MACHINE_START(taitox)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(52*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(superman)
MDRV_PALETTE_LENGTH(2048)
@@ -1127,14 +1130,14 @@ static MACHINE_DRIVER_START( ballbros )
MDRV_CPU_ADD(Z80, 4000000) /* 4 MHz ??? */
MDRV_CPU_PROGRAM_MAP(ballbros_sound_readmem,ballbros_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
MDRV_MACHINE_START(taitox)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(52*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
diff --git a/src/mame/drivers/taito_z.c b/src/mame/drivers/taito_z.c
index ecad84aac32..7420a963723 100644
--- a/src/mame/drivers/taito_z.c
+++ b/src/mame/drivers/taito_z.c
@@ -2847,14 +2847,14 @@ static MACHINE_DRIVER_START( contcirc )
MDRV_MACHINE_START(taitoz)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 3*8, 31*8-1)
+
MDRV_GFXDECODE(taitoz)
MDRV_PALETTE_LENGTH(4096)
@@ -2892,14 +2892,14 @@ static MACHINE_DRIVER_START( chasehq )
MDRV_MACHINE_START(taitoz)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(chasehq)
MDRV_PALETTE_LENGTH(4096)
@@ -2936,15 +2936,16 @@ static MACHINE_DRIVER_START( enforce )
MDRV_MACHINE_START(taitoz)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 31*8-1)
+
MDRV_GFXDECODE(taitoz)
MDRV_PALETTE_LENGTH(4096)
@@ -2978,15 +2979,16 @@ static MACHINE_DRIVER_START( bshark )
MDRV_MACHINE_START(taitoz)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(taitoz)
MDRV_PALETTE_LENGTH(4096)
@@ -3022,15 +3024,16 @@ static MACHINE_DRIVER_START( sci )
MDRV_MACHINE_START(taitoz)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(50)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(taitoz)
MDRV_PALETTE_LENGTH(4096)
@@ -3066,15 +3069,16 @@ static MACHINE_DRIVER_START( nightstr )
MDRV_MACHINE_START(taitoz)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(chasehq)
MDRV_PALETTE_LENGTH(4096)
@@ -3111,15 +3115,16 @@ static MACHINE_DRIVER_START( aquajack )
MDRV_MACHINE_START(taitoz)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(500)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(taitoz)
MDRV_PALETTE_LENGTH(4096)
@@ -3151,16 +3156,16 @@ static MACHINE_DRIVER_START( spacegun )
MDRV_MACHINE_START(taitoz)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(spacegun)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(taitoz)
MDRV_PALETTE_LENGTH(4096)
@@ -3196,15 +3201,16 @@ static MACHINE_DRIVER_START( dblaxle )
MDRV_MACHINE_START(taitoz)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(dblaxle)
MDRV_PALETTE_LENGTH(4096)
@@ -3239,16 +3245,16 @@ static MACHINE_DRIVER_START( racingb )
MDRV_CPU_VBLANK_INT(dblaxle_cpub_interrupt,1)
MDRV_MACHINE_START(taitoz)
-
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(dblaxle)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/taitoair.c b/src/mame/drivers/taitoair.c
index c6cf75c59f4..56d2145a805 100644
--- a/src/mame/drivers/taitoair.c
+++ b/src/mame/drivers/taitoair.c
@@ -603,17 +603,18 @@ static MACHINE_DRIVER_START( airsys )
MDRV_CPU_DATA_MAP(DSP_map_data, 0)
MDRV_CPU_IO_MAP(DSP_map_io, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
MDRV_MACHINE_START(taitoair)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16, 64*16)
MDRV_SCREEN_VISIBLE_AREA(0*16, 32*16-1, 3*16, 28*16-1)
+
MDRV_GFXDECODE(airsys)
MDRV_PALETTE_LENGTH(512*16)
diff --git a/src/mame/drivers/taitojc.c b/src/mame/drivers/taitojc.c
index c438d8a2b00..070053fdeac 100644
--- a/src/mame/drivers/taitojc.c
+++ b/src/mame/drivers/taitojc.c
@@ -1284,18 +1284,19 @@ static MACHINE_DRIVER_START( taitojc )
MDRV_CPU_PROGRAM_MAP(tms_program_map, 0)
MDRV_CPU_DATA_MAP(tms_data_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(taitojc)
MDRV_NVRAM_HANDLER(93C46)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 400)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 0, 399)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(taitojc)
diff --git a/src/mame/drivers/taitosj.c b/src/mame/drivers/taitosj.c
index 1be9a31de3e..f087dd60d10 100644
--- a/src/mame/drivers/taitosj.c
+++ b/src/mame/drivers/taitosj.c
@@ -1872,17 +1872,17 @@ static MACHINE_DRIVER_START( nomcu )
/* - periodic IRQ, with frequency 6000000/(4*16*16*10*16) = 36.621 Hz, */
MDRV_CPU_PERIODIC_INT(irq0_line_hold, (double)6000000/(4*16*16*10*16))
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_START(taitosj)
MDRV_MACHINE_RESET(taitosj)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(taitosj)
MDRV_PALETTE_LENGTH(64)
diff --git a/src/mame/drivers/taitowlf.c b/src/mame/drivers/taitowlf.c
index 5a7105d8d12..f1d9c53ea85 100644
--- a/src/mame/drivers/taitowlf.c
+++ b/src/mame/drivers/taitowlf.c
@@ -414,18 +414,18 @@ static MACHINE_DRIVER_START(taitowlf)
MDRV_CPU_PROGRAM_MAP(taitowlf_map, 0)
MDRV_CPU_IO_MAP(taitowlf_io, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(taitowlf)
MDRV_NVRAM_HANDLER( mc146818 )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(640, 480)
MDRV_SCREEN_VISIBLE_AREA(0, 639, 0, 199)
+
MDRV_GFXDECODE(CGA)
MDRV_PALETTE_LENGTH(16)
diff --git a/src/mame/drivers/talbot.c b/src/mame/drivers/talbot.c
index 317866b954a..f3b4bb66919 100644
--- a/src/mame/drivers/talbot.c
+++ b/src/mame/drivers/talbot.c
@@ -244,14 +244,14 @@ static MACHINE_DRIVER_START( talbot )
MDRV_CPU_ADD(ALPHA8201, 18432000/6/8)
MDRV_CPU_PROGRAM_MAP(mcu_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(talbot)
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/tank8.c b/src/mame/drivers/tank8.c
index fef6ae736de..bb7b70f73dd 100644
--- a/src/mame/drivers/tank8.c
+++ b/src/mame/drivers/tank8.c
@@ -333,15 +333,18 @@ static MACHINE_DRIVER_START( tank8 )
MDRV_CPU_ADD(M6800, 11055000 / 10) /* ? */
MDRV_CPU_PROGRAM_MAP(tank8_cpu_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(30 * 1000000 / 15681))
MDRV_MACHINE_RESET(tank8)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(30 * 1000000 / 15681))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 524)
MDRV_SCREEN_VISIBLE_AREA(16, 495, 0, 463)
+
MDRV_GFXDECODE(tank8)
MDRV_PALETTE_LENGTH(20)
diff --git a/src/mame/drivers/tankbatt.c b/src/mame/drivers/tankbatt.c
index 004d2893034..05071ab4571 100644
--- a/src/mame/drivers/tankbatt.c
+++ b/src/mame/drivers/tankbatt.c
@@ -283,14 +283,14 @@ static MACHINE_DRIVER_START( tankbatt )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(tankbatt_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tankbatt)
MDRV_PALETTE_LENGTH(256*2)
diff --git a/src/mame/drivers/tankbust.c b/src/mame/drivers/tankbust.c
index 18c4a1e0d35..779426434d9 100644
--- a/src/mame/drivers/tankbust.c
+++ b/src/mame/drivers/tankbust.c
@@ -375,19 +375,19 @@ static MACHINE_DRIVER_START( tankbust )
MDRV_CPU_PROGRAM_MAP( readmem2, writemem2 )
MDRV_CPU_IO_MAP( readport2, writeport2 )
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_INTERLEAVE(100)
//MDRV_MACHINE_RESET( ... )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES( VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE ( 64*8, 32*8 )
MDRV_SCREEN_VISIBLE_AREA ( 16*8, 56*8-1, 1*8, 31*8-1 )
// MDRV_SCREEN_VISIBLE_AREA ( 0*8, 64*8-1, 1*8, 31*8-1 )
+
MDRV_GFXDECODE( tankbust )
MDRV_PALETTE_LENGTH( 128 )
diff --git a/src/mame/drivers/taotaido.c b/src/mame/drivers/taotaido.c
index 7d793936796..08309592c10 100644
--- a/src/mame/drivers/taotaido.c
+++ b/src/mame/drivers/taotaido.c
@@ -368,15 +368,15 @@ static MACHINE_DRIVER_START( taotaido )
MDRV_CPU_IO_MAP(taotaido_sound_readport,taotaido_sound_writeport)
/* IRQs are triggered by the YM2610 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_GFXDECODE(taotaido)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
+
MDRV_PALETTE_LENGTH(0x800)
MDRV_VIDEO_START(taotaido)
diff --git a/src/mame/drivers/targeth.c b/src/mame/drivers/targeth.c
index e916a8e4099..d9c010afb0f 100644
--- a/src/mame/drivers/targeth.c
+++ b/src/mame/drivers/targeth.c
@@ -192,14 +192,14 @@ static MACHINE_DRIVER_START( targeth )
MDRV_CPU_PROGRAM_MAP(targeth_readmem,targeth_writemem)
MDRV_CPU_VBLANK_INT(targeth_interrupt,3)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16, 32*16) /* 1024x512 */
MDRV_SCREEN_VISIBLE_AREA(0, 24*16-1, 16, 16*16-1) /* 400x240 */
+
MDRV_GFXDECODE(0x080000)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/tarzan.c b/src/mame/drivers/tarzan.c
index cd8b84d45aa..d2d2b6917dd 100644
--- a/src/mame/drivers/tarzan.c
+++ b/src/mame/drivers/tarzan.c
@@ -93,14 +93,14 @@ static MACHINE_DRIVER_START( tarzan )
MDRV_CPU_ADD(Z80,8000000) /* ? */
MDRV_CPU_PROGRAM_MAP(tarzan_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_VIDEO_START(tarzan)
diff --git a/src/mame/drivers/tatsumi.c b/src/mame/drivers/tatsumi.c
index fed29cde2e0..70cf4c6973a 100644
--- a/src/mame/drivers/tatsumi.c
+++ b/src/mame/drivers/tatsumi.c
@@ -837,15 +837,16 @@ static MACHINE_DRIVER_START( apache3 )
MDRV_CPU_ADD(Z80, 8000000) //???
MDRV_CPU_PROGRAM_MAP(apache3_z80_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(apache3)
MDRV_PALETTE_LENGTH(1024 + 4096) /* 1024 real colours, and 4096 arranged as series of cluts */
@@ -879,15 +880,16 @@ static MACHINE_DRIVER_START( roundup5 )
MDRV_CPU_ADD(Z80, 4000000) //???
MDRV_CPU_PROGRAM_MAP(roundup5_z80_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(roundup5)
MDRV_PALETTE_LENGTH(1024 + 4096) /* 1024 real colours, and 4096 arranged as series of cluts */
@@ -922,15 +924,16 @@ static MACHINE_DRIVER_START( cyclwarr )
MDRV_CPU_ADD(Z80, 16000000 / 4) /* Confirmed */
MDRV_CPU_PROGRAM_MAP(cyclwarr_z80_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(200)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(cyclwarr)
MDRV_PALETTE_LENGTH(8192 + 8192)
@@ -965,15 +968,16 @@ static MACHINE_DRIVER_START( bigfight )
MDRV_CPU_ADD(Z80, 16000000 / 4) /* Confirmed */
MDRV_CPU_PROGRAM_MAP(cyclwarr_z80_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(200)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(cyclwarr)
MDRV_PALETTE_LENGTH(8192 + 8192)
diff --git a/src/mame/drivers/tattack.c b/src/mame/drivers/tattack.c
index 8f96f679f2c..3c15e154225 100644
--- a/src/mame/drivers/tattack.c
+++ b/src/mame/drivers/tattack.c
@@ -186,16 +186,16 @@ static MACHINE_DRIVER_START( tattack )
/* basic machine hardware */
MDRV_CPU_ADD(Z80, 8000000 / 2) /* 4 MHz ? */
MDRV_CPU_PROGRAM_MAP(mem, 0)
-
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(tattack)
MDRV_PALETTE_LENGTH(16)
MDRV_PALETTE_INIT(tattack )
diff --git a/src/mame/drivers/taxidrvr.c b/src/mame/drivers/taxidrvr.c
index 0173bb0ab85..13f0e5d52c9 100644
--- a/src/mame/drivers/taxidrvr.c
+++ b/src/mame/drivers/taxidrvr.c
@@ -373,17 +373,18 @@ static MACHINE_DRIVER_START( taxidrvr )
MDRV_CPU_IO_MAP(readport3,writeport3)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1) /* ??? */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
MDRV_MACHINE_RESET(taxidrvr)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 27*8-1)
+
MDRV_GFXDECODE(taxidrvr)
MDRV_PALETTE_LENGTH(16)
diff --git a/src/mame/drivers/tbowl.c b/src/mame/drivers/tbowl.c
index ccdbdacb623..8d35c1b4b86 100644
--- a/src/mame/drivers/tbowl.c
+++ b/src/mame/drivers/tbowl.c
@@ -604,19 +604,18 @@ static MACHINE_DRIVER_START( tbowl )
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(tbowl)
MDRV_PALETTE_LENGTH(1024*2)
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/tceptor.c b/src/mame/drivers/tceptor.c
index 17241e52bee..b06bfdc3338 100644
--- a/src/mame/drivers/tceptor.c
+++ b/src/mame/drivers/tceptor.c
@@ -460,26 +460,25 @@ static MACHINE_DRIVER_START( tceptor )
MDRV_MACHINE_RESET(tceptor)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(tceptor)
MDRV_PALETTE_LENGTH(4096)
MDRV_DEFAULT_LAYOUT(layout_horizont)
- MDRV_SCREEN_ADD("2D", 0x000)
+ MDRV_SCREEN_ADD("2D", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60.606060)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(38*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(2*8, 34*8-1 + 2*8, 0*8, 28*8-1 + 0)
- MDRV_SCREEN_ADD("3D Left", 0x000)
+ MDRV_SCREEN_ADD("3D Left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60.606060)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(38*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(2*8, 34*8-1 + 2*8, 0*8, 28*8-1 + 0)
- MDRV_SCREEN_ADD("3D Right", 0x000)
+ MDRV_SCREEN_ADD("3D Right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60.606060)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/tcl.c b/src/mame/drivers/tcl.c
index 74f07243c51..0d933d19939 100644
--- a/src/mame/drivers/tcl.c
+++ b/src/mame/drivers/tcl.c
@@ -109,14 +109,14 @@ static MACHINE_DRIVER_START( tcl )
MDRV_CPU_ADD(Z80,12000000/4)
MDRV_CPU_PROGRAM_MAP(tcl_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tcl)
MDRV_PALETTE_LENGTH(16*16)
diff --git a/src/mame/drivers/tecmo.c b/src/mame/drivers/tecmo.c
index f7532c51faf..2abcbb6bbd3 100644
--- a/src/mame/drivers/tecmo.c
+++ b/src/mame/drivers/tecmo.c
@@ -574,14 +574,14 @@ static MACHINE_DRIVER_START( rygar )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(rygar_sound_readmem,rygar_sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* frames per second, vblank duration */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tecmo)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/tecmo16.c b/src/mame/drivers/tecmo16.c
index 59e7079ba19..fd677fb70c3 100644
--- a/src/mame/drivers/tecmo16.c
+++ b/src/mame/drivers/tecmo16.c
@@ -449,15 +449,16 @@ static MACHINE_DRIVER_START( fstarfrc )
/* audio CPU */ /* 4MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
/* NMIs are triggered by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tecmo16)
MDRV_PALETTE_LENGTH(4096)
@@ -489,15 +490,16 @@ static MACHINE_DRIVER_START( ginkun )
/* audio CPU */ /* 4MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
/* NMIs are triggered by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tecmo16)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/tecmosys.c b/src/mame/drivers/tecmosys.c
index 4c903d8bd06..55568a4d11b 100644
--- a/src/mame/drivers/tecmosys.c
+++ b/src/mame/drivers/tecmosys.c
@@ -544,16 +544,19 @@ static MACHINE_DRIVER_START( deroon )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(readport,writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_GFXDECODE(tecmosys)
MDRV_NVRAM_HANDLER(93C46)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 42*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(0x800+1)
MDRV_VIDEO_START(deroon)
diff --git a/src/mame/drivers/tehkanwc.c b/src/mame/drivers/tehkanwc.c
index fcb0e7054ae..a274baeece8 100644
--- a/src/mame/drivers/tehkanwc.c
+++ b/src/mame/drivers/tehkanwc.c
@@ -672,15 +672,16 @@ static MACHINE_DRIVER_START( tehkanwc )
MDRV_CPU_IO_MAP(sound_port,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - seems enough to keep the CPUs in sync */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tehkanwc)
MDRV_PALETTE_LENGTH(768)
diff --git a/src/mame/drivers/tempest.c b/src/mame/drivers/tempest.c
index 8873a9cf640..2ad26c14a54 100644
--- a/src/mame/drivers/tempest.c
+++ b/src/mame/drivers/tempest.c
@@ -586,15 +586,14 @@ static MACHINE_DRIVER_START( tempest )
MDRV_CPU_PROGRAM_MAP(main_map, 0)
MDRV_CPU_PERIODIC_INT(irq0_line_assert, (double)MASTER_CLOCK / 4096 / 12)
MDRV_WATCHDOG_TIME_INIT(ATTOTIME_IN_HZ(CLOCK_3KHZ / 256))
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_NVRAM_HANDLER(atari_vg)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(400, 300)
MDRV_SCREEN_VISIBLE_AREA(0, 580, 0, 570)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(avg_tempest)
diff --git a/src/mame/drivers/terracre.c b/src/mame/drivers/terracre.c
index ad91573d46e..7db715efdc0 100644
--- a/src/mame/drivers/terracre.c
+++ b/src/mame/drivers/terracre.c
@@ -612,15 +612,16 @@ static MACHINE_DRIVER_START( amazon )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport_3526)
MDRV_CPU_VBLANK_INT(irq0_line_hold,128) /* ??? */
- MDRV_SCREEN_REFRESH_RATE( 60 )
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_MACHINE_START(amazon)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( 60 )
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(terracre)
MDRV_PALETTE_LENGTH(1*16+16*16+16*256)
@@ -651,13 +652,14 @@ static MACHINE_DRIVER_START( ym3526 )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport_3526)
MDRV_CPU_VBLANK_INT(irq0_line_hold,128) /* ??? */
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE( 60 )
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(terracre)
MDRV_PALETTE_LENGTH(1*16+16*16+16*256)
@@ -688,13 +690,14 @@ static MACHINE_DRIVER_START( ym2203 )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport_2203)
MDRV_CPU_VBLANK_INT(irq0_line_hold,128) /* ??? */
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(terracre)
MDRV_PALETTE_LENGTH(1*16+16*16+16*256)
diff --git a/src/mame/drivers/tetrisp2.c b/src/mame/drivers/tetrisp2.c
index 7e706638093..1ddb4ebc45f 100644
--- a/src/mame/drivers/tetrisp2.c
+++ b/src/mame/drivers/tetrisp2.c
@@ -1039,16 +1039,16 @@ static MACHINE_DRIVER_START( tetrisp2 )
MDRV_CPU_PROGRAM_MAP(tetrisp2_readmem,tetrisp2_writemem)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(tetrisp2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x140, 0xe0)
MDRV_SCREEN_VISIBLE_AREA(0, 0x140-1, 0, 0xe0-1)
+
MDRV_GFXDECODE(tetrisp2)
MDRV_PALETTE_LENGTH(0x8000)
@@ -1071,16 +1071,16 @@ static MACHINE_DRIVER_START( rockn )
MDRV_CPU_PROGRAM_MAP(rockn1_readmem,rockn1_writemem)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(tetrisp2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x140, 0xe0)
MDRV_SCREEN_VISIBLE_AREA(0, 0x140-1, 0, 0xe0-1)
+
MDRV_GFXDECODE(tetrisp2)
MDRV_PALETTE_LENGTH(0x8000)
@@ -1105,16 +1105,16 @@ static MACHINE_DRIVER_START( rockn2 )
MDRV_CPU_PROGRAM_MAP(rockn2_readmem,rockn2_writemem)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(tetrisp2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x140, 0xe0)
MDRV_SCREEN_VISIBLE_AREA(0, 0x140-1, 0, 0xe0-1)
+
MDRV_GFXDECODE(tetrisp2)
MDRV_PALETTE_LENGTH(0x8000)
@@ -1145,20 +1145,19 @@ static MACHINE_DRIVER_START( rocknms )
MDRV_NVRAM_HANDLER(tetrisp2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(rocknms)
MDRV_PALETTE_LENGTH(0x10000)
MDRV_DEFAULT_LAYOUT(layout_rocknms)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(0x140, 0xe0)
MDRV_SCREEN_VISIBLE_AREA(0, 0x140-1, 0, 0xe0-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/tetriunk.c b/src/mame/drivers/tetriunk.c
index 77ff6a2fc04..6fef32c1cd9 100644
--- a/src/mame/drivers/tetriunk.c
+++ b/src/mame/drivers/tetriunk.c
@@ -180,14 +180,15 @@ static MACHINE_DRIVER_START( tetriunk )
MDRV_CPU_ADD(I8088, 8000000)
MDRV_CPU_PROGRAM_MAP(tetriunk_mem, 0)
MDRV_CPU_IO_MAP(tetriunk_io, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320,200)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 200-1)
+
MDRV_GFXDECODE(tetriunk)
MDRV_PALETTE_LENGTH(256)
MDRV_PALETTE_INIT(tetrisunk)
diff --git a/src/mame/drivers/thayers.c b/src/mame/drivers/thayers.c
index 3a883345bf2..264bd3ea5cd 100644
--- a/src/mame/drivers/thayers.c
+++ b/src/mame/drivers/thayers.c
@@ -469,8 +469,8 @@ static MACHINE_DRIVER_START( thayers )
MDRV_CPU_IO_MAP(copio,0)
/* video */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/thedeep.c b/src/mame/drivers/thedeep.c
index 5d07a530ab4..fe83b38269d 100644
--- a/src/mame/drivers/thedeep.c
+++ b/src/mame/drivers/thedeep.c
@@ -373,16 +373,16 @@ static MACHINE_DRIVER_START( thedeep )
/* CPU3 is a i8751 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(thedeep)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x100, 0xf8)
MDRV_SCREEN_VISIBLE_AREA(0, 0x100-1, 0, 0xf8-1)
+
MDRV_GFXDECODE(thedeep)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/thepit.c b/src/mame/drivers/thepit.c
index 0b4337f0105..8759327c21c 100644
--- a/src/mame/drivers/thepit.c
+++ b/src/mame/drivers/thepit.c
@@ -652,11 +652,10 @@ static MACHINE_DRIVER_START( thepit )
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(thepit)
MDRV_PALETTE_LENGTH(32+8)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
diff --git a/src/mame/drivers/thief.c b/src/mame/drivers/thief.c
index 898dd1ca414..0ee86940d64 100644
--- a/src/mame/drivers/thief.c
+++ b/src/mame/drivers/thief.c
@@ -466,16 +466,16 @@ static MACHINE_DRIVER_START( sharkatt )
MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT(thief_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 24*8-1)
+
MDRV_PALETTE_LENGTH(16)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_VIDEO_START(thief)
MDRV_VIDEO_UPDATE(thief)
@@ -502,14 +502,14 @@ static MACHINE_DRIVER_START( thief )
MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT(thief_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(16)
MDRV_VIDEO_START(thief)
@@ -538,14 +538,14 @@ static MACHINE_DRIVER_START( natodef )
MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT(thief_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_PALETTE_LENGTH(16)
MDRV_VIDEO_START(thief)
diff --git a/src/mame/drivers/thoop2.c b/src/mame/drivers/thoop2.c
index 771ff5ff57f..4f06664635d 100644
--- a/src/mame/drivers/thoop2.c
+++ b/src/mame/drivers/thoop2.c
@@ -200,14 +200,14 @@ static MACHINE_DRIVER_START( thoop2 )
MDRV_CPU_PROGRAM_MAP(thoop2_readmem,thoop2_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
+
MDRV_GFXDECODE(thoop2)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/thunderj.c b/src/mame/drivers/thunderj.c
index 45c6833e3b7..b74d44a38d4 100644
--- a/src/mame/drivers/thunderj.c
+++ b/src/mame/drivers/thunderj.c
@@ -340,11 +340,11 @@ static MACHINE_DRIVER_START( thunderj )
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(thunderj)
MDRV_PALETTE_LENGTH(2048)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses a VAD chip to generate video signals */
diff --git a/src/mame/drivers/thunderx.c b/src/mame/drivers/thunderx.c
index 8c575cad8f4..ff617a353b5 100644
--- a/src/mame/drivers/thunderx.c
+++ b/src/mame/drivers/thunderx.c
@@ -705,16 +705,18 @@ static MACHINE_DRIVER_START( scontra )
/* audio CPU */ /* ? */
MDRV_CPU_PROGRAM_MAP(scontra_readmem_sound,scontra_writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(scontra)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(1024)
MDRV_VIDEO_START(scontra)
@@ -745,16 +747,18 @@ static MACHINE_DRIVER_START( thunderx )
/* audio CPU */ /* ? */
MDRV_CPU_PROGRAM_MAP(thunderx_readmem_sound,thunderx_writemem_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(thunderx)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(1024)
MDRV_VIDEO_START(scontra)
diff --git a/src/mame/drivers/tiamc1.c b/src/mame/drivers/tiamc1.c
index dfb35e26027..a89bed186f3 100644
--- a/src/mame/drivers/tiamc1.c
+++ b/src/mame/drivers/tiamc1.c
@@ -279,17 +279,18 @@ static MACHINE_DRIVER_START( tiamc1 )
MDRV_CPU_PROGRAM_MAP(tiamc1_readmem,tiamc1_writemem)
MDRV_CPU_IO_MAP(tiamc1_readport,tiamc1_writeport)
- MDRV_SCREEN_REFRESH_RATE(50)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1600))
MDRV_CPU_VBLANK_INT(irq1_line_hold,1)
MDRV_MACHINE_RESET(tiamc1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(50)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1600))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1)
+
MDRV_GFXDECODE(tiamc1)
MDRV_PALETTE_LENGTH(16)
diff --git a/src/mame/drivers/tickee.c b/src/mame/drivers/tickee.c
index e7859141efa..6ce1bdf897b 100644
--- a/src/mame/drivers/tickee.c
+++ b/src/mame/drivers/tickee.c
@@ -423,11 +423,10 @@ static MACHINE_DRIVER_START( tickee )
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(tickee)
MDRV_VIDEO_UPDATE(tms340x0)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(VIDEO_CLOCK/2, 444, 0, 320, 233, 0, 200)
diff --git a/src/mame/drivers/tigeroad.c b/src/mame/drivers/tigeroad.c
index affc8e5fc73..7c4e55d2cdc 100644
--- a/src/mame/drivers/tigeroad.c
+++ b/src/mame/drivers/tigeroad.c
@@ -556,14 +556,17 @@ static MACHINE_DRIVER_START( tigeroad )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(0,sound_writeport)
/* IRQs are triggered by the YM2203 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tigeroad)
MDRV_PALETTE_LENGTH(576)
diff --git a/src/mame/drivers/timelimt.c b/src/mame/drivers/timelimt.c
index b41095a6fb5..9abe2905715 100644
--- a/src/mame/drivers/timelimt.c
+++ b/src/mame/drivers/timelimt.c
@@ -270,18 +270,19 @@ static MACHINE_DRIVER_START( timelimt )
MDRV_CPU_IO_MAP(readport_sound,writeport_sound)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1) /* ? */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(50)
MDRV_MACHINE_START(timelimt)
MDRV_MACHINE_RESET(timelimt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(timelimt)
MDRV_PALETTE_LENGTH(64)
diff --git a/src/mame/drivers/timeplt.c b/src/mame/drivers/timeplt.c
index f7653e3b5c3..6c7efab6c7e 100644
--- a/src/mame/drivers/timeplt.c
+++ b/src/mame/drivers/timeplt.c
@@ -325,15 +325,17 @@ static MACHINE_DRIVER_START( timeplt )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_VBLANK_INT(timeplt_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_START(timeplt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_SCANLINE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_SCANLINE)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(timeplt)
MDRV_PALETTE_LENGTH(32*4+64*4)
diff --git a/src/mame/drivers/tmaster.c b/src/mame/drivers/tmaster.c
index 200971d4068..bb36d5cd391 100644
--- a/src/mame/drivers/tmaster.c
+++ b/src/mame/drivers/tmaster.c
@@ -683,16 +683,17 @@ static MACHINE_DRIVER_START( tm3k )
MDRV_CPU_PROGRAM_MAP(tmaster_map,0)
MDRV_CPU_VBLANK_INT(tm3k_interrupt,2+5+20) // ??
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(tmaster)
MDRV_NVRAM_HANDLER(generic_0fill)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(400, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 400-1, 0, 256-1)
+
MDRV_PALETTE_LENGTH(0x800)
MDRV_VIDEO_START(tmaster)
@@ -756,14 +757,13 @@ static MACHINE_DRIVER_START( galgames )
MDRV_MACHINE_RESET( galgames )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
-
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_SCREEN_SIZE(400, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 400-1, 0, 256-1)
+
MDRV_PALETTE_LENGTH(0x800) // only 0x100 used
MDRV_VIDEO_START(galgames)
diff --git a/src/mame/drivers/tmnt.c b/src/mame/drivers/tmnt.c
index 2a22a6cfbc9..89fa453bbae 100644
--- a/src/mame/drivers/tmnt.c
+++ b/src/mame/drivers/tmnt.c
@@ -2331,14 +2331,16 @@ static MACHINE_DRIVER_START( cuebrick )
MDRV_CPU_PROGRAM_MAP(cuebrick_main_map,0)
MDRV_CPU_VBLANK_INT(cuebrick_interrupt,10)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(1024)
MDRV_NVRAM_HANDLER(generic_0fill)
@@ -2365,14 +2367,16 @@ static MACHINE_DRIVER_START( mia )
MDRV_CPU_ADD(Z80, XTAL_3_579545MHz)
MDRV_CPU_PROGRAM_MAP(mia_audio_map,0)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(1024)
MDRV_VIDEO_START(mia)
@@ -2411,14 +2415,16 @@ static MACHINE_DRIVER_START( tmnt )
MDRV_MACHINE_RESET(tmnt);
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(1024)
MDRV_VIDEO_START(tmnt)
@@ -2456,14 +2462,17 @@ static MACHINE_DRIVER_START( punkshot )
MDRV_CPU_ADD(Z80, XTAL_3_579545MHz)
MDRV_CPU_PROGRAM_MAP(punkshot_audio_map,0)
/* NMIs are generated by the 053260 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(punkshot)
@@ -2492,14 +2501,16 @@ static MACHINE_DRIVER_START( lgtnfght )
MDRV_CPU_ADD(Z80, XTAL_3_579545MHz)
MDRV_CPU_PROGRAM_MAP(lgtnfght_audio_map,0)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(lgtnfght)
@@ -2529,16 +2540,19 @@ static MACHINE_DRIVER_START( blswhstl )
MDRV_CPU_ADD(Z80, XTAL_3_579545MHz)
MDRV_CPU_PROGRAM_MAP(ssriders_audio_map,0)
/* NMIs are generated by the 053260 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_NVRAM_HANDLER(eeprom)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(blswhstl)
@@ -2586,14 +2600,17 @@ static MACHINE_DRIVER_START( glfgreat )
MDRV_CPU_ADD(Z80, XTAL_3_579545MHz)
MDRV_CPU_PROGRAM_MAP(glfgreat_audio_map,0)
/* NMIs are generated by the 053260 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_GFXDECODE(glfgreat)
MDRV_PALETTE_LENGTH(2048)
@@ -2633,16 +2650,19 @@ static MACHINE_DRIVER_START( prmrsocr )
/* audio CPU */ /* ? */
MDRV_CPU_PROGRAM_MAP(prmrsocr_audio_map,0)
/* NMIs are generated by the 054539 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_NVRAM_HANDLER(thndrx2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_GFXDECODE(glfgreat)
MDRV_PALETTE_LENGTH(2048)
@@ -2674,16 +2694,19 @@ static MACHINE_DRIVER_START( tmnt2 )
/* 02 instead of 00. */
MDRV_CPU_PROGRAM_MAP(ssriders_audio_map,0)
/* NMIs are generated by the 053260 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_NVRAM_HANDLER(eeprom)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(lgtnfght)
@@ -2714,16 +2737,19 @@ static MACHINE_DRIVER_START( ssriders )
/* audio CPU */ /* ????? makes the ROM test sync */
MDRV_CPU_PROGRAM_MAP(ssriders_audio_map,0)
/* NMIs are generated by the 053260 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_NVRAM_HANDLER(eeprom)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(lgtnfght)
@@ -2750,16 +2776,18 @@ static MACHINE_DRIVER_START( sunsetbl )
MDRV_CPU_PROGRAM_MAP(sunsetbl_main_map,0)
MDRV_CPU_VBLANK_INT(irq4_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(eeprom)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(sunsetbl)
@@ -2784,16 +2812,19 @@ static MACHINE_DRIVER_START( thndrx2 )
MDRV_CPU_ADD(Z80, XTAL_3_579545MHz)
MDRV_CPU_PROGRAM_MAP(thndrx2_audio_map,0)
/* NMIs are generated by the 053260 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_NVRAM_HANDLER(thndrx2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(thndrx2)
diff --git a/src/mame/drivers/tnzs.c b/src/mame/drivers/tnzs.c
index 297fe1d87c4..a1b0e0dfaff 100644
--- a/src/mame/drivers/tnzs.c
+++ b/src/mame/drivers/tnzs.c
@@ -1298,17 +1298,18 @@ static MACHINE_DRIVER_START( arknoid2 )
MDRV_CPU_PROGRAM_MAP(sub_readmem,sub_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(tnzs)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tnzs)
MDRV_PALETTE_LENGTH(512)
@@ -1336,17 +1337,18 @@ static MACHINE_DRIVER_START( drtoppel )
MDRV_CPU_PROGRAM_MAP(sub_readmem,sub_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(tnzs)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tnzs)
MDRV_PALETTE_LENGTH(512)
@@ -1378,17 +1380,18 @@ static MACHINE_DRIVER_START( tnzs )
MDRV_CPU_PROGRAM_MAP(i8742_readmem,i8742_writemem)
MDRV_CPU_IO_MAP(i8742_readport,i8742_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(tnzs)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tnzs)
MDRV_PALETTE_LENGTH(512)
@@ -1415,17 +1418,18 @@ static MACHINE_DRIVER_START( insectx )
MDRV_CPU_PROGRAM_MAP(sub_readmem,sub_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(tnzs)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(insectx)
MDRV_PALETTE_LENGTH(512)
@@ -1452,17 +1456,18 @@ static MACHINE_DRIVER_START( kageki )
MDRV_CPU_PROGRAM_MAP(kageki_sub_readmem,kageki_sub_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(tnzs)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tnzs)
MDRV_PALETTE_LENGTH(512)
@@ -1500,17 +1505,18 @@ static MACHINE_DRIVER_START( tnzsb )
MDRV_CPU_PROGRAM_MAP(tnzsb_cpu2_map,0)
MDRV_CPU_IO_MAP(tnzsb_readport,tnzsb_writeport)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(tnzs)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tnzs)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/toaplan1.c b/src/mame/drivers/toaplan1.c
index fc2a9b0ff18..496f6d6219c 100644
--- a/src/mame/drivers/toaplan1.c
+++ b/src/mame/drivers/toaplan1.c
@@ -1229,16 +1229,19 @@ static MACHINE_DRIVER_START( rallybik )
MDRV_CPU_PROGRAM_MAP(toaplan1_sound_map, 0)
MDRV_CPU_IO_MAP(rallybik_sound_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(toaplan1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262) /* copied these from toaplan2, to be verified */
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(rallybik)
MDRV_PALETTE_LENGTH((64*16)+(64*16))
@@ -1266,16 +1269,19 @@ static MACHINE_DRIVER_START( truxton )
MDRV_CPU_PROGRAM_MAP(toaplan1_sound_map, 0)
MDRV_CPU_IO_MAP(truxton_sound_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(toaplan1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262) /* copied these from toaplan2, to be verified */
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(toaplan1)
MDRV_PALETTE_LENGTH((64*16)+(64*16))
@@ -1303,16 +1309,19 @@ static MACHINE_DRIVER_START( hellfire )
MDRV_CPU_PROGRAM_MAP(toaplan1_sound_map, 0)
MDRV_CPU_IO_MAP(hellfire_sound_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(toaplan1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262) /* copied these from toaplan2, to be verified */
MDRV_SCREEN_VISIBLE_AREA(0, 319, 16, 255)
+
MDRV_GFXDECODE(toaplan1)
MDRV_PALETTE_LENGTH((64*16)+(64*16))
@@ -1340,16 +1349,19 @@ static MACHINE_DRIVER_START( zerowing )
MDRV_CPU_PROGRAM_MAP(toaplan1_sound_map, 0)
MDRV_CPU_IO_MAP(zerowing_sound_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(zerozone)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262) /* copied these from toaplan2, to be verified */
MDRV_SCREEN_VISIBLE_AREA(0, 319, 16, 255)
+
MDRV_GFXDECODE(toaplan1)
MDRV_PALETTE_LENGTH((64*16)+(64*16))
@@ -1381,16 +1393,19 @@ static MACHINE_DRIVER_START( demonwld )
MDRV_CPU_PROGRAM_MAP(DSP_program_map,0)
MDRV_CPU_IO_MAP(DSP_io_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(demonwld)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262) /* copied these from toaplan2, to be verified */
MDRV_SCREEN_VISIBLE_AREA(0, 319, 16, 255)
+
MDRV_GFXDECODE(toaplan1)
MDRV_PALETTE_LENGTH((64*16)+(64*16))
@@ -1414,15 +1429,17 @@ static MACHINE_DRIVER_START( samesame )
MDRV_CPU_PROGRAM_MAP(samesame_main_map, 0)
MDRV_CPU_VBLANK_INT(toaplan1_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(toaplan1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262) /* copied these from toaplan2, to be verified */
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(toaplan1)
MDRV_PALETTE_LENGTH((64*16)+(64*16))
@@ -1450,16 +1467,19 @@ static MACHINE_DRIVER_START( outzone )
MDRV_CPU_PROGRAM_MAP(toaplan1_sound_map, 0)
MDRV_CPU_IO_MAP(outzone_sound_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(zerozone)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262) /* copied these from toaplan2, to be verified */
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(outzone)
MDRV_PALETTE_LENGTH((64*16)+(64*16))
@@ -1483,15 +1503,17 @@ static MACHINE_DRIVER_START( vimana )
MDRV_CPU_PROGRAM_MAP(vimana_main_map, 0)
MDRV_CPU_VBLANK_INT(toaplan1_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(vimana)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262) /* copied these from toaplan2, to be verified */
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(vm)
MDRV_PALETTE_LENGTH((64*16)+(64*16))
diff --git a/src/mame/drivers/toaplan2.c b/src/mame/drivers/toaplan2.c
index c7d4d1bf8f9..25ab2ce60d5 100644
--- a/src/mame/drivers/toaplan2.c
+++ b/src/mame/drivers/toaplan2.c
@@ -3304,15 +3304,17 @@ static MACHINE_DRIVER_START( tekipaki )
MDRV_CPU_PROGRAM_MAP(hd647180_mem, 0)
#endif
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(toaplan2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(toaplan2)
MDRV_PALETTE_LENGTH(2048)
@@ -3341,15 +3343,17 @@ static MACHINE_DRIVER_START( ghox )
MDRV_CPU_PROGRAM_MAP(hd647180_mem, 0)
#endif
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(ghox)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(toaplan2)
MDRV_PALETTE_LENGTH(2048)
@@ -3378,15 +3382,17 @@ static MACHINE_DRIVER_START( dogyuun )
MDRV_CPU_IO_MAP(V25_port, 0)
#endif
- MDRV_SCREEN_REFRESH_RATE( (XTAL_27MHz / 4) / (432 * 263) )
-
MDRV_MACHINE_RESET(dogyuun)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( (XTAL_27MHz / 4) / (432 * 263) )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(2)
MDRV_PALETTE_LENGTH(2048)
@@ -3419,15 +3425,17 @@ static MACHINE_DRIVER_START( kbash )
MDRV_CPU_IO_MAP(V25_port, 0)
#endif
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(toaplan2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(toaplan2)
MDRV_PALETTE_LENGTH(2048)
@@ -3453,15 +3461,17 @@ static MACHINE_DRIVER_START( kbash2 )
MDRV_CPU_PROGRAM_MAP(kbash2_68k_mem, 0)
MDRV_CPU_VBLANK_INT(toaplan2_vblank_irq4,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(toaplan2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(toaplan2)
MDRV_PALETTE_LENGTH(2048)
@@ -3489,15 +3499,17 @@ static MACHINE_DRIVER_START( truxton2 )
MDRV_CPU_PROGRAM_MAP(truxton2_68k_mem, 0)
MDRV_CPU_VBLANK_INT(toaplan2_vblank_irq2,1)
- MDRV_SCREEN_REFRESH_RATE( (XTAL_27MHz / 4) / (432 * 263) ) /* 27MHz Oscillator */
-
MDRV_MACHINE_RESET(toaplan2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( (XTAL_27MHz / 4) / (432 * 263) ) /* 27MHz Oscillator */
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(truxton2)
MDRV_PALETTE_LENGTH(2048)
@@ -3527,16 +3539,19 @@ static MACHINE_DRIVER_START( pipibibs )
MDRV_CPU_ADD(Z80,XTAL_27MHz/8) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(sound_z80_mem, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(toaplan2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(toaplan2)
MDRV_PALETTE_LENGTH(2048)
@@ -3564,16 +3579,19 @@ static MACHINE_DRIVER_START( whoopee )
/* Change this to 10MHz when HD647180 gets dumped. 10MHz Oscillator */
MDRV_CPU_PROGRAM_MAP(sound_z80_mem, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(toaplan2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(toaplan2)
MDRV_PALETTE_LENGTH(2048)
@@ -3600,16 +3618,19 @@ static MACHINE_DRIVER_START( pipibibi )
MDRV_CPU_ADD(Z80,27000000/8) /* ??? 3.37MHz */
MDRV_CPU_PROGRAM_MAP(sound_z80_mem, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(toaplan2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(toaplan2)
MDRV_PALETTE_LENGTH(2048)
@@ -3639,16 +3660,18 @@ static MACHINE_DRIVER_START( fixeight )
MDRV_CPU_IO_MAP(V25_port, 0)
#endif
- MDRV_SCREEN_REFRESH_RATE( (XTAL_27MHz / 4) / (432 * 263) )
-
MDRV_MACHINE_RESET(toaplan2)
// MDRV_NVRAM_HANDLER(fixeight) /* See 37B6 code */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( (XTAL_27MHz / 4) / (432 * 263) )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(truxton2)
MDRV_PALETTE_LENGTH(2048)
@@ -3674,15 +3697,17 @@ static MACHINE_DRIVER_START( fixeighb )
MDRV_CPU_PROGRAM_MAP(fixeighb_68k_mem, 0)
MDRV_CPU_VBLANK_INT(toaplan2_vblank_irq2,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(toaplan2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(fixeighb)
MDRV_PALETTE_LENGTH(2048)
@@ -3712,15 +3737,17 @@ static MACHINE_DRIVER_START( vfive )
MDRV_CPU_IO_MAP(V25_port, 0)
#endif
- MDRV_SCREEN_REFRESH_RATE( (27000000.0 / 4) / (432 * 263) )
-
MDRV_MACHINE_RESET(vfive)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( (27000000.0 / 4) / (432 * 263) )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(toaplan2)
MDRV_PALETTE_LENGTH(2048)
@@ -3749,15 +3776,17 @@ static MACHINE_DRIVER_START( batsugun )
MDRV_CPU_IO_MAP(V25_port, 0)
#endif
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(toaplan2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(2)
MDRV_PALETTE_LENGTH(2048)
@@ -3784,15 +3813,17 @@ static MACHINE_DRIVER_START( snowbro2 )
MDRV_CPU_PROGRAM_MAP(snowbro2_68k_mem, 0)
MDRV_CPU_VBLANK_INT(toaplan2_vblank_irq4,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(toaplan2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(toaplan2)
MDRV_PALETTE_LENGTH(2048)
@@ -3822,16 +3853,19 @@ static MACHINE_DRIVER_START( mahoudai )
MDRV_CPU_ADD(Z80,32000000/8) /* 4MHz , 32MHz Oscillator */
MDRV_CPU_PROGRAM_MAP(raizing_sound_z80_mem, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(toaplan2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(raizing)
MDRV_PALETTE_LENGTH(2048)
@@ -3861,16 +3895,19 @@ static MACHINE_DRIVER_START( shippumd )
MDRV_CPU_ADD(Z80,32000000/8) /* 4MHz , 32MHz Oscillator */
MDRV_CPU_PROGRAM_MAP(raizing_sound_z80_mem, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(toaplan2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(raizing)
MDRV_PALETTE_LENGTH(2048)
@@ -3900,16 +3937,19 @@ static MACHINE_DRIVER_START( bgaregga )
MDRV_CPU_ADD(Z80,32000000/8) /* 4MHz , 32MHz Oscillator */
MDRV_CPU_PROGRAM_MAP(bgaregga_sound_z80_mem, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(bgaregga)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(raizing)
MDRV_PALETTE_LENGTH(2048)
@@ -3940,16 +3980,19 @@ static MACHINE_DRIVER_START( batrider )
MDRV_CPU_PROGRAM_MAP(batrider_sound_z80_mem, 0)
MDRV_CPU_IO_MAP(batrider_sound_z80_port, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(bgaregga)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(batrider)
MDRV_PALETTE_LENGTH(2048)
@@ -3982,17 +4025,21 @@ static MACHINE_DRIVER_START( bbakraid )
MDRV_CPU_PROGRAM_MAP(bbakraid_sound_z80_mem, 0)
MDRV_CPU_IO_MAP(bbakraid_sound_z80_port, 0)
MDRV_CPU_PERIODIC_INT(bbakraid_snd_interrupt, 448)
- MDRV_SCREEN_REFRESH_RATE(60)
+
MDRV_INTERLEAVE(10)
MDRV_MACHINE_RESET(toaplan2)
MDRV_NVRAM_HANDLER(bbakraid)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(432, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_GFXDECODE(batrider)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/toki.c b/src/mame/drivers/toki.c
index cd45f418e59..881ea87b563 100644
--- a/src/mame/drivers/toki.c
+++ b/src/mame/drivers/toki.c
@@ -442,14 +442,17 @@ static MACHINE_DRIVER_START( toki ) /* KOYO 20.000MHz near the cpu */
SEIBU_SOUND_SYSTEM_CPU(XTAL_14_31818MHz/4) /* verifed on pcb */
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_MACHINE_RESET(seibu_sound_1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1) /* verified */
+
MDRV_GFXDECODE(toki)
MDRV_PALETTE_LENGTH(1024)
@@ -473,13 +476,15 @@ static MACHINE_DRIVER_START( tokib )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(tokib_audio_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1) /* verified */
+
MDRV_GFXDECODE(tokib)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/toobin.c b/src/mame/drivers/toobin.c
index fd0e6150959..77611d33395 100644
--- a/src/mame/drivers/toobin.c
+++ b/src/mame/drivers/toobin.c
@@ -243,17 +243,19 @@ static MACHINE_DRIVER_START( toobin )
MDRV_CPU_ADD(M68010, ATARI_CLOCK_32MHz/4)
MDRV_CPU_PROGRAM_MAP(main_readmem,main_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(toobin)
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* the vert size is copied from atarisy2.c. Needs to be verified */
MDRV_SCREEN_SIZE(64*8, 420)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 48*8-1)
+
MDRV_GFXDECODE(toobin)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/topshoot.c b/src/mame/drivers/topshoot.c
index 981f1daf904..1056da99de6 100644
--- a/src/mame/drivers/topshoot.c
+++ b/src/mame/drivers/topshoot.c
@@ -245,18 +245,20 @@ static MACHINE_DRIVER_START( genesis_base )
MDRV_CPU_PROGRAM_MAP(genesis_z80_readmem, genesis_z80_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1) /* from vdp at scanline 0xe0 */
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_INTERLEAVE(100)
MDRV_MACHINE_START(genesis)
MDRV_MACHINE_RESET(genesis)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(342,262)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 223)
+
MDRV_PALETTE_LENGTH(64)
MDRV_VIDEO_START(genesis)
@@ -279,6 +281,7 @@ static MACHINE_DRIVER_START( topshoot )
/* video hardware */
MDRV_VIDEO_START(genesis)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 223)
/* sound hardware */
diff --git a/src/mame/drivers/topspeed.c b/src/mame/drivers/topspeed.c
index 5b9987d2356..3fd7c58f815 100644
--- a/src/mame/drivers/topspeed.c
+++ b/src/mame/drivers/topspeed.c
@@ -707,14 +707,14 @@ static MACHINE_DRIVER_START( topspeed )
MDRV_MACHINE_START(topspeed)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(topspeed)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/toratora.c b/src/mame/drivers/toratora.c
index b333dbe3730..779807026fe 100644
--- a/src/mame/drivers/toratora.c
+++ b/src/mame/drivers/toratora.c
@@ -408,10 +408,9 @@ static MACHINE_DRIVER_START( toratora )
MDRV_MACHINE_RESET(toratora)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(toratora)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0,256-1,8,248-1)
diff --git a/src/mame/drivers/tourtabl.c b/src/mame/drivers/tourtabl.c
index 89dcc92e59f..84fc1a797a9 100644
--- a/src/mame/drivers/tourtabl.c
+++ b/src/mame/drivers/tourtabl.c
@@ -211,10 +211,10 @@ static MACHINE_DRIVER_START( tourtabl )
MDRV_MACHINE_START(tourtabl)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
- MDRV_SCREEN_ADD("main",0)
MDRV_SCREEN_RAW_PARAMS( MASTER_CLOCK, 228, 34, 34 + 160, 262, 46, 46 + 200 )
+
MDRV_PALETTE_LENGTH(TIA_PALETTE_LENGTH)
MDRV_PALETTE_INIT(tia_NTSC)
diff --git a/src/mame/drivers/toypop.c b/src/mame/drivers/toypop.c
index d4077b5bcd9..c5afd19d44d 100644
--- a/src/mame/drivers/toypop.c
+++ b/src/mame/drivers/toypop.c
@@ -582,17 +582,18 @@ static MACHINE_DRIVER_START( liblrabl )
MDRV_CPU_PROGRAM_MAP(readmem_68k,writemem_68k)
MDRV_CPU_VBLANK_INT(toypop_m68000_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60.606060)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
MDRV_MACHINE_RESET(toypop)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60.606060)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(toypop)
MDRV_PALETTE_LENGTH(128*4+64*4+16*2)
diff --git a/src/mame/drivers/tp84.c b/src/mame/drivers/tp84.c
index eb82f0b9f27..a736e7c7e46 100644
--- a/src/mame/drivers/tp84.c
+++ b/src/mame/drivers/tp84.c
@@ -471,16 +471,17 @@ static MACHINE_DRIVER_START( tp84 )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame - an high value to ensure proper */
/* synchronization of the CPUs */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(tp84)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/trackfld.c b/src/mame/drivers/trackfld.c
index 2d7705652b5..ed98e3140d9 100644
--- a/src/mame/drivers/trackfld.c
+++ b/src/mame/drivers/trackfld.c
@@ -869,16 +869,16 @@ static MACHINE_DRIVER_START( trackfld )
/* audio CPU */ /* Z80 Clock is derived from a 14.31818 MHz crystal */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(trackfld)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(trackfld)
MDRV_PALETTE_LENGTH(16*16+16*16)
@@ -913,16 +913,16 @@ static MACHINE_DRIVER_START( hyprolyb )
/* audio CPU */ /* Z80 Clock is derived from a 14.31818 MHz crystal */
MDRV_CPU_PROGRAM_MAP(hyprolyb_sound_readmem,hyprolyb_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(trackfld)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(trackfld)
MDRV_PALETTE_LENGTH(16*16+16*16)
diff --git a/src/mame/drivers/travrusa.c b/src/mame/drivers/travrusa.c
index 06552b7f95d..3904c0f6f6c 100644
--- a/src/mame/drivers/travrusa.c
+++ b/src/mame/drivers/travrusa.c
@@ -330,16 +330,16 @@ static MACHINE_DRIVER_START( travrusa )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(56.75)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1790) /* accurate frequency, measured on a Moon Patrol board, is 56.75Hz. */)
/* the Lode Runner manual (similar but different hardware) */
/* talks about 55Hz and 1790ms vblank duration. */
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(travrusa)
MDRV_PALETTE_LENGTH(16*8+16*8)
diff --git a/src/mame/drivers/triplhnt.c b/src/mame/drivers/triplhnt.c
index d468f3f499a..cddb37611dd 100644
--- a/src/mame/drivers/triplhnt.c
+++ b/src/mame/drivers/triplhnt.c
@@ -323,15 +323,15 @@ static MACHINE_DRIVER_START( triplhnt )
MDRV_CPU_PROGRAM_MAP(triplhnt_readmem, triplhnt_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
+
MDRV_GFXDECODE(triplhnt)
MDRV_PALETTE_LENGTH(8)
MDRV_PALETTE_INIT(triplhnt)
diff --git a/src/mame/drivers/truco.c b/src/mame/drivers/truco.c
index 50f5feca690..395036edb4e 100644
--- a/src/mame/drivers/truco.c
+++ b/src/mame/drivers/truco.c
@@ -151,17 +151,18 @@ static MACHINE_DRIVER_START( truco )
MDRV_CPU_ADD(M6809, 750000) /* ?? guess */
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_CPU_VBLANK_INT(truco_interrupt,1)
MDRV_MACHINE_RESET(truco)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 192)
MDRV_SCREEN_VISIBLE_AREA(0, 256-1, 0, 192-1)
+
MDRV_PALETTE_LENGTH(16)
MDRV_PALETTE_INIT(truco)
diff --git a/src/mame/drivers/trucocl.c b/src/mame/drivers/trucocl.c
index 69d64ccecae..835e364d03c 100644
--- a/src/mame/drivers/trucocl.c
+++ b/src/mame/drivers/trucocl.c
@@ -147,14 +147,14 @@ static MACHINE_DRIVER_START( trucocl )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(trucocl_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(trucocl)
MDRV_PALETTE_LENGTH(32)
diff --git a/src/mame/drivers/trvmadns.c b/src/mame/drivers/trvmadns.c
index 93561ba7756..f26d48d0a42 100644
--- a/src/mame/drivers/trvmadns.c
+++ b/src/mame/drivers/trvmadns.c
@@ -284,14 +284,14 @@ static MACHINE_DRIVER_START( trvmadns )
MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(trvmadns)
MDRV_PALETTE_LENGTH(16)
diff --git a/src/mame/drivers/trvquest.c b/src/mame/drivers/trvquest.c
index 9e2358b10d1..fb135683f54 100644
--- a/src/mame/drivers/trvquest.c
+++ b/src/mame/drivers/trvquest.c
@@ -213,7 +213,7 @@ static MACHINE_DRIVER_START( trvquest )
MDRV_MACHINE_RESET(trvquest)
/* video hardware */
- MDRV_IMPORT_FROM(trvquest_video);
+ MDRV_IMPORT_FROM(trvquest_video)
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
diff --git a/src/mame/drivers/tryout.c b/src/mame/drivers/tryout.c
index 3ff91e12aeb..b1f039c889a 100644
--- a/src/mame/drivers/tryout.c
+++ b/src/mame/drivers/tryout.c
@@ -198,11 +198,10 @@ static MACHINE_DRIVER_START( tryout )
MDRV_CPU_PROGRAM_MAP(sound_cpu,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,16) /* ? */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(1*8, 32*8-1, 1*8, 31*8-1)
diff --git a/src/mame/drivers/tsamurai.c b/src/mame/drivers/tsamurai.c
index 5b5f057daf4..991ddc8a58f 100644
--- a/src/mame/drivers/tsamurai.c
+++ b/src/mame/drivers/tsamurai.c
@@ -764,14 +764,14 @@ static MACHINE_DRIVER_START( tsamurai )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(readmem_sound2,writemem_sound2)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 8, 255-8)
+
MDRV_GFXDECODE(tsamurai)
MDRV_PALETTE_LENGTH(256)
@@ -815,14 +815,14 @@ static MACHINE_DRIVER_START( m660 )
MDRV_CPU_IO_MAP(readport_sound3_m660,writeport_sound3_m660)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 8, 255-8)
+
MDRV_GFXDECODE(tsamurai)
MDRV_PALETTE_LENGTH(256)
@@ -856,14 +856,14 @@ static MACHINE_DRIVER_START( vsgongf )
MDRV_CPU_IO_MAP(0,z80_writeport)
MDRV_CPU_VBLANK_INT(vsgongf_sound_interrupt,3)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 8, 255-8)
+
MDRV_GFXDECODE(tsamurai)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/ttchamp.c b/src/mame/drivers/ttchamp.c
index ee442a881f1..348b03bea9e 100644
--- a/src/mame/drivers/ttchamp.c
+++ b/src/mame/drivers/ttchamp.c
@@ -229,14 +229,14 @@ static MACHINE_DRIVER_START( ttchamp )
MDRV_CPU_IO_MAP(ttchamp_io,0)
MDRV_CPU_VBLANK_INT(ttchamp_irq,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(1024,1024)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 200-1)
+
MDRV_PALETTE_LENGTH(0x8000)
MDRV_VIDEO_START(ttchamp)
diff --git a/src/mame/drivers/tubep.c b/src/mame/drivers/tubep.c
index 5d692b33ec8..ac255a77d5c 100644
--- a/src/mame/drivers/tubep.c
+++ b/src/mame/drivers/tubep.c
@@ -913,17 +913,18 @@ static MACHINE_DRIVER_START( tubep )
MDRV_CPU_ADD_TAG("nsc",NSC8105,6000000) /* 6 MHz Xtal - divided internally ??? */
MDRV_CPU_PROGRAM_MAP(nsc_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(100)
MDRV_MACHINE_START(tubep)
MDRV_MACHINE_RESET(tubep)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 264)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(32 + 256*64)
MDRV_PALETTE_INIT(tubep)
@@ -977,17 +978,17 @@ static MACHINE_DRIVER_START( rjammer )
MDRV_CPU_ADD_TAG("nsc",NSC8105,6000000) /* 6 MHz Xtal - divided internally ??? */
MDRV_CPU_PROGRAM_MAP(nsc_map,0)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_START(rjammer)
MDRV_MACHINE_RESET(rjammer)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 264)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(64)
MDRV_PALETTE_INIT(rjammer)
diff --git a/src/mame/drivers/tugboat.c b/src/mame/drivers/tugboat.c
index e0266e17362..ca7b2d0a565 100644
--- a/src/mame/drivers/tugboat.c
+++ b/src/mame/drivers/tugboat.c
@@ -376,15 +376,16 @@ static MACHINE_DRIVER_START( tugboat )
MDRV_CPU_PROGRAM_MAP(tugboat_readmem,tugboat_writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_START(tugboat)
MDRV_MACHINE_RESET(tugboat)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8,32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8,31*8-1,2*8,30*8-1)
+
MDRV_GFXDECODE(tugboat)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/tumbleb.c b/src/mame/drivers/tumbleb.c
index 28232fc849d..fe3ff452052 100644
--- a/src/mame/drivers/tumbleb.c
+++ b/src/mame/drivers/tumbleb.c
@@ -2034,14 +2034,14 @@ static MACHINE_DRIVER_START( tumblepb )
MDRV_CPU_PROGRAM_MAP(tumblepopb_readmem,tumblepopb_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tumbleb)
MDRV_PALETTE_LENGTH(1024)
@@ -2064,14 +2064,14 @@ static MACHINE_DRIVER_START( tumbleb2 )
MDRV_CPU_PROGRAM_MAP(tumblepopb_readmem,tumblepopb_writemem)
MDRV_CPU_VBLANK_INT(tumbleb2_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tumbleb)
MDRV_PALETTE_LENGTH(1024)
@@ -2097,14 +2097,14 @@ static MACHINE_DRIVER_START( jumpkids )
MDRV_CPU_ADD( Z80, 8000000/2)
MDRV_CPU_PROGRAM_MAP(jumpkids_sound_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tumbleb)
MDRV_PALETTE_LENGTH(1024)
@@ -2125,14 +2125,14 @@ static MACHINE_DRIVER_START( fncywld )
MDRV_CPU_PROGRAM_MAP(fncywld_readmem,fncywld_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(fncywld)
MDRV_PALETTE_LENGTH(0x800)
@@ -2188,16 +2188,16 @@ static MACHINE_DRIVER_START( htchctch )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(semicom_sound_readmem,semicom_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2400)) // ?? cookbib needs it above ~2400 or the Joystick on the How to Play screen is the wrong colour?!
-
MDRV_MACHINE_RESET ( htchctch )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2400)) // ?? cookbib needs it above ~2400 or the Joystick on the How to Play screen is the wrong colour?!
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tumbleb)
MDRV_PALETTE_LENGTH(1024)
@@ -2266,14 +2266,14 @@ static MACHINE_DRIVER_START( jumppop )
MDRV_CPU_IO_MAP(jumppop_sound_io_map, 0)
MDRV_CPU_PERIODIC_INT(nmi_line_pulse, 1953) /* measured */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(jumppop)
MDRV_PALETTE_LENGTH(1024)
@@ -2303,14 +2303,14 @@ static MACHINE_DRIVER_START( suprtrio )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(semicom_sound_readmem,semicom_sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8-1, 31*8-2)
+
MDRV_GFXDECODE(suprtrio)
MDRV_PALETTE_LENGTH(1024)
@@ -2333,14 +2333,14 @@ static MACHINE_DRIVER_START( pangpang )
MDRV_CPU_PROGRAM_MAP(pangpang_readmem,pangpang_writemem)
MDRV_CPU_VBLANK_INT(tumbleb2_interrupt,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(tumbleb)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/tumblep.c b/src/mame/drivers/tumblep.c
index 36328e4de17..e7b452abe41 100644
--- a/src/mame/drivers/tumblep.c
+++ b/src/mame/drivers/tumblep.c
@@ -327,14 +327,14 @@ static MACHINE_DRIVER_START( tumblep )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-2, 1*8, 31*8-1) // hmm
+
MDRV_GFXDECODE(tumblep)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/tunhunt.c b/src/mame/drivers/tunhunt.c
index 92e752ac4cc..ed63fce5306 100644
--- a/src/mame/drivers/tunhunt.c
+++ b/src/mame/drivers/tunhunt.c
@@ -321,14 +321,14 @@ static MACHINE_DRIVER_START( tunhunt )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,2) /* ? probably wrong */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256-16)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 255-16)
+
MDRV_GFXDECODE(tunhunt)
MDRV_PALETTE_LENGTH(0x1a)
diff --git a/src/mame/drivers/turbo.c b/src/mame/drivers/turbo.c
index 4022e9376e4..77d29eeb957 100644
--- a/src/mame/drivers/turbo.c
+++ b/src/mame/drivers/turbo.c
@@ -1004,11 +1004,11 @@ static MACHINE_DRIVER_START( turbo )
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_ALWAYS_UPDATE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
MDRV_GFXDECODE(turbo)
MDRV_PALETTE_LENGTH(256)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
@@ -1030,11 +1030,10 @@ static MACHINE_DRIVER_START( subroc3d )
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(turbo)
MDRV_PALETTE_LENGTH(256)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
@@ -1063,11 +1062,10 @@ static MACHINE_DRIVER_START( buckrog )
MDRV_MACHINE_RESET(buckrog)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(turbo)
MDRV_PALETTE_LENGTH(1024)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
diff --git a/src/mame/drivers/turbosub.c b/src/mame/drivers/turbosub.c
index 0898a107b42..7b32be875cd 100644
--- a/src/mame/drivers/turbosub.c
+++ b/src/mame/drivers/turbosub.c
@@ -341,14 +341,14 @@ static MACHINE_DRIVER_START( turbosub )
MDRV_CPU_ADD(M6809E,4000000)
MDRV_CPU_PROGRAM_MAP(sound_cpu_map,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(34*8, 34*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 34*8-1, 0, 34*8-1)
+
MDRV_PALETTE_LENGTH(512)
MDRV_MACHINE_RESET( turbosub )
MDRV_INTERLEAVE(100)
diff --git a/src/mame/drivers/tutankhm.c b/src/mame/drivers/tutankhm.c
index 09d4cd80eab..656d3b6de08 100644
--- a/src/mame/drivers/tutankhm.c
+++ b/src/mame/drivers/tutankhm.c
@@ -236,11 +236,10 @@ static MACHINE_DRIVER_START( tutankhm )
MDRV_MACHINE_START(tutankhm)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1) /* not sure about the visible area */
diff --git a/src/mame/drivers/twin16.c b/src/mame/drivers/twin16.c
index be5765b04d0..a67b15a6452 100644
--- a/src/mame/drivers/twin16.c
+++ b/src/mame/drivers/twin16.c
@@ -966,15 +966,18 @@ static MACHINE_DRIVER_START( twin16 )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_VBLANK_INT(CPUA_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(twin16)
MDRV_PALETTE_LENGTH(0x400)
@@ -1017,15 +1020,18 @@ static MACHINE_DRIVER_START( fround )
MDRV_CPU_PROGRAM_MAP(fround_readmem,fround_writemem)
MDRV_CPU_VBLANK_INT(CPUA_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 40*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(twin16)
MDRV_PALETTE_LENGTH(0x400)
@@ -1060,6 +1066,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( mia )
MDRV_IMPORT_FROM(twin16)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(1*8, 39*8-1, 2*8, 30*8-1)
MDRV_VIDEO_START(fround)
MACHINE_DRIVER_END
@@ -1071,6 +1078,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( cuebrckj )
MDRV_IMPORT_FROM(twin16)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(1*8, 39*8-1, 2*8, 30*8-1)
MDRV_VIDEO_START(fround)
MDRV_NVRAM_HANDLER(generic_0fill)
diff --git a/src/mame/drivers/twincobr.c b/src/mame/drivers/twincobr.c
index f26935d07c0..37ad8e13ec3 100644
--- a/src/mame/drivers/twincobr.c
+++ b/src/mame/drivers/twincobr.c
@@ -662,17 +662,20 @@ static MACHINE_DRIVER_START( twincobr )
/* Data Map is internal to the CPU */
MDRV_CPU_IO_MAP(DSP_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE( (28000000.0 / 4) / (446 * 286) )
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(twincobr) /* Reset fshark bootleg 8741 MCU data */
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE( (28000000.0 / 4) / (446 * 286) )
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(twincobr)
MDRV_PALETTE_LENGTH(1792)
diff --git a/src/mame/drivers/twins.c b/src/mame/drivers/twins.c
index 02fa9708794..d6299552d0c 100644
--- a/src/mame/drivers/twins.c
+++ b/src/mame/drivers/twins.c
@@ -170,14 +170,14 @@ static MACHINE_DRIVER_START( twins )
MDRV_CPU_IO_MAP(twins_io,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(50)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320,256)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 200-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_VIDEO_START(twins)
@@ -258,14 +258,14 @@ static MACHINE_DRIVER_START( twinsa )
MDRV_CPU_IO_MAP(twinsa_io,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(50)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320,256)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 200-1)
+
MDRV_PALETTE_LENGTH(0x1000)
MDRV_VIDEO_START(twinsa)
diff --git a/src/mame/drivers/tx1.c b/src/mame/drivers/tx1.c
index fb6df70cf34..576ef7c9244 100644
--- a/src/mame/drivers/tx1.c
+++ b/src/mame/drivers/tx1.c
@@ -711,7 +711,6 @@ static MACHINE_DRIVER_START( tx1 )
MDRV_MACHINE_START(tx1)
MDRV_NVRAM_HANDLER(generic_0fill)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(tx1)
MDRV_PALETTE_LENGTH(256+(256*4)+(2048*4))
MDRV_PALETTE_INIT(tx1)
@@ -719,16 +718,16 @@ static MACHINE_DRIVER_START( tx1 )
MDRV_DEFAULT_LAYOUT(layout_triphsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_RAW_PARAMS(TX1_PIXEL_CLOCK, TX1_HTOTAL, TX1_HBEND, TX1_HBSTART, TX1_VTOTAL, TX1_VBEND, TX1_VBSTART)
- MDRV_SCREEN_ADD("center", 0x000)
+ MDRV_SCREEN_ADD("center", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(TX1_PIXEL_CLOCK, TX1_HTOTAL, TX1_HBEND, TX1_HBSTART, TX1_VTOTAL, TX1_VBEND, TX1_VBSTART)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(TX1_PIXEL_CLOCK, TX1_HTOTAL, TX1_HBEND, TX1_HBSTART, TX1_VTOTAL, TX1_VBEND, TX1_VBSTART)
@@ -767,19 +766,18 @@ static MACHINE_DRIVER_START( buggyboy )
MDRV_MACHINE_START(buggyboy)
MDRV_NVRAM_HANDLER(generic_0fill)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(buggyboy)
MDRV_DEFAULT_LAYOUT(layout_triphsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(BB_PIXEL_CLOCK, BB_HTOTAL, BB_HBEND, BB_HBSTART, BB_VTOTAL, BB_VBEND, BB_VBSTART)
- MDRV_SCREEN_ADD("center", 0x000)
+ MDRV_SCREEN_ADD("center", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(BB_PIXEL_CLOCK, BB_HTOTAL, BB_HBEND, BB_HBSTART, BB_VTOTAL, BB_VBEND, BB_VBSTART)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(BB_PIXEL_CLOCK, BB_HTOTAL, BB_HBEND, BB_HBSTART, BB_VTOTAL, BB_VBEND, BB_VBSTART)
@@ -823,9 +821,9 @@ static MACHINE_DRIVER_START( buggybjr )
MDRV_MACHINE_START(buggybjr)
MDRV_NVRAM_HANDLER(generic_0fill)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
#if 0
MDRV_SCREEN_RAW_PARAMS(BB_PIXEL_CLOCK, BB_HTOTAL, BB_HBEND, BB_HBSTART, BB_VTOTAL, BB_VBEND, BB_VBSTART)
#else
@@ -834,6 +832,7 @@ static MACHINE_DRIVER_START( buggybjr )
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 0, 239)
#endif
+
MDRV_PALETTE_LENGTH(512)
MDRV_PALETTE_INIT(buggybjr)
MDRV_VIDEO_START(buggybjr)
diff --git a/src/mame/drivers/uapce.c b/src/mame/drivers/uapce.c
index 1161fed6d74..28ded9c49bc 100644
--- a/src/mame/drivers/uapce.c
+++ b/src/mame/drivers/uapce.c
@@ -187,17 +187,16 @@ static MACHINE_DRIVER_START( uapce )
MDRV_CPU_ADD(Z80, 1400000)
MDRV_CPU_PROGRAM_MAP(z80_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(1)
MDRV_MACHINE_RESET( uapce )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
- MDRV_SCREEN_ADD("main",0)
MDRV_SCREEN_RAW_PARAMS(PCE_MAIN_CLOCK/2, VDC_WPF, 70, 70 + 512 + 32, VDC_LPF, 14, 14+242)
+
/* MDRV_GFXDECODE( pce_gfxdecodeinfo ) */
MDRV_PALETTE_LENGTH(1024)
MDRV_PALETTE_INIT( vce )
diff --git a/src/mame/drivers/ultraman.c b/src/mame/drivers/ultraman.c
index 98a8eb0f9ae..12b7061be9e 100644
--- a/src/mame/drivers/ultraman.c
+++ b/src/mame/drivers/ultraman.c
@@ -274,15 +274,18 @@ static MACHINE_DRIVER_START( ultraman )
MDRV_CPU_PROGRAM_MAP(ultraman_readmem_sound,ultraman_writemem_sound)
MDRV_CPU_IO_MAP(0,ultraman_writeport_sound)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(8192)
MDRV_VIDEO_START(ultraman)
diff --git a/src/mame/drivers/ultratnk.c b/src/mame/drivers/ultratnk.c
index 90f4d5df92c..fe0661355e5 100644
--- a/src/mame/drivers/ultratnk.c
+++ b/src/mame/drivers/ultratnk.c
@@ -301,9 +301,10 @@ static MACHINE_DRIVER_START( ultratnk )
MDRV_MACHINE_RESET(ultratnk)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, 0, 256, VTOTAL, 0, 224)
+
MDRV_GFXDECODE(ultratnk)
MDRV_PALETTE_LENGTH(10)
diff --git a/src/mame/drivers/ultrsprt.c b/src/mame/drivers/ultrsprt.c
index 4cd7c0580b9..c96f637370c 100644
--- a/src/mame/drivers/ultrsprt.c
+++ b/src/mame/drivers/ultrsprt.c
@@ -279,19 +279,19 @@ static MACHINE_DRIVER_START( ultrsprt )
MDRV_CPU_PROGRAM_MAP(sound_map, 0)
MDRV_CPU_PERIODIC_INT(irq5_line_hold, 1) // ???
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_INTERLEAVE(200)
MDRV_NVRAM_HANDLER(ultrsprt)
MDRV_MACHINE_RESET(ultrsprt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(512, 400)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 0, 399)
+
MDRV_PALETTE_LENGTH(8192)
MDRV_VIDEO_START(ultrsprt)
diff --git a/src/mame/drivers/undrfire.c b/src/mame/drivers/undrfire.c
index f3d285a00b0..9d0c826ca17 100644
--- a/src/mame/drivers/undrfire.c
+++ b/src/mame/drivers/undrfire.c
@@ -555,17 +555,17 @@ static MACHINE_DRIVER_START( undrfire )
TAITO_F3_SOUND_SYSTEM_CPU(16000000)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(undrfire)
MDRV_NVRAM_HANDLER(undrfire)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 40*8-1, 3*8, 32*8-1)
+
MDRV_GFXDECODE(undrfire)
MDRV_PALETTE_LENGTH(16384)
diff --git a/src/mame/drivers/unico.c b/src/mame/drivers/unico.c
index 66a35d8a64d..9bd049f1870 100644
--- a/src/mame/drivers/unico.c
+++ b/src/mame/drivers/unico.c
@@ -679,16 +679,16 @@ static MACHINE_DRIVER_START( burglarx )
MDRV_CPU_PROGRAM_MAP(readmem_burglarx,writemem_burglarx)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(unico)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x180, 0xe0)
MDRV_SCREEN_VISIBLE_AREA(0, 0x180-1, 0, 0xe0-1)
+
MDRV_GFXDECODE(unico)
MDRV_PALETTE_LENGTH(8192)
@@ -726,16 +726,16 @@ static MACHINE_DRIVER_START( zeropnt )
MDRV_CPU_PROGRAM_MAP(readmem_zeropnt,writemem_zeropnt)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(zeropt)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x180, 0xe0)
MDRV_SCREEN_VISIBLE_AREA(0, 0x180-1, 0, 0xe0-1)
+
MDRV_GFXDECODE(unico)
MDRV_PALETTE_LENGTH(8192)
@@ -768,18 +768,18 @@ static MACHINE_DRIVER_START( zeropnt2 )
MDRV_CPU_PROGRAM_MAP(readmem_zeropnt2,writemem_zeropnt2)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(zeropt)
MDRV_NVRAM_HANDLER(zeropnt2)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x180, 0xe0)
MDRV_SCREEN_VISIBLE_AREA(0, 0x180-1, 0, 0xe0-1)
+
MDRV_GFXDECODE(unico)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/upscope.c b/src/mame/drivers/upscope.c
index 551c0463e39..ed022adbb37 100644
--- a/src/mame/drivers/upscope.c
+++ b/src/mame/drivers/upscope.c
@@ -292,17 +292,19 @@ static MACHINE_DRIVER_START( upscope )
MDRV_CPU_PROGRAM_MAP(main_map,0)
MDRV_CPU_VBLANK_INT(amiga_scanline_callback, 262)
- MDRV_SCREEN_REFRESH_RATE(59.997)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(amiga)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(59.997)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512*2, 262)
MDRV_SCREEN_VISIBLE_AREA((129-8)*2, (449+8-1)*2, 44-8, 244+8-1)
+
MDRV_PALETTE_LENGTH(4096)
MDRV_PALETTE_INIT(amiga)
diff --git a/src/mame/drivers/usgames.c b/src/mame/drivers/usgames.c
index 6fc7d6d2f5f..a2d6ad5b0d4 100644
--- a/src/mame/drivers/usgames.c
+++ b/src/mame/drivers/usgames.c
@@ -294,16 +294,16 @@ static MACHINE_DRIVER_START( usg32 )
MDRV_CPU_PROGRAM_MAP(usgames_readmem,usgames_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,5) /* ?? */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(7*8, 57*8-1, 0*8, 31*8-1)
+
MDRV_GFXDECODE(usgames)
MDRV_PALETTE_LENGTH(2*256)
@@ -311,7 +311,7 @@ static MACHINE_DRIVER_START( usg32 )
MDRV_VIDEO_START(usgames)
MDRV_VIDEO_UPDATE(usgames)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
/* sound hardware */
MDRV_SPEAKER_STANDARD_MONO("mono")
diff --git a/src/mame/drivers/vamphalf.c b/src/mame/drivers/vamphalf.c
index 69a4c810cfe..33e19fe98ae 100644
--- a/src/mame/drivers/vamphalf.c
+++ b/src/mame/drivers/vamphalf.c
@@ -586,13 +586,12 @@ static MACHINE_DRIVER_START( common )
MDRV_CPU_PROGRAM_MAP(common_map,0)
MDRV_CPU_VBLANK_INT(irq1_line_hold, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(93C46_vamphalf)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(31, 350, 16, 255)
diff --git a/src/mame/drivers/vaportra.c b/src/mame/drivers/vaportra.c
index bfec3b5791f..de79e3b9bfb 100644
--- a/src/mame/drivers/vaportra.c
+++ b/src/mame/drivers/vaportra.c
@@ -281,11 +281,12 @@ static MACHINE_DRIVER_START( vaportra )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(58)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
diff --git a/src/mame/drivers/vastar.c b/src/mame/drivers/vastar.c
index a80068da0e4..35eee4dade9 100644
--- a/src/mame/drivers/vastar.c
+++ b/src/mame/drivers/vastar.c
@@ -334,17 +334,18 @@ static MACHINE_DRIVER_START( vastar )
MDRV_CPU_IO_MAP(cpu2_readport,cpu2_writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,4) /* ??? */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10) /* 10 CPU slices per frame - seems enough to ensure proper */
/* synchronization of the CPUs */
MDRV_MACHINE_RESET(vastar)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(vastar)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/vball.c b/src/mame/drivers/vball.c
index 4f1ce6e5d66..006ca82bd62 100644
--- a/src/mame/drivers/vball.c
+++ b/src/mame/drivers/vball.c
@@ -408,14 +408,14 @@ static MACHINE_DRIVER_START( vball )
/* audio CPU */ /* 3.579545 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 31*8-1) /* 240 x 240 */
+
MDRV_GFXDECODE(vb)
MDRV_PALETTE_LENGTH(256)
@@ -447,14 +447,14 @@ static MACHINE_DRIVER_START( vball2pj )
/* audio CPU */ /* 3.579545 MHz */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 1*8, 31*8-1) /* 240 x 240 */
+
MDRV_GFXDECODE(vb)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/vcombat.c b/src/mame/drivers/vcombat.c
index 799d1eaac45..b5cc195c4ad 100644
--- a/src/mame/drivers/vcombat.c
+++ b/src/mame/drivers/vcombat.c
@@ -100,14 +100,14 @@ static MACHINE_DRIVER_START( vcombat )
MDRV_CPU_ADD_TAG("video", i860, XTAL_20MHz)
MDRV_CPU_PROGRAM_MAP(video_map,0)
*/
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_SCREEN_SIZE(640, 480)
MDRV_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
+
MDRV_PALETTE_LENGTH(0x100)
MDRV_VIDEO_START(generic_bitmapped)
diff --git a/src/mame/drivers/vegaeo.c b/src/mame/drivers/vegaeo.c
index c99bd98655a..5faeaed94f4 100644
--- a/src/mame/drivers/vegaeo.c
+++ b/src/mame/drivers/vegaeo.c
@@ -167,16 +167,16 @@ static MACHINE_DRIVER_START( vega )
/* sound cpu */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(at28c16_0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 512)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
+
MDRV_PALETTE_LENGTH(256)
MDRV_VIDEO_START(vega)
diff --git a/src/mame/drivers/vegas.c b/src/mame/drivers/vegas.c
index df234c83252..67f07a39fd9 100644
--- a/src/mame/drivers/vegas.c
+++ b/src/mame/drivers/vegas.c
@@ -2218,13 +2218,12 @@ static MACHINE_DRIVER_START( vegascore )
MDRV_CPU_CONFIG(config)
MDRV_CPU_PROGRAM_MAP(vegas_map_8mb,0)
- MDRV_SCREEN_REFRESH_RATE(57)
-
MDRV_MACHINE_RESET(vegas)
MDRV_NVRAM_HANDLER(timekeeper_save)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(57)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(640, 480)
MDRV_SCREEN_VISIBLE_AREA(0, 639, 0, 479)
diff --git a/src/mame/drivers/vendetta.c b/src/mame/drivers/vendetta.c
index 60de4352276..bb8780f3cba 100644
--- a/src/mame/drivers/vendetta.c
+++ b/src/mame/drivers/vendetta.c
@@ -587,17 +587,20 @@ static MACHINE_DRIVER_START( vendetta )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
/* interrupts are triggered by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(vendetta)
MDRV_NVRAM_HANDLER(vendetta)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(vendetta)
@@ -624,6 +627,7 @@ static MACHINE_DRIVER_START( esckids )
MDRV_CPU_MODIFY("main")
MDRV_CPU_PROGRAM_MAP(esckids_readmem,esckids_writemem)
+ MDRV_SCREEN_MODIFY("main")
//MDRV_SCREEN_VISIBLE_AREA(13*8, (64-13)*8-1, 2*8, 30*8-1 ) /* black areas on the edges */
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
diff --git a/src/mame/drivers/vertigo.c b/src/mame/drivers/vertigo.c
index 5df0f851051..a34cc1b13b6 100644
--- a/src/mame/drivers/vertigo.c
+++ b/src/mame/drivers/vertigo.c
@@ -113,17 +113,15 @@ static MACHINE_DRIVER_START( vertigo )
MDRV_CPU_ADD(M6805, 1000000)
MDRV_CPU_PROGRAM_MAP(vertigo_motor,0)
*/
-
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(vertigo)
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_VECTOR )
- MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
+ MDRV_SCREEN_ADD("main", VECTOR)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(400, 300)
MDRV_SCREEN_VISIBLE_AREA(0, 510, 0, 400)
+
MDRV_PALETTE_LENGTH(32768)
MDRV_VIDEO_START(vector)
diff --git a/src/mame/drivers/vicdual.c b/src/mame/drivers/vicdual.c
index fe68db8a498..816f9c32dbe 100644
--- a/src/mame/drivers/vicdual.c
+++ b/src/mame/drivers/vicdual.c
@@ -259,9 +259,7 @@ static MACHINE_DRIVER_START( vicdual_root )
MDRV_CPU_ADD_TAG("main", Z80, VICDUAL_MAIN_CPU_CLOCK)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
-
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(VICDUAL_PIXEL_CLOCK, VICDUAL_HTOTAL, VICDUAL_HBEND, VICDUAL_HBSTART, VICDUAL_VTOTAL, VICDUAL_VBEND, VICDUAL_VBSTART)
diff --git a/src/mame/drivers/victory.c b/src/mame/drivers/victory.c
index 3a58ff74a8e..c0a04b26ce8 100644
--- a/src/mame/drivers/victory.c
+++ b/src/mame/drivers/victory.c
@@ -217,10 +217,13 @@ static MACHINE_DRIVER_START( victory )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_ALWAYS_UPDATE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_ALWAYS_UPDATE)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* using the standard Exidy video parameters for now, needs to be confirmed */
MDRV_SCREEN_RAW_PARAMS(EXIDY_PIXEL_CLOCK, EXIDY_HTOTAL, EXIDY_HBEND, EXIDY_HBSTART, EXIDY_VTOTAL, EXIDY_VBEND, EXIDY_VBSTART)
+
MDRV_PALETTE_LENGTH(64)
MDRV_VIDEO_START(victory)
diff --git a/src/mame/drivers/videopin.c b/src/mame/drivers/videopin.c
index 813d8f81cac..13947ec5eab 100644
--- a/src/mame/drivers/videopin.c
+++ b/src/mame/drivers/videopin.c
@@ -335,14 +335,15 @@ static MACHINE_DRIVER_START( videopin )
MDRV_CPU_ADD(M6502, 12096000 / 16)
MDRV_CPU_PROGRAM_MAP(videopin_readmem, videopin_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_MACHINE_RESET(videopin)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(304, 263)
MDRV_SCREEN_VISIBLE_AREA(0, 303, 0, 255)
+
MDRV_GFXDECODE(videopin)
MDRV_PALETTE_LENGTH(2)
diff --git a/src/mame/drivers/vigilant.c b/src/mame/drivers/vigilant.c
index bd5edfd1844..7cff9e2bac9 100644
--- a/src/mame/drivers/vigilant.c
+++ b/src/mame/drivers/vigilant.c
@@ -592,15 +592,16 @@ static MACHINE_DRIVER_START( vigilant )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,128) /* clocked by V1 */
/* IRQs are generated by main Z80 and YM2151 */
- MDRV_SCREEN_REFRESH_RATE(55)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(m72_sound)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(55)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(16*8, (64-16)*8-1, 0*8, 32*8-1 )
+
MDRV_GFXDECODE(vigilant)
MDRV_PALETTE_LENGTH(512+32) /* 512 real palette, 32 virtual palette */
@@ -634,15 +635,16 @@ static MACHINE_DRIVER_START( buccanrs )
MDRV_CPU_IO_MAP(buccanrs_sound_readport,buccanrs_sound_writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,128) /* clocked by V1 */
/* IRQs are generated by main Z80 and YM2151 */
- MDRV_SCREEN_REFRESH_RATE(55)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(m72_sound)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(55)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(16*8, (64-16)*8-1, 0*8, 32*8-1 )
+
MDRV_GFXDECODE(buccanrs)
MDRV_PALETTE_LENGTH(512+32) /* 512 real palette, 32 virtual palette */
@@ -692,15 +694,16 @@ static MACHINE_DRIVER_START( kikcubic )
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,128) /* clocked by V1 */
/* IRQs are generated by main Z80 and YM2151 */
- MDRV_SCREEN_REFRESH_RATE(55)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_MACHINE_RESET(m72_sound)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(55)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 0*8, 32*8-1 )
+
MDRV_GFXDECODE(kikcubic)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/vindictr.c b/src/mame/drivers/vindictr.c
index 28ac01206fd..8c77c9ce000 100644
--- a/src/mame/drivers/vindictr.c
+++ b/src/mame/drivers/vindictr.c
@@ -201,11 +201,11 @@ static MACHINE_DRIVER_START( vindictr )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(vindictr)
MDRV_PALETTE_LENGTH(2048*8)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses a SYNGEN chip to generate video signals */
diff --git a/src/mame/drivers/viper.c b/src/mame/drivers/viper.c
index 480bb05000c..2fc6c0fb882 100644
--- a/src/mame/drivers/viper.c
+++ b/src/mame/drivers/viper.c
@@ -638,17 +638,17 @@ static MACHINE_DRIVER_START(viper)
MDRV_CPU_PROGRAM_MAP(viper_map, 0)
MDRV_CPU_VBLANK_INT(viper_vblank, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(viper)
MDRV_NVRAM_HANDLER(timekeeper_0)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(800, 600)
MDRV_SCREEN_VISIBLE_AREA(0, 799, 0, 599)
+
MDRV_PALETTE_LENGTH(65536)
MDRV_VIDEO_START(viper)
diff --git a/src/mame/drivers/vmetal.c b/src/mame/drivers/vmetal.c
index 71a3a19a441..8586c5885a5 100644
--- a/src/mame/drivers/vmetal.c
+++ b/src/mame/drivers/vmetal.c
@@ -429,13 +429,14 @@ static MACHINE_DRIVER_START( varia )
MDRV_CPU_PROGRAM_MAP(varia_program_map, 0)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1) // also level 3
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(2048, 2048)
MDRV_SCREEN_VISIBLE_AREA(0+64, 319+64, 0+64, 223+64)
+
MDRV_GFXDECODE(vmetal)
MDRV_PALETTE_LENGTH(0x4000)
diff --git a/src/mame/drivers/volfied.c b/src/mame/drivers/volfied.c
index de928a824cd..c6df934463f 100644
--- a/src/mame/drivers/volfied.c
+++ b/src/mame/drivers/volfied.c
@@ -270,15 +270,16 @@ static MACHINE_DRIVER_START( volfied )
MDRV_CPU_ADD(Z80, 4000000) /* sound CPU, required to run the game */
MDRV_CPU_PROGRAM_MAP(z80_readmem,z80_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(20)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 8, 247)
+
MDRV_GFXDECODE(volfied)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/vroulet.c b/src/mame/drivers/vroulet.c
index 536d8a627fb..d7d02d93444 100644
--- a/src/mame/drivers/vroulet.c
+++ b/src/mame/drivers/vroulet.c
@@ -260,14 +260,15 @@ static MACHINE_DRIVER_START( vroulet )
MDRV_CPU_IO_MAP(vroulet_io_map, 0)
MDRV_CPU_VBLANK_INT(irq0_line_hold, 1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_RESET(vroulet)
MDRV_NVRAM_HANDLER(generic_1fill)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
diff --git a/src/mame/drivers/vsnes.c b/src/mame/drivers/vsnes.c
index cacc4058812..912d0b8d592 100644
--- a/src/mame/drivers/vsnes.c
+++ b/src/mame/drivers/vsnes.c
@@ -2085,15 +2085,15 @@ static MACHINE_DRIVER_START( vsnes )
MDRV_CPU_ADD(N2A03,N2A03_DEFAULTCLOCK)
MDRV_CPU_PROGRAM_MAP(vsnes_cpu1_map,0)
/* some carts also trigger IRQs */
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(vsnes)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 262)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
+
MDRV_PALETTE_LENGTH(8*4*16)
MDRV_PALETTE_INIT(vsnes)
@@ -2121,22 +2121,19 @@ static MACHINE_DRIVER_START( vsdual )
MDRV_CPU_ADD(N2A03,N2A03_DEFAULTCLOCK)
MDRV_CPU_PROGRAM_MAP(vsnes_cpu2_map,0)
/* some carts also trigger IRQs */
- MDRV_SCREEN_REFRESH_RATE(60)
-
MDRV_MACHINE_RESET(vsdual)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_PALETTE_LENGTH(2*8*4*16)
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("top", 0x000)
+ MDRV_SCREEN_ADD("top", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(32*8, 262)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
- MDRV_SCREEN_ADD("bottom", 0x000)
+ MDRV_SCREEN_ADD("bottom", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(32*8, 262)
diff --git a/src/mame/drivers/vulgus.c b/src/mame/drivers/vulgus.c
index 4632a4e466c..82605b639bf 100644
--- a/src/mame/drivers/vulgus.c
+++ b/src/mame/drivers/vulgus.c
@@ -255,14 +255,14 @@ static MACHINE_DRIVER_START( vulgus )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,8)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(vulgus)
MDRV_PALETTE_LENGTH(64*4+16*16+4*32*8)
diff --git a/src/mame/drivers/wallc.c b/src/mame/drivers/wallc.c
index 0a221c4a2e4..cdee14a8f2b 100644
--- a/src/mame/drivers/wallc.c
+++ b/src/mame/drivers/wallc.c
@@ -280,14 +280,14 @@ static MACHINE_DRIVER_START( wallc )
MDRV_CPU_PROGRAM_MAP(wallc_map,0)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(wallc)
MDRV_PALETTE_LENGTH(32)
diff --git a/src/mame/drivers/wardner.c b/src/mame/drivers/wardner.c
index 04c6d7336f7..4313936a1aa 100644
--- a/src/mame/drivers/wardner.c
+++ b/src/mame/drivers/wardner.c
@@ -479,17 +479,20 @@ static MACHINE_DRIVER_START( wardner )
/* Data Map is internal to the CPU */
MDRV_CPU_IO_MAP(DSP_io_map, 0)
- MDRV_SCREEN_REFRESH_RATE(56)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100) /* 100 CPU slices per frame */
MDRV_MACHINE_RESET(wardner)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_BUFFERS_SPRITERAM)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(56)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
+
MDRV_GFXDECODE(wardner)
MDRV_PALETTE_LENGTH(1792)
diff --git a/src/mame/drivers/warpwarp.c b/src/mame/drivers/warpwarp.c
index 71549077fd0..4570033ad0e 100644
--- a/src/mame/drivers/warpwarp.c
+++ b/src/mame/drivers/warpwarp.c
@@ -839,14 +839,14 @@ static MACHINE_DRIVER_START( geebee )
MDRV_CPU_IO_MAP(readport_geebee,writeport_geebee)
MDRV_CPU_VBLANK_INT(irq0_line_pulse,1) /* one interrupt per frame */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(34*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 34*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(1k)
MDRV_PALETTE_LENGTH(4*2)
@@ -882,14 +882,14 @@ static MACHINE_DRIVER_START( bombbee )
MDRV_CPU_PROGRAM_MAP(readmem_bombbee,writemem_bombbee)
MDRV_CPU_VBLANK_INT(irq0_line_assert,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0) /* frames per second, vblank duration */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(34*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 34*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(color)
MDRV_PALETTE_LENGTH(2*256+1)
diff --git a/src/mame/drivers/warriorb.c b/src/mame/drivers/warriorb.c
index 4b294f1f3f1..f50bb62c9de 100644
--- a/src/mame/drivers/warriorb.c
+++ b/src/mame/drivers/warriorb.c
@@ -498,19 +498,18 @@ static MACHINE_DRIVER_START( darius2d )
MDRV_MACHINE_RESET( taito_dualscreen )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(warriorb)
MDRV_PALETTE_LENGTH(4096*2)
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 3*8, 32*8-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
@@ -558,19 +557,18 @@ static MACHINE_DRIVER_START( warriorb )
MDRV_MACHINE_RESET( taito_dualscreen )
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(warriorb)
MDRV_PALETTE_LENGTH(4096*2)
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/wc90.c b/src/mame/drivers/wc90.c
index 8e5940c6965..fa61d3decf8 100644
--- a/src/mame/drivers/wc90.c
+++ b/src/mame/drivers/wc90.c
@@ -358,14 +358,15 @@ static MACHINE_DRIVER_START( wc90 )
/* audio CPU */ /* 4 MHz ???? */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
/* NMIs are triggered by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(wc90)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/wc90b.c b/src/mame/drivers/wc90b.c
index 6ce9c2f5f89..5380259bbb3 100644
--- a/src/mame/drivers/wc90b.c
+++ b/src/mame/drivers/wc90b.c
@@ -403,14 +403,15 @@ static MACHINE_DRIVER_START( wc90b )
/* audio CPU */ /* 2.51 MHz */
MDRV_CPU_PROGRAM_MAP(sound_cpu,0)
/* IRQs are triggered by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(wc90b)
MDRV_PALETTE_LENGTH(1024)
diff --git a/src/mame/drivers/wecleman.c b/src/mame/drivers/wecleman.c
index 59afaaa1ac9..177237d3530 100644
--- a/src/mame/drivers/wecleman.c
+++ b/src/mame/drivers/wecleman.c
@@ -1125,17 +1125,18 @@ static MACHINE_DRIVER_START( wecleman )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(wecleman_sound_readmem,wecleman_sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
MDRV_MACHINE_RESET(wecleman)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB15)
MDRV_SCREEN_SIZE(320 +16, 224 +16)
MDRV_SCREEN_VISIBLE_AREA(0 +8, 320-1 +8, 0 +8, 224-1 +8)
+
MDRV_GFXDECODE(wecleman)
MDRV_PALETTE_LENGTH(2048)
@@ -1182,15 +1183,17 @@ static MACHINE_DRIVER_START( hotchase )
MDRV_CPU_PERIODIC_INT( hotchase_sound_timer, 496 )
/* Amuse: every 2 ms */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
+
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 224)
MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
+
MDRV_GFXDECODE(hotchase)
MDRV_PALETTE_LENGTH(2048*2)
diff --git a/src/mame/drivers/welltris.c b/src/mame/drivers/welltris.c
index d526f297944..326244dc3ba 100644
--- a/src/mame/drivers/welltris.c
+++ b/src/mame/drivers/welltris.c
@@ -759,14 +759,15 @@ static MACHINE_DRIVER_START( welltris )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport)
/* IRQs are triggered by the YM2610 */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(15, 367-1, 8, 248-1)
+
MDRV_GFXDECODE(welltris)
MDRV_PALETTE_LENGTH(2048)
@@ -788,6 +789,7 @@ static MACHINE_DRIVER_START( quiz18k )
/* basic machine hardware */
MDRV_IMPORT_FROM( welltris )
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(15, 335-1, 0, 224-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/wgp.c b/src/mame/drivers/wgp.c
index 1723e0ab426..78ae451a0d6 100644
--- a/src/mame/drivers/wgp.c
+++ b/src/mame/drivers/wgp.c
@@ -994,15 +994,16 @@ static MACHINE_DRIVER_START( wgp )
MDRV_MACHINE_START(wgp)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(250)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(wgp)
MDRV_PALETTE_LENGTH(4096)
@@ -1038,15 +1039,16 @@ static MACHINE_DRIVER_START( wgp2 )
MDRV_MACHINE_START(wgp)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(200)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
+
MDRV_GFXDECODE(wgp)
MDRV_PALETTE_LENGTH(4096)
diff --git a/src/mame/drivers/wheelfir.c b/src/mame/drivers/wheelfir.c
index 4fd75237254..e7742aec636 100644
--- a/src/mame/drivers/wheelfir.c
+++ b/src/mame/drivers/wheelfir.c
@@ -637,13 +637,12 @@ static MACHINE_DRIVER_START( wheelfir )
MDRV_CPU_PROGRAM_MAP(wheelfir_sub, 0)
MDRV_CPU_VBLANK_INT(irq1_line_hold,1) // 1 valid
+ MDRV_MACHINE_RESET (wheelfir)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_MACHINE_RESET (wheelfir)
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 64*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 42*8-1, 0*8, 32*8-1)
diff --git a/src/mame/drivers/williams.c b/src/mame/drivers/williams.c
index 3d18140618f..c47801f8712 100644
--- a/src/mame/drivers/williams.c
+++ b/src/mame/drivers/williams.c
@@ -1414,9 +1414,9 @@ static MACHINE_DRIVER_START( defender )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_SCANLINE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_SCANLINE)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK*2/3, 512, 10, 304, 260, 7, 245)
@@ -1434,6 +1434,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( jin ) // needs a different screen size or the credit text is clipped
/* basic machine hardware */
MDRV_IMPORT_FROM(defender)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(0, 315, 7, 245)
MACHINE_DRIVER_END
@@ -1450,6 +1451,7 @@ static MACHINE_DRIVER_START( williams )
MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_MACHINE_RESET(williams)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(6, 298-1, 7, 247-1)
MACHINE_DRIVER_END
@@ -1473,6 +1475,7 @@ static MACHINE_DRIVER_START( alienar )
MDRV_CPU_PROGRAM_MAP(williams_map,0)
MDRV_MACHINE_RESET(williams)
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(6, 298-1, 7, 247-1)
MACHINE_DRIVER_END
@@ -1494,6 +1497,7 @@ static MACHINE_DRIVER_START( playball )
MDRV_IMPORT_FROM(williams)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(6, 298-1, 8, 239-1)
/* sound hardware */
@@ -1531,11 +1535,11 @@ static MACHINE_DRIVER_START( williams2 )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_SCANLINE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_SCANLINE)
MDRV_PALETTE_LENGTH(1024)
MDRV_GFXDECODE(williams2)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK*2/3, 512, 8, 284, 260, 8, 248)
diff --git a/src/mame/drivers/wilytowr.c b/src/mame/drivers/wilytowr.c
index e5a241c1015..fcb1370cf5a 100644
--- a/src/mame/drivers/wilytowr.c
+++ b/src/mame/drivers/wilytowr.c
@@ -522,14 +522,14 @@ static MACHINE_DRIVER_START( wilytowr )
MDRV_CPU_PROGRAM_MAP(i8039_readmem,i8039_writemem)
MDRV_CPU_IO_MAP(i8039_readport,i8039_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(wilytowr)
MDRV_PALETTE_LENGTH(256+4)
@@ -559,14 +559,14 @@ static MACHINE_DRIVER_START( fghtbskt )
MDRV_CPU_PROGRAM_MAP(i8039_readmem,i8039_writemem)
MDRV_CPU_IO_MAP(i8039_readport,i8039_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(fghtbskt)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/wink.c b/src/mame/drivers/wink.c
index d91357628c9..fe466204571 100644
--- a/src/mame/drivers/wink.c
+++ b/src/mame/drivers/wink.c
@@ -327,17 +327,17 @@ static MACHINE_DRIVER_START( wink )
MDRV_CPU_IO_MAP(wink_sound_io,0)
MDRV_CPU_PERIODIC_INT(wink_sound, 15625)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_1fill)
MDRV_MACHINE_RESET(wink)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+
MDRV_GFXDECODE(wink)
MDRV_PALETTE_LENGTH(32)
diff --git a/src/mame/drivers/wiping.c b/src/mame/drivers/wiping.c
index 0916498514b..186877e02c6 100644
--- a/src/mame/drivers/wiping.c
+++ b/src/mame/drivers/wiping.c
@@ -317,14 +317,14 @@ static MACHINE_DRIVER_START( wiping )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_PERIODIC_INT(irq0_line_hold,120) /* periodic interrupt, don't know about the frequency */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
+
MDRV_GFXDECODE(wiping)
MDRV_PALETTE_LENGTH(64*4+64*4)
diff --git a/src/mame/drivers/witch.c b/src/mame/drivers/witch.c
index 40ac566aa97..636ada59d80 100644
--- a/src/mame/drivers/witch.c
+++ b/src/mame/drivers/witch.c
@@ -777,16 +777,16 @@ static MACHINE_DRIVER_START( witch )
MDRV_CPU_PROGRAM_MAP(map_sub, 0)
MDRV_CPU_VBLANK_INT(witch_sub_interrupt,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(8, 256-1-8, 8*4, 256-8*4-1)
+
MDRV_GFXDECODE(witch)
MDRV_PALETTE_LENGTH(0x800)
diff --git a/src/mame/drivers/wiz.c b/src/mame/drivers/wiz.c
index 010d8c335c7..4eea9729346 100644
--- a/src/mame/drivers/wiz.c
+++ b/src/mame/drivers/wiz.c
@@ -713,14 +713,14 @@ static MACHINE_DRIVER_START( wiz )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,4) /* ??? */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */ /* frames per second, vblank duration */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(wiz)
MDRV_PALETTE_LENGTH(256)
@@ -772,6 +772,7 @@ static MACHINE_DRIVER_START( scion )
MDRV_IMPORT_FROM(stinger)
/* video hardware */
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_VISIBLE_AREA(2*8, 32*8-1, 2*8, 30*8-1)
MACHINE_DRIVER_END
diff --git a/src/mame/drivers/wldarrow.c b/src/mame/drivers/wldarrow.c
index 461b3a3da14..e674bd96317 100644
--- a/src/mame/drivers/wldarrow.c
+++ b/src/mame/drivers/wldarrow.c
@@ -350,10 +350,9 @@ static MACHINE_DRIVER_START( wldarrow )
MDRV_NVRAM_HANDLER(generic_0fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(wldarrow)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 32*8-1)
diff --git a/src/mame/drivers/wolfpack.c b/src/mame/drivers/wolfpack.c
index 095b6937b4e..af836199c2d 100644
--- a/src/mame/drivers/wolfpack.c
+++ b/src/mame/drivers/wolfpack.c
@@ -339,15 +339,16 @@ static MACHINE_DRIVER_START(wolfpack)
MDRV_CPU_ADD(M6502, 12096000 / 16)
MDRV_CPU_PROGRAM_MAP(wolfpack_readmem, wolfpack_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
-
/* video hardware */
MDRV_MACHINE_RESET(wolfpack)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 262)
MDRV_SCREEN_VISIBLE_AREA(0, 511, 16, 239)
+
MDRV_GFXDECODE(wolfpack)
MDRV_PALETTE_LENGTH(12)
MDRV_PALETTE_INIT(wolfpack)
diff --git a/src/mame/drivers/wrally.c b/src/mame/drivers/wrally.c
index 87afa2bf518..f0e0f44b455 100644
--- a/src/mame/drivers/wrally.c
+++ b/src/mame/drivers/wrally.c
@@ -233,15 +233,15 @@ static MACHINE_DRIVER_START( wrally )
MDRV_CPU_PROGRAM_MAP(wrally_readmem,wrally_writemem)
MDRV_CPU_VBLANK_INT(irq6_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*16, 32*16)
MDRV_SCREEN_VISIBLE_AREA(0, 64*16-1, 0, 32*16-1)
// MDRV_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
+
MDRV_GFXDECODE(wrally)
MDRV_PALETTE_LENGTH(1024*8)
diff --git a/src/mame/drivers/wwfsstar.c b/src/mame/drivers/wwfsstar.c
index f1c2bf3c962..42e01a1bd2f 100644
--- a/src/mame/drivers/wwfsstar.c
+++ b/src/mame/drivers/wwfsstar.c
@@ -367,14 +367,14 @@ static MACHINE_DRIVER_START( wwfsstar )
MDRV_CPU_ADD(Z80, 3579545)
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(57.44)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+
MDRV_GFXDECODE(wwfsstar)
MDRV_PALETTE_LENGTH(384)
diff --git a/src/mame/drivers/wwfwfest.c b/src/mame/drivers/wwfwfest.c
index 17240c34519..f0395c17e63 100644
--- a/src/mame/drivers/wwfwfest.c
+++ b/src/mame/drivers/wwfwfest.c
@@ -411,14 +411,16 @@ static MACHINE_DRIVER_START( wwfwfest )
/* audio CPU */
MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
+ /* video hardware */
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(320, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 319, 1*8, 31*8-1)
+
MDRV_GFXDECODE(wwfwfest)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/xain.c b/src/mame/drivers/xain.c
index 70084bd2280..d82adc68a8d 100644
--- a/src/mame/drivers/xain.c
+++ b/src/mame/drivers/xain.c
@@ -492,15 +492,16 @@ static MACHINE_DRIVER_START( xsleena )
MDRV_MACHINE_START(xsleena)
- MDRV_SCREEN_REFRESH_RATE(57)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(100)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(57)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(xain)
MDRV_PALETTE_LENGTH(512)
diff --git a/src/mame/drivers/xexex.c b/src/mame/drivers/xexex.c
index dd4f9722360..76fe95c600e 100644
--- a/src/mame/drivers/xexex.c
+++ b/src/mame/drivers/xexex.c
@@ -485,15 +485,17 @@ static MACHINE_DRIVER_START( xexex )
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_INTERLEAVE(32)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_MACHINE_START(xexex)
MDRV_MACHINE_RESET(xexex)
MDRV_NVRAM_HANDLER(xexex)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_BEFORE_VBLANK)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(40, 40+384-1, 0, 0+256-1)
diff --git a/src/mame/drivers/xmen.c b/src/mame/drivers/xmen.c
index 60b0cc9c4b2..797d1fe199e 100644
--- a/src/mame/drivers/xmen.c
+++ b/src/mame/drivers/xmen.c
@@ -532,16 +532,18 @@ static MACHINE_DRIVER_START( xmen )
MDRV_MACHINE_START(xmen)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(xmen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+
MDRV_PALETTE_LENGTH(2048)
MDRV_VIDEO_START(xmen)
@@ -602,18 +604,18 @@ static MACHINE_DRIVER_START( xmen6p )
MDRV_MACHINE_RESET(xmen6p)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_HAS_SHADOWS)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS)
MDRV_PALETTE_LENGTH(2048)
MDRV_DEFAULT_LAYOUT(layout_dualhsxs)
- MDRV_SCREEN_ADD("left", 0x000)
+ MDRV_SCREEN_ADD("left", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(12*8, 48*8-1, 2*8, 30*8-1)
- MDRV_SCREEN_ADD("right", 0x000)
+ MDRV_SCREEN_ADD("right", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
diff --git a/src/mame/drivers/xorworld.c b/src/mame/drivers/xorworld.c
index 7d4cfe3a1f0..e680cf5cf41 100644
--- a/src/mame/drivers/xorworld.c
+++ b/src/mame/drivers/xorworld.c
@@ -210,17 +210,19 @@ static MACHINE_DRIVER_START( xorworld )
MDRV_CPU_PROGRAM_MAP(xorworld_map, 0)
MDRV_CPU_VBLANK_INT(xorworld_interrupt, 4) // 1 IRQ2 + 1 IRQ4 + 1 IRQ6
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(1)
MDRV_NVRAM_HANDLER(xorworld)
// video hardware
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(xorworld)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/xtheball.c b/src/mame/drivers/xtheball.c
index d304e5691e3..a609ab693b0 100644
--- a/src/mame/drivers/xtheball.c
+++ b/src/mame/drivers/xtheball.c
@@ -365,10 +365,9 @@ static MACHINE_DRIVER_START( xtheball )
MDRV_NVRAM_HANDLER(generic_1fill)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(tms340x0)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(512,256)
MDRV_SCREEN_VISIBLE_AREA(0,511, 24,247)
diff --git a/src/mame/drivers/xxmissio.c b/src/mame/drivers/xxmissio.c
index 7f4ec8d1d22..28b418e7d19 100644
--- a/src/mame/drivers/xxmissio.c
+++ b/src/mame/drivers/xxmissio.c
@@ -295,17 +295,18 @@ static MACHINE_DRIVER_START( xxmissio )
MDRV_CPU_PROGRAM_MAP(map2,0)
MDRV_CPU_VBLANK_INT(xxmissio_interrupt_s,2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_INTERLEAVE(100)
MDRV_MACHINE_START(xxmissio)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 4*8, 28*8-1)
+
MDRV_GFXDECODE(xxmissio)
MDRV_PALETTE_LENGTH(768)
diff --git a/src/mame/drivers/xybots.c b/src/mame/drivers/xybots.c
index 1d4cdee84db..56ba32c37e6 100644
--- a/src/mame/drivers/xybots.c
+++ b/src/mame/drivers/xybots.c
@@ -196,11 +196,11 @@ static MACHINE_DRIVER_START( xybots )
MDRV_NVRAM_HANDLER(atarigen)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MDRV_GFXDECODE(xybots)
MDRV_PALETTE_LENGTH(1024)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
/* note: these parameters are from published specs, not derived */
/* the board uses a SYNGEN chip to generate video signals */
diff --git a/src/mame/drivers/xyonix.c b/src/mame/drivers/xyonix.c
index 0b7cc788612..1fb3c484589 100644
--- a/src/mame/drivers/xyonix.c
+++ b/src/mame/drivers/xyonix.c
@@ -250,14 +250,14 @@ static MACHINE_DRIVER_START( xyonix )
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
MDRV_CPU_PERIODIC_INT(irq0_line_assert,4*60) /* ?? controls music tempo */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(80*4, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 80*4-1, 0, 28*8-1)
+
MDRV_GFXDECODE(xyonix)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/yamato.c b/src/mame/drivers/yamato.c
index 912f48fc08f..ecb4098cb67 100644
--- a/src/mame/drivers/yamato.c
+++ b/src/mame/drivers/yamato.c
@@ -516,14 +516,14 @@ static MACHINE_DRIVER_START( yamato )
MDRV_CPU_PROGRAM_MAP(yamato_sound_readmem,yamato_sound_writemem)
MDRV_CPU_IO_MAP(yamato_sound_readport,yamato_sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(yamato)
MDRV_PALETTE_LENGTH(96+256)
@@ -549,15 +549,16 @@ static MACHINE_DRIVER_START( toprollr )
MDRV_CPU_IO_MAP(toprollr_io_map,0)
MDRV_CPU_VBLANK_INT(nmi_line_pulse,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(toprollr)
MDRV_PALETTE_LENGTH(32*5)
MDRV_PALETTE_INIT(toprollr)
diff --git a/src/mame/drivers/yiear.c b/src/mame/drivers/yiear.c
index d7433433fdd..b1b7054c7d1 100644
--- a/src/mame/drivers/yiear.c
+++ b/src/mame/drivers/yiear.c
@@ -264,14 +264,14 @@ static MACHINE_DRIVER_START( yiear )
MDRV_CPU_VBLANK_INT(irq0_line_hold,1) /* vblank */
MDRV_CPU_PERIODIC_INT(yiear_nmi_interrupt,500) /* music tempo (correct frequency unknown) */
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(yiear)
MDRV_PALETTE_LENGTH(32)
diff --git a/src/mame/drivers/yumefuda.c b/src/mame/drivers/yumefuda.c
index b3f06a00dc2..2715aad1cb8 100644
--- a/src/mame/drivers/yumefuda.c
+++ b/src/mame/drivers/yumefuda.c
@@ -242,16 +242,16 @@ static MACHINE_DRIVER_START( yumefuda )
MDRV_CPU_IO_MAP(readport,writeport)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_NVRAM_HANDLER(93C46)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0, 32*8-1, 0, 32*8-1)
+
MDRV_GFXDECODE( yumefuda )
MDRV_PALETTE_LENGTH(0x100)
diff --git a/src/mame/drivers/yunsun16.c b/src/mame/drivers/yunsun16.c
index 2a7e0972c6a..b418e98c87d 100644
--- a/src/mame/drivers/yunsun16.c
+++ b/src/mame/drivers/yunsun16.c
@@ -537,14 +537,14 @@ static MACHINE_DRIVER_START( magicbub )
MDRV_CPU_PROGRAM_MAP(yunsun16_sound_readmem,yunsun16_sound_writemem)
MDRV_CPU_IO_MAP(yunsun16_sound_readport,yunsun16_sound_writeport)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x180, 0xe0)
MDRV_SCREEN_VISIBLE_AREA(0+0x20, 0x180-1-0x20, 0, 0xe0-1)
+
MDRV_GFXDECODE(yunsun16)
MDRV_PALETTE_LENGTH(8192)
@@ -577,14 +577,14 @@ static MACHINE_DRIVER_START( shocking )
MDRV_CPU_PROGRAM_MAP(yunsun16_readmem,yunsun16_writemem)
MDRV_CPU_VBLANK_INT(irq2_line_hold,1)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(0x180, 0xe0)
MDRV_SCREEN_VISIBLE_AREA(0, 0x180-1-4, 0, 0xe0-1)
+
MDRV_GFXDECODE(yunsun16)
MDRV_PALETTE_LENGTH(8192)
diff --git a/src/mame/drivers/yunsung8.c b/src/mame/drivers/yunsung8.c
index 927570cc48c..1f1553ec489 100644
--- a/src/mame/drivers/yunsung8.c
+++ b/src/mame/drivers/yunsung8.c
@@ -537,16 +537,16 @@ static MACHINE_DRIVER_START( yunsung8 )
MDRV_CPU_PROGRAM_MAP(yunsung8_sound_readmem,yunsung8_sound_writemem)
MDRV_CPU_VBLANK_INT(irq0_line_hold,1) /* NMI caused by the MSM5205? */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_RESET(yunsung8)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(512, 256)
MDRV_SCREEN_VISIBLE_AREA(0+64, 512-64-1, 0+8, 256-8-1)
+
MDRV_GFXDECODE(yunsung8)
MDRV_PALETTE_LENGTH(2048)
diff --git a/src/mame/drivers/zac2650.c b/src/mame/drivers/zac2650.c
index 2e5b9091029..963217032ed 100644
--- a/src/mame/drivers/zac2650.c
+++ b/src/mame/drivers/zac2650.c
@@ -323,14 +323,14 @@ static MACHINE_DRIVER_START( tinvader )
MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,0)
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(55)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1041))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(30*24, 32*24)
MDRV_SCREEN_VISIBLE_AREA(0, 719, 0, 767)
+
MDRV_GFXDECODE(tinvader)
MDRV_PALETTE_LENGTH(4)
diff --git a/src/mame/drivers/zaccaria.c b/src/mame/drivers/zaccaria.c
index 4a254864f85..9adceb867bf 100644
--- a/src/mame/drivers/zaccaria.c
+++ b/src/mame/drivers/zaccaria.c
@@ -671,17 +671,17 @@ static MACHINE_DRIVER_START( zaccaria )
MDRV_CPU_ADD(M6802,XTAL_3_579545MHz) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(sound_readmem2,sound_writemem2)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
MDRV_MACHINE_START(zaccaria)
MDRV_MACHINE_RESET(zaccaria)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(zaccaria)
MDRV_PALETTE_LENGTH(32*8+32*8)
diff --git a/src/mame/drivers/zaxxon.c b/src/mame/drivers/zaxxon.c
index 9c36b4705c2..8279ccf6ea8 100644
--- a/src/mame/drivers/zaxxon.c
+++ b/src/mame/drivers/zaxxon.c
@@ -940,11 +940,10 @@ static MACHINE_DRIVER_START( root )
MDRV_MACHINE_START(zaxxon)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_GFXDECODE(zaxxon)
MDRV_PALETTE_LENGTH(256)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
diff --git a/src/mame/drivers/zerozone.c b/src/mame/drivers/zerozone.c
index 5d7bf009358..9b4884ba60c 100644
--- a/src/mame/drivers/zerozone.c
+++ b/src/mame/drivers/zerozone.c
@@ -199,15 +199,16 @@ static MACHINE_DRIVER_START( zerozone )
/* audio CPU */ /* 1 MHz ??? */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_INTERLEAVE(10)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(64*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(1*8, 47*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(zerozone)
MDRV_PALETTE_LENGTH(256)
diff --git a/src/mame/drivers/zn.c b/src/mame/drivers/zn.c
index f8855650119..e4028b08a4a 100644
--- a/src/mame/drivers/zn.c
+++ b/src/mame/drivers/zn.c
@@ -428,14 +428,14 @@ static MACHINE_DRIVER_START( zn1_1mb_vram )
MDRV_CPU_PROGRAM_MAP( zn_map, 0 )
MDRV_CPU_VBLANK_INT( psx_vblank, 1 )
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE( 60 )
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES( VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE( 1024, 512 )
MDRV_SCREEN_VISIBLE_AREA( 0, 639, 0, 479 )
+
MDRV_PALETTE_LENGTH( 65536 )
MDRV_PALETTE_INIT( psx )
@@ -454,6 +454,7 @@ MACHINE_DRIVER_END
static MACHINE_DRIVER_START( zn1_2mb_vram )
MDRV_IMPORT_FROM( zn1_1mb_vram )
+ MDRV_SCREEN_MODIFY("main")
MDRV_SCREEN_SIZE( 1024, 1024 )
MACHINE_DRIVER_END
@@ -463,14 +464,14 @@ static MACHINE_DRIVER_START( zn2 )
MDRV_CPU_PROGRAM_MAP( zn_map, 0 )
MDRV_CPU_VBLANK_INT( psx_vblank, 1 )
+ /* video hardware */
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE( 60 )
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- /* video hardware */
- MDRV_VIDEO_ATTRIBUTES( VIDEO_TYPE_RASTER )
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE( 1024, 1024 )
MDRV_SCREEN_VISIBLE_AREA( 0, 639, 0, 479 )
+
MDRV_PALETTE_LENGTH( 65536 )
MDRV_PALETTE_INIT( psx )
diff --git a/src/mame/drivers/zodiack.c b/src/mame/drivers/zodiack.c
index 90c4824791f..3355bd69279 100644
--- a/src/mame/drivers/zodiack.c
+++ b/src/mame/drivers/zodiack.c
@@ -483,16 +483,16 @@ static MACHINE_DRIVER_START( zodiack )
MDRV_CPU_IO_MAP(0,sound_writeport)
MDRV_CPU_VBLANK_INT(espial_sound_nmi_gen,8) /* IRQs are triggered by the main CPU */
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */ /* frames per second, vblank duration */)
-
MDRV_MACHINE_RESET(zodiack)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */ /* frames per second, vblank duration */)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
+
MDRV_GFXDECODE(zodiack)
MDRV_PALETTE_LENGTH(4*8+2*8+2*1)
diff --git a/src/mame/drivers/zr107.c b/src/mame/drivers/zr107.c
index da598452faf..cefe847a771 100644
--- a/src/mame/drivers/zr107.c
+++ b/src/mame/drivers/zr107.c
@@ -582,17 +582,18 @@ static MACHINE_DRIVER_START( zr107 )
MDRV_CPU_CONFIG(sharc_cfg)
MDRV_CPU_DATA_MAP(sharc_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(500)
MDRV_NVRAM_HANDLER(93C46)
MDRV_MACHINE_RESET(zr107)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 48*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 48*8-1)
+
MDRV_PALETTE_LENGTH(65536)
MDRV_VIDEO_START(zr107)
@@ -626,17 +627,18 @@ static MACHINE_DRIVER_START( jetwave )
MDRV_CPU_CONFIG(sharc_cfg)
MDRV_CPU_DATA_MAP(sharc_map, 0)
- MDRV_SCREEN_REFRESH_RATE(60)
MDRV_INTERLEAVE(500)
MDRV_NVRAM_HANDLER(93C46)
MDRV_MACHINE_RESET(zr107)
/* video hardware */
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(64*8, 48*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 48*8-1)
+
MDRV_PALETTE_LENGTH(65536)
MDRV_VIDEO_START(jetwave)
diff --git a/src/mame/video/20pacgal.c b/src/mame/video/20pacgal.c
index 57b803255c6..3cdf3ad0d69 100644
--- a/src/mame/video/20pacgal.c
+++ b/src/mame/video/20pacgal.c
@@ -311,9 +311,9 @@ static VIDEO_UPDATE( 20pacgal )
MACHINE_DRIVER_START( 20pacgal_video )
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_UPDATE(20pacgal)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
diff --git a/src/mame/video/crgolf.c b/src/mame/video/crgolf.c
index 2d28a0cdc3e..1efa343d2c8 100644
--- a/src/mame/video/crgolf.c
+++ b/src/mame/video/crgolf.c
@@ -202,10 +202,10 @@ static VIDEO_UPDATE( crgolf )
MACHINE_DRIVER_START( crgolf_video )
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(crgolf)
MDRV_VIDEO_UPDATE(crgolf)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_SIZE(256, 256)
MDRV_SCREEN_VISIBLE_AREA(0, 255, 8, 247)
diff --git a/src/mame/video/gameplan.c b/src/mame/video/gameplan.c
index b6b37f2a830..6fe70c9bb71 100644
--- a/src/mame/video/gameplan.c
+++ b/src/mame/video/gameplan.c
@@ -360,11 +360,10 @@ MACHINE_DRIVER_START( gameplan_video )
MDRV_VIDEO_START(gameplan)
MDRV_VIDEO_RESET(gameplan)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(gameplan)
MDRV_VIDEO_UPDATE(gameplan)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(GAMEPLAN_PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MACHINE_DRIVER_END
diff --git a/src/mame/video/jedi.c b/src/mame/video/jedi.c
index f2181e5b341..cf577f29d89 100644
--- a/src/mame/video/jedi.c
+++ b/src/mame/video/jedi.c
@@ -356,10 +356,10 @@ static VIDEO_UPDATE( jedi )
MACHINE_DRIVER_START( jedi_video )
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
+ MDRV_SCREEN_REFRESH_RATE(60)
MDRV_SCREEN_SIZE(64*8, 262) /* verify vert size */
MDRV_SCREEN_VISIBLE_AREA(0*8, 37*8-1, 0*8, 30*8-1)
diff --git a/src/mame/video/leland.c b/src/mame/video/leland.c
index 7cac37dac08..ea5f493d75a 100644
--- a/src/mame/video/leland.c
+++ b/src/mame/video/leland.c
@@ -541,12 +541,13 @@ static VIDEO_UPDATE( ataxx )
MACHINE_DRIVER_START( leland_video )
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_ALWAYS_UPDATE)
+ MDRV_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
MDRV_VIDEO_START(leland)
MDRV_VIDEO_UPDATE(leland)
MDRV_PALETTE_LENGTH(1024)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
MDRV_SCREEN_SIZE(40*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
diff --git a/src/mame/video/madalien.c b/src/mame/video/madalien.c
index cbda1c2528f..7bf3aa7dab7 100644
--- a/src/mame/video/madalien.c
+++ b/src/mame/video/madalien.c
@@ -410,15 +410,17 @@ static const mc6845_interface mc6845_intf =
MACHINE_DRIVER_START( madalien_video )
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
+
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 336, 0, 256, 288, 0, 256)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
+
MDRV_GFXDECODE(madalien)
MDRV_PALETTE_LENGTH(0x30)
MDRV_PALETTE_INIT(madalien)
MDRV_VIDEO_START(madalien)
MDRV_VIDEO_UPDATE(madalien)
- MDRV_DEVICE_ADD("crtc", MC6845, 0)
+ MDRV_DEVICE_ADD("crtc", MC6845)
MDRV_DEVICE_CONFIG(mc6845_intf)
MACHINE_DRIVER_END
diff --git a/src/mame/video/qix.c b/src/mame/video/qix.c
index c1424357f22..a2eb584267f 100644
--- a/src/mame/video/qix.c
+++ b/src/mame/video/qix.c
@@ -473,14 +473,13 @@ MACHINE_DRIVER_START( qix_video )
MDRV_CPU_ADD_TAG("video", M6809, MAIN_CLOCK_OSC/4/4) /* 1.25 MHz */
MDRV_CPU_PROGRAM_MAP(qix_video_map,0)
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(qix)
MDRV_VIDEO_UPDATE(qix)
- MDRV_DEVICE_ADD("vid-u18", MC6845, 0)
+ MDRV_DEVICE_ADD("vid-u18", MC6845)
MDRV_DEVICE_CONFIG(mc6845_intf)
- MDRV_SCREEN_ADD("main", 0)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
MDRV_SCREEN_RAW_PARAMS(QIX_CHARACTER_CLOCK*8, 256, 0, 256, 256, 0, 256) /* temporary, CRTC will configure screen */
MACHINE_DRIVER_END
diff --git a/src/mame/video/redalert.c b/src/mame/video/redalert.c
index 9c3fad9b8fc..22a9116fe87 100644
--- a/src/mame/video/redalert.c
+++ b/src/mame/video/redalert.c
@@ -300,14 +300,13 @@ static VIDEO_UPDATE( demoneye )
MACHINE_DRIVER_START( redalert_video )
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(redalert)
MDRV_VIDEO_UPDATE(redalert)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
@@ -323,14 +322,13 @@ MACHINE_DRIVER_END
MACHINE_DRIVER_START( demoneye_video )
- MDRV_SCREEN_REFRESH_RATE(60)
- MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
-
- MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
MDRV_VIDEO_START(redalert)
MDRV_VIDEO_UPDATE(demoneye)
+ MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
+ MDRV_SCREEN_REFRESH_RATE(60)
+ MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MDRV_SCREEN_SIZE(32*8, 32*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
diff --git a/src/mame/video/taitoic.c b/src/mame/video/taitoic.c
index abeac01b5c6..af95164dc06 100644
--- a/src/mame/video/taitoic.c
+++ b/src/mame/video/taitoic.c
@@ -2288,6 +2288,7 @@ void TC0100SCN_vh_start(running_machine *machine, int chips,int gfxnum,int x_off
for (i = 0;i < chips;i++)
{
+ int has_separate_screen = (device_list_find_by_index(machine->config->devicelist, VIDEO_SCREEN, i) != NULL);
int xd,yd;
TC0100SCN_dblwidth[i]=0;
@@ -2306,7 +2307,7 @@ void TC0100SCN_vh_start(running_machine *machine, int chips,int gfxnum,int x_off
Thundfox is the only one of those with two chips, and
we're safe as it uses single width tilemaps. */
- myclip = machine->screen[(machine->config->screen[i].tag == NULL) ? 0 : i].visarea;
+ myclip = machine->screen[has_separate_screen ? i : 0].visarea;
TC0100SCN_cliprect[i] = myclip;
diff --git a/src/osd/windows/d3d8intf.c b/src/osd/windows/d3d8intf.c
index 126af95891e..6e9526c609d 100644
--- a/src/osd/windows/d3d8intf.c
+++ b/src/osd/windows/d3d8intf.c
@@ -252,63 +252,63 @@ static const d3d_interface d3d8_interface =
// Direct3DDevice interfaces
//============================================================
-static HRESULT device_begin_scene(d3d_device *dev)
+static HRESULT d3d_device_begin_scene(d3d_device *dev)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_BeginScene(device);
}
-static HRESULT device_clear(d3d_device *dev, DWORD count, const D3DRECT *rects, DWORD flags, D3DCOLOR color, float z, DWORD stencil)
+static HRESULT d3d_device_clear(d3d_device *dev, DWORD count, const D3DRECT *rects, DWORD flags, D3DCOLOR color, float z, DWORD stencil)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_Clear(device, count, rects, flags, color, z, stencil);
}
-static HRESULT device_create_offscreen_plain_surface(d3d_device *dev, UINT width, UINT height, D3DFORMAT format, D3DPOOL pool, d3d_surface **surface)
+static HRESULT d3d_device_create_offscreen_plain_surface(d3d_device *dev, UINT width, UINT height, D3DFORMAT format, D3DPOOL pool, d3d_surface **surface)
{
assert(FALSE);
return D3D_OK;
}
-static HRESULT device_create_texture(d3d_device *dev, UINT width, UINT height, UINT levels, DWORD usage, D3DFORMAT format, D3DPOOL pool, d3d_texture **texture)
+static HRESULT d3d_device_create_texture(d3d_device *dev, UINT width, UINT height, UINT levels, DWORD usage, D3DFORMAT format, D3DPOOL pool, d3d_texture **texture)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_CreateTexture(device, width, height, levels, usage, format, pool, (IDirect3DTexture8 **)texture);
}
-static HRESULT device_create_vertex_buffer(d3d_device *dev, UINT length, DWORD usage, DWORD fvf, D3DPOOL pool, d3d_vertex_buffer **buf)
+static HRESULT d3d_device_create_vertex_buffer(d3d_device *dev, UINT length, DWORD usage, DWORD fvf, D3DPOOL pool, d3d_vertex_buffer **buf)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_CreateVertexBuffer(device, length, usage, fvf, pool, (IDirect3DVertexBuffer8 **)buf);
}
-static HRESULT device_draw_primitive(d3d_device *dev, D3DPRIMITIVETYPE type, UINT start, UINT count)
+static HRESULT d3d_device_draw_primitive(d3d_device *dev, D3DPRIMITIVETYPE type, UINT start, UINT count)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_DrawPrimitive(device, type, start, count);
}
-static HRESULT device_end_scene(d3d_device *dev)
+static HRESULT d3d_device_end_scene(d3d_device *dev)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_EndScene(device);
}
-static HRESULT device_get_raster_status(d3d_device *dev, D3DRASTER_STATUS *status)
+static HRESULT d3d_device_get_raster_status(d3d_device *dev, D3DRASTER_STATUS *status)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_GetRasterStatus(device, status);
}
-static HRESULT device_get_render_target(d3d_device *dev, DWORD index, d3d_surface **surface)
+static HRESULT d3d_device_get_render_target(d3d_device *dev, DWORD index, d3d_surface **surface)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
assert(index == 0);
@@ -316,21 +316,21 @@ static HRESULT device_get_render_target(d3d_device *dev, DWORD index, d3d_surfac
}
-static HRESULT device_present(d3d_device *dev, const RECT *source, const RECT *dest, HWND override, RGNDATA *dirty, DWORD flags)
+static HRESULT d3d_device_present(d3d_device *dev, const RECT *source, const RECT *dest, HWND override, RGNDATA *dirty, DWORD flags)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_Present(device, source, dest, override, dirty);
}
-static ULONG device_release(d3d_device *dev)
+static ULONG d3d_device_release(d3d_device *dev)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_Release(device);
}
-static HRESULT device_reset(d3d_device *dev, d3d_present_parameters *params)
+static HRESULT d3d_device_reset(d3d_device *dev, d3d_present_parameters *params)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
D3DPRESENT_PARAMETERS d3d8params;
@@ -339,21 +339,21 @@ static HRESULT device_reset(d3d_device *dev, d3d_present_parameters *params)
}
-static void device_set_gamma_ramp(d3d_device *dev, DWORD flags, const D3DGAMMARAMP *ramp)
+static void d3d_device_set_gamma_ramp(d3d_device *dev, DWORD flags, const D3DGAMMARAMP *ramp)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
IDirect3DDevice8_SetGammaRamp(device, flags, ramp);
}
-static HRESULT device_set_render_state(d3d_device *dev, D3DRENDERSTATETYPE state, DWORD value)
+static HRESULT d3d_device_set_render_state(d3d_device *dev, D3DRENDERSTATETYPE state, DWORD value)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_SetRenderState(device, state, value);
}
-static HRESULT device_set_render_target(d3d_device *dev, DWORD index, d3d_surface *surf)
+static HRESULT d3d_device_set_render_target(d3d_device *dev, DWORD index, d3d_surface *surf)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
IDirect3DSurface8 *surface = (IDirect3DSurface8 *)surf;
@@ -362,7 +362,7 @@ static HRESULT device_set_render_target(d3d_device *dev, DWORD index, d3d_surfac
}
-static HRESULT device_set_stream_source(d3d_device *dev, UINT number, d3d_vertex_buffer *vbuf, UINT stride)
+static HRESULT d3d_device_set_stream_source(d3d_device *dev, UINT number, d3d_vertex_buffer *vbuf, UINT stride)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
IDirect3DVertexBuffer8 *vertexbuf = (IDirect3DVertexBuffer8 *)vbuf;
@@ -370,7 +370,7 @@ static HRESULT device_set_stream_source(d3d_device *dev, UINT number, d3d_vertex
}
-static HRESULT device_set_texture(d3d_device *dev, DWORD stage, d3d_texture *tex)
+static HRESULT d3d_device_set_texture(d3d_device *dev, DWORD stage, d3d_texture *tex)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
IDirect3DBaseTexture8 *texture = (IDirect3DBaseTexture8 *)tex;
@@ -378,28 +378,28 @@ static HRESULT device_set_texture(d3d_device *dev, DWORD stage, d3d_texture *tex
}
-static HRESULT device_set_texture_stage_state(d3d_device *dev, DWORD stage, D3DTEXTURESTAGESTATETYPE state, DWORD value)
+static HRESULT d3d_device_set_texture_stage_state(d3d_device *dev, DWORD stage, D3DTEXTURESTAGESTATETYPE state, DWORD value)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_SetTextureStageState(device, stage, state, value);
}
-static HRESULT device_set_vertex_shader(d3d_device *dev, D3DFORMAT format)
+static HRESULT d3d_device_set_vertex_shader(d3d_device *dev, D3DFORMAT format)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_SetVertexShader(device, format);
}
-static HRESULT device_stretch_rect(d3d_device *dev, d3d_surface *source, const RECT *srcrect, d3d_surface *dest, const RECT *dstrect, D3DTEXTUREFILTERTYPE filter)
+static HRESULT d3d_device_stretch_rect(d3d_device *dev, d3d_surface *source, const RECT *srcrect, d3d_surface *dest, const RECT *dstrect, D3DTEXTUREFILTERTYPE filter)
{
assert(FALSE);
return D3D_OK;
}
-static HRESULT device_test_cooperative_level(d3d_device *dev)
+static HRESULT d3d_device_test_cooperative_level(d3d_device *dev)
{
IDirect3DDevice8 *device = (IDirect3DDevice8 *)dev;
return IDirect3DDevice8_TestCooperativeLevel(device);
@@ -408,27 +408,27 @@ static HRESULT device_test_cooperative_level(d3d_device *dev)
static const d3d_device_interface d3d8_device_interface =
{
- device_begin_scene,
- device_clear,
- device_create_offscreen_plain_surface,
- device_create_texture,
- device_create_vertex_buffer,
- device_draw_primitive,
- device_end_scene,
- device_get_raster_status,
- device_get_render_target,
- device_present,
- device_release,
- device_reset,
- device_set_gamma_ramp,
- device_set_render_state,
- device_set_render_target,
- device_set_stream_source,
- device_set_texture,
- device_set_texture_stage_state,
- device_set_vertex_shader,
- device_stretch_rect,
- device_test_cooperative_level
+ d3d_device_begin_scene,
+ d3d_device_clear,
+ d3d_device_create_offscreen_plain_surface,
+ d3d_device_create_texture,
+ d3d_device_create_vertex_buffer,
+ d3d_device_draw_primitive,
+ d3d_device_end_scene,
+ d3d_device_get_raster_status,
+ d3d_device_get_render_target,
+ d3d_device_present,
+ d3d_device_release,
+ d3d_device_reset,
+ d3d_device_set_gamma_ramp,
+ d3d_device_set_render_state,
+ d3d_device_set_render_target,
+ d3d_device_set_stream_source,
+ d3d_device_set_texture,
+ d3d_device_set_texture_stage_state,
+ d3d_device_set_vertex_shader,
+ d3d_device_stretch_rect,
+ d3d_device_test_cooperative_level
};
@@ -437,21 +437,21 @@ static const d3d_device_interface d3d8_device_interface =
// Direct3DSurface interfaces
//============================================================
-static HRESULT surface_lock_rect(d3d_surface *surf, D3DLOCKED_RECT *locked, const RECT *rect, DWORD flags)
+static HRESULT d3d_surface_lock_rect(d3d_surface *surf, D3DLOCKED_RECT *locked, const RECT *rect, DWORD flags)
{
IDirect3DSurface8 *surface = (IDirect3DSurface8 *)surf;
return IDirect3DSurface8_LockRect(surface, locked, rect, flags);
}
-static ULONG surface_release(d3d_surface *surf)
+static ULONG d3d_surface_release(d3d_surface *surf)
{
IDirect3DSurface8 *surface = (IDirect3DSurface8 *)surf;
return IDirect3DSurface8_Release(surface);
}
-static HRESULT surface_unlock_rect(d3d_surface *surf)
+static HRESULT d3d_surface_unlock_rect(d3d_surface *surf)
{
IDirect3DSurface8 *surface = (IDirect3DSurface8 *)surf;
return IDirect3DSurface8_UnlockRect(surface);
@@ -460,9 +460,9 @@ static HRESULT surface_unlock_rect(d3d_surface *surf)
static const d3d_surface_interface d3d8_surface_interface =
{
- surface_lock_rect,
- surface_release,
- surface_unlock_rect
+ d3d_surface_lock_rect,
+ d3d_surface_release,
+ d3d_surface_unlock_rect
};
@@ -471,28 +471,28 @@ static const d3d_surface_interface d3d8_surface_interface =
// Direct3DTexture interfaces
//============================================================
-static HRESULT texture_get_surface_level(d3d_texture *tex, UINT level, d3d_surface **surface)
+static HRESULT d3d_texture_get_surface_level(d3d_texture *tex, UINT level, d3d_surface **surface)
{
IDirect3DTexture8 *texture = (IDirect3DTexture8 *)tex;
return IDirect3DTexture8_GetSurfaceLevel(texture, level, (IDirect3DSurface8 **)surface);
}
-static HRESULT texture_lock_rect(d3d_texture *tex, UINT level, D3DLOCKED_RECT *locked, const RECT *rect, DWORD flags)
+static HRESULT d3d_texture_lock_rect(d3d_texture *tex, UINT level, D3DLOCKED_RECT *locked, const RECT *rect, DWORD flags)
{
IDirect3DTexture8 *texture = (IDirect3DTexture8 *)tex;
return IDirect3DTexture8_LockRect(texture, level, locked, rect, flags);
}
-static ULONG texture_release(d3d_texture *tex)
+static ULONG d3d_texture_release(d3d_texture *tex)
{
IDirect3DTexture8 *texture = (IDirect3DTexture8 *)tex;
return IDirect3DTexture8_Release(texture);
}
-static HRESULT texture_unlock_rect(d3d_texture *tex, UINT level)
+static HRESULT d3d_texture_unlock_rect(d3d_texture *tex, UINT level)
{
IDirect3DTexture8 *texture = (IDirect3DTexture8 *)tex;
return IDirect3DTexture8_UnlockRect(texture, level);
@@ -501,10 +501,10 @@ static HRESULT texture_unlock_rect(d3d_texture *tex, UINT level)
static const d3d_texture_interface d3d8_texture_interface =
{
- texture_get_surface_level,
- texture_lock_rect,
- texture_release,
- texture_unlock_rect
+ d3d_texture_get_surface_level,
+ d3d_texture_lock_rect,
+ d3d_texture_release,
+ d3d_texture_unlock_rect
};
@@ -513,21 +513,21 @@ static const d3d_texture_interface d3d8_texture_interface =
// Direct3DVertexBuffer interfaces
//============================================================
-static HRESULT vertex_buffer_lock(d3d_vertex_buffer *vbuf, UINT offset, UINT size, VOID **data, DWORD flags)
+static HRESULT d3d_vertex_buffer_lock(d3d_vertex_buffer *vbuf, UINT offset, UINT size, VOID **data, DWORD flags)
{
IDirect3DVertexBuffer8 *vertexbuf = (IDirect3DVertexBuffer8 *)vbuf;
return IDirect3DVertexBuffer8_Lock(vertexbuf, offset, size, (BYTE **)data, flags);
}
-static ULONG vertex_buffer_release(d3d_vertex_buffer *vbuf)
+static ULONG d3d_vertex_buffer_release(d3d_vertex_buffer *vbuf)
{
IDirect3DVertexBuffer8 *vertexbuf = (IDirect3DVertexBuffer8 *)vbuf;
return IDirect3DVertexBuffer8_Release(vertexbuf);
}
-static HRESULT vertex_buffer_unlock(d3d_vertex_buffer *vbuf)
+static HRESULT d3d_vertex_buffer_unlock(d3d_vertex_buffer *vbuf)
{
IDirect3DVertexBuffer8 *vertexbuf = (IDirect3DVertexBuffer8 *)vbuf;
return IDirect3DVertexBuffer8_Unlock(vertexbuf);
@@ -536,9 +536,9 @@ static HRESULT vertex_buffer_unlock(d3d_vertex_buffer *vbuf)
static const d3d_vertex_buffer_interface d3d8_vertex_buffer_interface =
{
- vertex_buffer_lock,
- vertex_buffer_release,
- vertex_buffer_unlock
+ d3d_vertex_buffer_lock,
+ d3d_vertex_buffer_release,
+ d3d_vertex_buffer_unlock
};
diff --git a/src/osd/windows/d3d9intf.c b/src/osd/windows/d3d9intf.c
index 3fe3e521e4a..4ec727417eb 100644
--- a/src/osd/windows/d3d9intf.c
+++ b/src/osd/windows/d3d9intf.c
@@ -250,70 +250,70 @@ static const d3d_interface d3d9_interface =
// Direct3DDevice interfaces
//============================================================
-static HRESULT device_begin_scene(d3d_device *dev)
+static HRESULT d3d_device_begin_scene(d3d_device *dev)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_BeginScene(device);
}
-static HRESULT device_clear(d3d_device *dev, DWORD count, const D3DRECT *rects, DWORD flags, D3DCOLOR color, float z, DWORD stencil)
+static HRESULT d3d_device_clear(d3d_device *dev, DWORD count, const D3DRECT *rects, DWORD flags, D3DCOLOR color, float z, DWORD stencil)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_Clear(device, count, rects, flags, color, z, stencil);
}
-static HRESULT device_create_offscreen_plain_surface(d3d_device *dev, UINT width, UINT height, D3DFORMAT format, D3DPOOL pool, d3d_surface **surface)
+static HRESULT d3d_device_create_offscreen_plain_surface(d3d_device *dev, UINT width, UINT height, D3DFORMAT format, D3DPOOL pool, d3d_surface **surface)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_CreateOffscreenPlainSurface(device, width, height, format, pool, (IDirect3DSurface9 **)surface, NULL);
}
-static HRESULT device_create_texture(d3d_device *dev, UINT width, UINT height, UINT levels, DWORD usage, D3DFORMAT format, D3DPOOL pool, d3d_texture **texture)
+static HRESULT d3d_device_create_texture(d3d_device *dev, UINT width, UINT height, UINT levels, DWORD usage, D3DFORMAT format, D3DPOOL pool, d3d_texture **texture)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_CreateTexture(device, width, height, levels, usage, format, pool, (IDirect3DTexture9 **)texture, NULL);
}
-static HRESULT device_create_vertex_buffer(d3d_device *dev, UINT length, DWORD usage, DWORD fvf, D3DPOOL pool, d3d_vertex_buffer **buf)
+static HRESULT d3d_device_create_vertex_buffer(d3d_device *dev, UINT length, DWORD usage, DWORD fvf, D3DPOOL pool, d3d_vertex_buffer **buf)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_CreateVertexBuffer(device, length, usage, fvf, pool, (IDirect3DVertexBuffer9 **)buf, NULL);
}
-static HRESULT device_draw_primitive(d3d_device *dev, D3DPRIMITIVETYPE type, UINT start, UINT count)
+static HRESULT d3d_device_draw_primitive(d3d_device *dev, D3DPRIMITIVETYPE type, UINT start, UINT count)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_DrawPrimitive(device, type, start, count);
}
-static HRESULT device_end_scene(d3d_device *dev)
+static HRESULT d3d_device_end_scene(d3d_device *dev)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_EndScene(device);
}
-static HRESULT device_get_raster_status(d3d_device *dev, D3DRASTER_STATUS *status)
+static HRESULT d3d_device_get_raster_status(d3d_device *dev, D3DRASTER_STATUS *status)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_GetRasterStatus(device, 0, status);
}
-static HRESULT device_get_render_target(d3d_device *dev, DWORD index, d3d_surface **surface)
+static HRESULT d3d_device_get_render_target(d3d_device *dev, DWORD index, d3d_surface **surface)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_GetRenderTarget(device, index, (IDirect3DSurface9 **)surface);
}
-static HRESULT device_present(d3d_device *dev, const RECT *source, const RECT *dest, HWND override, RGNDATA *dirty, DWORD flags)
+static HRESULT d3d_device_present(d3d_device *dev, const RECT *source, const RECT *dest, HWND override, RGNDATA *dirty, DWORD flags)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
if (flags != 0)
@@ -331,14 +331,14 @@ static HRESULT device_present(d3d_device *dev, const RECT *source, const RECT *d
}
-static ULONG device_release(d3d_device *dev)
+static ULONG d3d_device_release(d3d_device *dev)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_Release(device);
}
-static HRESULT device_reset(d3d_device *dev, d3d_present_parameters *params)
+static HRESULT d3d_device_reset(d3d_device *dev, d3d_present_parameters *params)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
D3DPRESENT_PARAMETERS d3d9params;
@@ -347,21 +347,21 @@ static HRESULT device_reset(d3d_device *dev, d3d_present_parameters *params)
}
-static void device_set_gamma_ramp(d3d_device *dev, DWORD flags, const D3DGAMMARAMP *ramp)
+static void d3d_device_set_gamma_ramp(d3d_device *dev, DWORD flags, const D3DGAMMARAMP *ramp)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
IDirect3DDevice9_SetGammaRamp(device, 0, flags, ramp);
}
-static HRESULT device_set_render_state(d3d_device *dev, D3DRENDERSTATETYPE state, DWORD value)
+static HRESULT d3d_device_set_render_state(d3d_device *dev, D3DRENDERSTATETYPE state, DWORD value)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_SetRenderState(device, state, value);
}
-static HRESULT device_set_render_target(d3d_device *dev, DWORD index, d3d_surface *surf)
+static HRESULT d3d_device_set_render_target(d3d_device *dev, DWORD index, d3d_surface *surf)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
IDirect3DSurface9 *surface = (IDirect3DSurface9 *)surf;
@@ -369,7 +369,7 @@ static HRESULT device_set_render_target(d3d_device *dev, DWORD index, d3d_surfac
}
-static HRESULT device_set_stream_source(d3d_device *dev, UINT number, d3d_vertex_buffer *vbuf, UINT stride)
+static HRESULT d3d_device_set_stream_source(d3d_device *dev, UINT number, d3d_vertex_buffer *vbuf, UINT stride)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
IDirect3DVertexBuffer9 *vertexbuf = (IDirect3DVertexBuffer9 *)vbuf;
@@ -377,7 +377,7 @@ static HRESULT device_set_stream_source(d3d_device *dev, UINT number, d3d_vertex
}
-static HRESULT device_set_texture(d3d_device *dev, DWORD stage, d3d_texture *tex)
+static HRESULT d3d_device_set_texture(d3d_device *dev, DWORD stage, d3d_texture *tex)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
IDirect3DBaseTexture9 *texture = (IDirect3DBaseTexture9 *)tex;
@@ -385,7 +385,7 @@ static HRESULT device_set_texture(d3d_device *dev, DWORD stage, d3d_texture *tex
}
-static HRESULT device_set_texture_stage_state(d3d_device *dev, DWORD stage, D3DTEXTURESTAGESTATETYPE state, DWORD value)
+static HRESULT d3d_device_set_texture_stage_state(d3d_device *dev, DWORD stage, D3DTEXTURESTAGESTATETYPE state, DWORD value)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
@@ -416,14 +416,14 @@ static HRESULT device_set_texture_stage_state(d3d_device *dev, DWORD stage, D3DT
}
-static HRESULT device_set_vertex_shader(d3d_device *dev, D3DFORMAT format)
+static HRESULT d3d_device_set_vertex_shader(d3d_device *dev, D3DFORMAT format)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_SetFVF(device, format);
}
-static HRESULT device_stretch_rect(d3d_device *dev, d3d_surface *source, const RECT *srcrect, d3d_surface *dest, const RECT *dstrect, D3DTEXTUREFILTERTYPE filter)
+static HRESULT d3d_device_stretch_rect(d3d_device *dev, d3d_surface *source, const RECT *srcrect, d3d_surface *dest, const RECT *dstrect, D3DTEXTUREFILTERTYPE filter)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
IDirect3DSurface9 *ssurface = (IDirect3DSurface9 *)source;
@@ -432,7 +432,7 @@ static HRESULT device_stretch_rect(d3d_device *dev, d3d_surface *source, const R
}
-static HRESULT device_test_cooperative_level(d3d_device *dev)
+static HRESULT d3d_device_test_cooperative_level(d3d_device *dev)
{
IDirect3DDevice9 *device = (IDirect3DDevice9 *)dev;
return IDirect3DDevice9_TestCooperativeLevel(device);
@@ -441,27 +441,27 @@ static HRESULT device_test_cooperative_level(d3d_device *dev)
static const d3d_device_interface d3d9_device_interface =
{
- device_begin_scene,
- device_clear,
- device_create_offscreen_plain_surface,
- device_create_texture,
- device_create_vertex_buffer,
- device_draw_primitive,
- device_end_scene,
- device_get_raster_status,
- device_get_render_target,
- device_present,
- device_release,
- device_reset,
- device_set_gamma_ramp,
- device_set_render_state,
- device_set_render_target,
- device_set_stream_source,
- device_set_texture,
- device_set_texture_stage_state,
- device_set_vertex_shader,
- device_stretch_rect,
- device_test_cooperative_level
+ d3d_device_begin_scene,
+ d3d_device_clear,
+ d3d_device_create_offscreen_plain_surface,
+ d3d_device_create_texture,
+ d3d_device_create_vertex_buffer,
+ d3d_device_draw_primitive,
+ d3d_device_end_scene,
+ d3d_device_get_raster_status,
+ d3d_device_get_render_target,
+ d3d_device_present,
+ d3d_device_release,
+ d3d_device_reset,
+ d3d_device_set_gamma_ramp,
+ d3d_device_set_render_state,
+ d3d_device_set_render_target,
+ d3d_device_set_stream_source,
+ d3d_device_set_texture,
+ d3d_device_set_texture_stage_state,
+ d3d_device_set_vertex_shader,
+ d3d_device_stretch_rect,
+ d3d_device_test_cooperative_level
};
@@ -470,21 +470,21 @@ static const d3d_device_interface d3d9_device_interface =
// Direct3DSurface interfaces
//============================================================
-static HRESULT surface_lock_rect(d3d_surface *surf, D3DLOCKED_RECT *locked, const RECT *rect, DWORD flags)
+static HRESULT d3d_surface_lock_rect(d3d_surface *surf, D3DLOCKED_RECT *locked, const RECT *rect, DWORD flags)
{
IDirect3DSurface9 *surface = (IDirect3DSurface9 *)surf;
return IDirect3DSurface9_LockRect(surface, locked, rect, flags);
}
-static ULONG surface_release(d3d_surface *surf)
+static ULONG d3d_surface_release(d3d_surface *surf)
{
IDirect3DSurface9 *surface = (IDirect3DSurface9 *)surf;
return IDirect3DSurface9_Release(surface);
}
-static HRESULT surface_unlock_rect(d3d_surface *surf)
+static HRESULT d3d_surface_unlock_rect(d3d_surface *surf)
{
IDirect3DSurface9 *surface = (IDirect3DSurface9 *)surf;
return IDirect3DSurface9_UnlockRect(surface);
@@ -493,9 +493,9 @@ static HRESULT surface_unlock_rect(d3d_surface *surf)
static const d3d_surface_interface d3d9_surface_interface =
{
- surface_lock_rect,
- surface_release,
- surface_unlock_rect
+ d3d_surface_lock_rect,
+ d3d_surface_release,
+ d3d_surface_unlock_rect
};
@@ -504,28 +504,28 @@ static const d3d_surface_interface d3d9_surface_interface =
// Direct3DTexture interfaces
//============================================================
-static HRESULT texture_get_surface_level(d3d_texture *tex, UINT level, d3d_surface **surface)
+static HRESULT d3d_texture_get_surface_level(d3d_texture *tex, UINT level, d3d_surface **surface)
{
IDirect3DTexture9 *texture = (IDirect3DTexture9 *)tex;
return IDirect3DTexture9_GetSurfaceLevel(texture, level, (IDirect3DSurface9 **)surface);
}
-static HRESULT texture_lock_rect(d3d_texture *tex, UINT level, D3DLOCKED_RECT *locked, const RECT *rect, DWORD flags)
+static HRESULT d3d_texture_lock_rect(d3d_texture *tex, UINT level, D3DLOCKED_RECT *locked, const RECT *rect, DWORD flags)
{
IDirect3DTexture9 *texture = (IDirect3DTexture9 *)tex;
return IDirect3DTexture9_LockRect(texture, level, locked, rect, flags);
}
-static ULONG texture_release(d3d_texture *tex)
+static ULONG d3d_texture_release(d3d_texture *tex)
{
IDirect3DTexture9 *texture = (IDirect3DTexture9 *)tex;
return IDirect3DTexture9_Release(texture);
}
-static HRESULT texture_unlock_rect(d3d_texture *tex, UINT level)
+static HRESULT d3d_texture_unlock_rect(d3d_texture *tex, UINT level)
{
IDirect3DTexture9 *texture = (IDirect3DTexture9 *)tex;
return IDirect3DTexture9_UnlockRect(texture, level);
@@ -534,10 +534,10 @@ static HRESULT texture_unlock_rect(d3d_texture *tex, UINT level)
static const d3d_texture_interface d3d9_texture_interface =
{
- texture_get_surface_level,
- texture_lock_rect,
- texture_release,
- texture_unlock_rect
+ d3d_texture_get_surface_level,
+ d3d_texture_lock_rect,
+ d3d_texture_release,
+ d3d_texture_unlock_rect
};
@@ -546,21 +546,21 @@ static const d3d_texture_interface d3d9_texture_interface =
// Direct3DVertexBuffer interfaces
//============================================================
-static HRESULT vertex_buffer_lock(d3d_vertex_buffer *vbuf, UINT offset, UINT size, VOID **data, DWORD flags)
+static HRESULT d3d_vertex_buffer_lock(d3d_vertex_buffer *vbuf, UINT offset, UINT size, VOID **data, DWORD flags)
{
IDirect3DVertexBuffer9 *vertexbuf = (IDirect3DVertexBuffer9 *)vbuf;
return IDirect3DVertexBuffer9_Lock(vertexbuf, offset, size, data, flags);
}
-static ULONG vertex_buffer_release(d3d_vertex_buffer *vbuf)
+static ULONG d3d_vertex_buffer_release(d3d_vertex_buffer *vbuf)
{
IDirect3DVertexBuffer9 *vertexbuf = (IDirect3DVertexBuffer9 *)vbuf;
return IDirect3DVertexBuffer9_Release(vertexbuf);
}
-static HRESULT vertex_buffer_unlock(d3d_vertex_buffer *vbuf)
+static HRESULT d3d_vertex_buffer_unlock(d3d_vertex_buffer *vbuf)
{
IDirect3DVertexBuffer9 *vertexbuf = (IDirect3DVertexBuffer9 *)vbuf;
return IDirect3DVertexBuffer9_Unlock(vertexbuf);
@@ -569,9 +569,9 @@ static HRESULT vertex_buffer_unlock(d3d_vertex_buffer *vbuf)
static const d3d_vertex_buffer_interface d3d9_vertex_buffer_interface =
{
- vertex_buffer_lock,
- vertex_buffer_release,
- vertex_buffer_unlock
+ d3d_vertex_buffer_lock,
+ d3d_vertex_buffer_release,
+ d3d_vertex_buffer_unlock
};
diff --git a/src/osd/windows/video.c b/src/osd/windows/video.c
index 234c313166a..697ecd70b18 100644
--- a/src/osd/windows/video.c
+++ b/src/osd/windows/video.c
@@ -452,6 +452,7 @@ static void extract_video_config(void)
static void load_effect_overlay(const char *filename)
{
char *tempstr = malloc_or_die(strlen(filename) + 5);
+ int numscreens;
int scrnum;
char *dest;
@@ -472,9 +473,9 @@ static void load_effect_overlay(const char *filename)
}
// set the overlay on all screens
- for (scrnum = 0; scrnum < MAX_SCREENS; scrnum++)
- if (Machine->config->screen[scrnum].tag != NULL)
- render_container_set_overlay(render_container_get_screen(scrnum), effect_bitmap);
+ numscreens = video_screen_count(Machine->config);
+ for (scrnum = 0; scrnum < numscreens; scrnum++)
+ render_container_set_overlay(render_container_get_screen(scrnum), effect_bitmap);
free(tempstr);
}
diff --git a/src/osd/windows/window.c b/src/osd/windows/window.c
index 9b248440229..ac46d69507c 100644
--- a/src/osd/windows/window.c
+++ b/src/osd/windows/window.c
@@ -874,10 +874,7 @@ static void set_starting_view(int index, win_window_info *window, const char *vi
// if we don't have a match, default to the nth view
if (viewindex == -1)
{
- int scrcount;
-
- // count the number of screens
- for (scrcount = 0; Machine->config->screen[scrcount].tag != NULL; scrcount++) ;
+ int scrcount = video_screen_count(Machine->config);
// if we have enough screens to be one per monitor, assign in order
if (video_config.numscreens >= scrcount)