summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatarGravatar mooglyguy <therealmogminer@gmail.com>2018-08-24 09:26:15 +0200
committerGravatarGravatar mooglyguy <therealmogminer@gmail.com>2018-08-24 09:26:29 +0200
commit5cb33a23c70a9748358303d66fedab79365cd16a (patch) (github)
tree4ab74e70ecb2b236791cb21c2313c05539698348
parent3204234f8d7edce4a3373be3895d6852f3480ff8 (diff)
downloadmame-5cb33a23c70a9748358303d66fedab79365cd16a.tar.bz2
mame-5cb33a23c70a9748358303d66fedab79365cd16a.zip
-nvram: Removed MCFG, nw
-rw-r--r--src/devices/bus/msx_slot/fs4600.cpp7
-rw-r--r--src/devices/bus/msx_slot/panasonic08.cpp7
-rw-r--r--src/devices/bus/msx_slot/sony08.cpp7
-rw-r--r--src/devices/machine/nvram.h41
-rw-r--r--src/devices/machine/smpc.cpp7
-rw-r--r--src/mame/drivers/3do.cpp4
-rw-r--r--src/mame/drivers/4enraya.cpp2
-rw-r--r--src/mame/drivers/4roses.cpp2
-rw-r--r--src/mame/drivers/5clown.cpp2
-rw-r--r--src/mame/drivers/88games.cpp2
-rw-r--r--src/mame/drivers/accomm.cpp2
-rw-r--r--src/mame/drivers/acefruit.cpp2
-rw-r--r--src/mame/drivers/adp.cpp57
-rw-r--r--src/mame/drivers/albazc.cpp2
-rw-r--r--src/mame/drivers/alesis.cpp2
-rw-r--r--src/mame/drivers/alg.cpp2
-rw-r--r--src/mame/drivers/alphasma.cpp2
-rw-r--r--src/mame/drivers/amaticmg.cpp2
-rw-r--r--src/mame/drivers/amiga.cpp4
-rw-r--r--src/mame/drivers/ampoker2.cpp2
-rw-r--r--src/mame/drivers/apc.cpp2
-rw-r--r--src/mame/drivers/apple2gs.cpp2
-rw-r--r--src/mame/drivers/arachnid.cpp2
-rw-r--r--src/mame/drivers/aristmk5.cpp2
-rw-r--r--src/mame/drivers/arsystems.cpp2
-rw-r--r--src/mame/drivers/astrcorp.cpp4
-rw-r--r--src/mame/drivers/astrocde.cpp4
-rw-r--r--src/mame/drivers/at.cpp4
-rw-r--r--src/mame/drivers/atari_s2.cpp2
-rw-r--r--src/mame/drivers/attache.cpp4
-rw-r--r--src/mame/drivers/avigo.cpp2
-rw-r--r--src/mame/drivers/aztarac.cpp2
-rw-r--r--src/mame/drivers/bbusters.cpp2
-rw-r--r--src/mame/drivers/berzerk.cpp2
-rw-r--r--src/mame/drivers/bfcobra.cpp2
-rw-r--r--src/mame/drivers/bfm_sc1.cpp2
-rw-r--r--src/mame/drivers/bfm_sc2.cpp12
-rw-r--r--src/mame/drivers/bfm_sc4.cpp2
-rw-r--r--src/mame/drivers/bfmsys85.cpp2
-rw-r--r--src/mame/drivers/big10.cpp2
-rw-r--r--src/mame/drivers/bingor.cpp2
-rw-r--r--src/mame/drivers/blitz68k.cpp16
-rw-r--r--src/mame/drivers/bmcpokr.cpp2
-rw-r--r--src/mame/drivers/btoads.cpp2
-rw-r--r--src/mame/drivers/by17.cpp2
-rw-r--r--src/mame/drivers/by35.cpp2
-rw-r--r--src/mame/drivers/by6803.cpp2
-rw-r--r--src/mame/drivers/byvid.cpp2
-rw-r--r--src/mame/drivers/calcune.cpp2
-rw-r--r--src/mame/drivers/calomega.cpp2
-rw-r--r--src/mame/drivers/capbowl.cpp2
-rw-r--r--src/mame/drivers/caswin.cpp2
-rw-r--r--src/mame/drivers/cat.cpp2
-rw-r--r--src/mame/drivers/cave.cpp6
-rw-r--r--src/mame/drivers/cc40.cpp6
-rw-r--r--src/mame/drivers/cdc721.cpp2
-rw-r--r--src/mame/drivers/cesclass.cpp2
-rw-r--r--src/mame/drivers/champbwl.cpp4
-rw-r--r--src/mame/drivers/chinsan.cpp2
-rw-r--r--src/mame/drivers/chsuper.cpp2
-rw-r--r--src/mame/drivers/cidelsa.cpp8
-rw-r--r--src/mame/drivers/cischeat.cpp2
-rw-r--r--src/mame/drivers/clcd.cpp2
-rw-r--r--src/mame/drivers/cliffhgr.cpp2
-rw-r--r--src/mame/drivers/cloak.cpp2
-rw-r--r--src/mame/drivers/clpoker.cpp2
-rw-r--r--src/mame/drivers/coinmstr.cpp2
-rw-r--r--src/mame/drivers/coinmvga.cpp2
-rw-r--r--src/mame/drivers/coolpool.cpp4
-rw-r--r--src/mame/drivers/coolridr.cpp2
-rw-r--r--src/mame/drivers/corona.cpp10
-rw-r--r--src/mame/drivers/cps3.cpp2
-rw-r--r--src/mame/drivers/crystal.cpp2
-rw-r--r--src/mame/drivers/csplayh5.cpp2
-rw-r--r--src/mame/drivers/cubeqst.cpp2
-rw-r--r--src/mame/drivers/cybiko.cpp2
-rw-r--r--src/mame/drivers/d9final.cpp2
-rw-r--r--src/mame/drivers/dblcrown.cpp2
-rw-r--r--src/mame/drivers/ddenlovr.cpp4
-rw-r--r--src/mame/drivers/dgpix.cpp2
-rw-r--r--src/mame/drivers/dmndrby.cpp2
-rw-r--r--src/mame/drivers/drw80pkr.cpp2
-rw-r--r--src/mame/drivers/dynadice.cpp2
-rw-r--r--src/mame/drivers/dynax.cpp20
-rw-r--r--src/mame/drivers/eacc.cpp2
-rw-r--r--src/mame/drivers/epos.cpp2
-rw-r--r--src/mame/drivers/equites.cpp2
-rw-r--r--src/mame/drivers/esh.cpp2
-rw-r--r--src/mame/drivers/esripsys.cpp2
-rw-r--r--src/mame/drivers/ettrivia.cpp2
-rw-r--r--src/mame/drivers/europc.cpp2
-rw-r--r--src/mame/drivers/exidy440.cpp2
-rw-r--r--src/mame/drivers/exterm.cpp2
-rw-r--r--src/mame/drivers/fb01.cpp2
-rw-r--r--src/mame/drivers/fccpu30.cpp2
-rw-r--r--src/mame/drivers/feversoc.cpp2
-rw-r--r--src/mame/drivers/fidel6502.cpp2
-rw-r--r--src/mame/drivers/fidel68k.cpp2
-rw-r--r--src/mame/drivers/fmtowns.cpp11
-rw-r--r--src/mame/drivers/fortecar.cpp2
-rw-r--r--src/mame/drivers/funtech.cpp2
-rw-r--r--src/mame/drivers/funworld.cpp2
-rw-r--r--src/mame/drivers/g627.cpp2
-rw-r--r--src/mame/drivers/gal3.cpp2
-rw-r--r--src/mame/drivers/galaxi.cpp2
-rw-r--r--src/mame/drivers/gambl186.cpp2
-rw-r--r--src/mame/drivers/gamecom.cpp2
-rw-r--r--src/mame/drivers/gamemasters.cpp2
-rw-r--r--src/mame/drivers/gatron.cpp2
-rw-r--r--src/mame/drivers/gei.cpp2
-rw-r--r--src/mame/drivers/gkigt.cpp2
-rw-r--r--src/mame/drivers/gladiatr.cpp4
-rw-r--r--src/mame/drivers/gluck2.cpp2
-rw-r--r--src/mame/drivers/goldnpkr.cpp2
-rw-r--r--src/mame/drivers/goldstar.cpp36
-rw-r--r--src/mame/drivers/gottlieb.cpp2
-rw-r--r--src/mame/drivers/gp32.cpp2
-rw-r--r--src/mame/drivers/gp_1.cpp2
-rw-r--r--src/mame/drivers/gp_2.cpp2
-rw-r--r--src/mame/drivers/gridlee.cpp2
-rw-r--r--src/mame/drivers/gstream.cpp4
-rw-r--r--src/mame/drivers/gts1.cpp2
-rw-r--r--src/mame/drivers/gts80.cpp2
-rw-r--r--src/mame/drivers/gts80a.cpp2
-rw-r--r--src/mame/drivers/gts80b.cpp2
-rw-r--r--src/mame/drivers/hankin.cpp2
-rw-r--r--src/mame/drivers/harriet.cpp2
-rw-r--r--src/mame/drivers/highvdeo.cpp8
-rw-r--r--src/mame/drivers/hitpoker.cpp2
-rw-r--r--src/mame/drivers/hnayayoi.cpp2
-rw-r--r--src/mame/drivers/hng64.cpp118
-rw-r--r--src/mame/drivers/holeland.cpp2
-rw-r--r--src/mame/drivers/hp48.cpp2
-rw-r--r--src/mame/drivers/hp700.cpp2
-rw-r--r--src/mame/drivers/hunter2.cpp2
-rw-r--r--src/mame/drivers/hyhoo.cpp2
-rw-r--r--src/mame/drivers/hyperspt.cpp2
-rw-r--r--src/mame/drivers/igs009.cpp2
-rw-r--r--src/mame/drivers/igs011.cpp2
-rw-r--r--src/mame/drivers/igs_m027.cpp4
-rw-r--r--src/mame/drivers/inder.cpp8
-rw-r--r--src/mame/drivers/jaguar.cpp2
-rw-r--r--src/mame/drivers/jangou.cpp2
-rw-r--r--src/mame/drivers/jclub2.cpp6
-rw-r--r--src/mame/drivers/joctronic.cpp4
-rw-r--r--src/mame/drivers/jokrwild.cpp2
-rw-r--r--src/mame/drivers/jp.cpp2
-rw-r--r--src/mame/drivers/jpmimpct.cpp4
-rw-r--r--src/mame/drivers/jpmsys5.cpp6
-rw-r--r--src/mame/drivers/jubilee.cpp2
-rw-r--r--src/mame/drivers/kas89.cpp2
-rw-r--r--src/mame/drivers/kingdrby.cpp2
-rw-r--r--src/mame/drivers/kingpin.cpp2
-rw-r--r--src/mame/drivers/konendev.cpp4
-rw-r--r--src/mame/drivers/kurukuru.cpp2
-rw-r--r--src/mame/drivers/lastbank.cpp2
-rw-r--r--src/mame/drivers/lastfght.cpp3
-rw-r--r--src/mame/drivers/lbeach.cpp2
-rw-r--r--src/mame/drivers/lcmate2.cpp2
-rw-r--r--src/mame/drivers/leland.cpp4
-rw-r--r--src/mame/drivers/ltd.cpp4
-rw-r--r--src/mame/drivers/lucky74.cpp2
-rw-r--r--src/mame/drivers/lvcards.cpp4
-rw-r--r--src/mame/drivers/m92.cpp2
-rw-r--r--src/mame/drivers/magic10.cpp2
-rw-r--r--src/mame/drivers/magicfly.cpp2
-rw-r--r--src/mame/drivers/magtouch.cpp2
-rw-r--r--src/mame/drivers/majorpkr.cpp2
-rw-r--r--src/mame/drivers/malzak.cpp2
-rw-r--r--src/mame/drivers/manohman.cpp2
-rw-r--r--src/mame/drivers/mastboyo.cpp8
-rw-r--r--src/mame/drivers/maygay1b.cpp2
-rw-r--r--src/mame/drivers/maygayv1.cpp2
-rw-r--r--src/mame/drivers/mazerbla.cpp4
-rw-r--r--src/mame/drivers/mcr.cpp2
-rw-r--r--src/mame/drivers/mcr3.cpp2
-rw-r--r--src/mame/drivers/mcr68.cpp2
-rw-r--r--src/mame/drivers/mephisto_montec.cpp2
-rw-r--r--src/mame/drivers/mephistp.cpp2
-rw-r--r--src/mame/drivers/merit.cpp8
-rw-r--r--src/mame/drivers/meritm.cpp2
-rw-r--r--src/mame/drivers/meyc8080.cpp2
-rw-r--r--src/mame/drivers/meyc8088.cpp2
-rw-r--r--src/mame/drivers/mgames.cpp2
-rw-r--r--src/mame/drivers/mgavegas.cpp2
-rw-r--r--src/mame/drivers/micro3d.cpp2
-rw-r--r--src/mame/drivers/micronic.cpp4
-rw-r--r--src/mame/drivers/micropin.cpp4
-rw-r--r--src/mame/drivers/midtunit.cpp2
-rw-r--r--src/mame/drivers/midvunit.cpp2
-rw-r--r--src/mame/drivers/midwunit.cpp2
-rw-r--r--src/mame/drivers/midxunit.cpp2
-rw-r--r--src/mame/drivers/midyunit.cpp4
-rw-r--r--src/mame/drivers/midzeus.cpp4
-rw-r--r--src/mame/drivers/mil4000.cpp2
-rw-r--r--src/mame/drivers/miniboy7.cpp2
-rw-r--r--src/mame/drivers/mitchell.cpp7
-rw-r--r--src/mame/drivers/mjkjidai.cpp2
-rw-r--r--src/mame/drivers/mjsenpu.cpp2
-rw-r--r--src/mame/drivers/mmodular.cpp6
-rw-r--r--src/mame/drivers/model2.cpp8
-rw-r--r--src/mame/drivers/modena.cpp2
-rw-r--r--src/mame/drivers/monzagp.cpp2
-rw-r--r--src/mame/drivers/mpu12wbk.cpp2
-rw-r--r--src/mame/drivers/mpu3.cpp2
-rw-r--r--src/mame/drivers/mpu4dealem.cpp2
-rw-r--r--src/mame/drivers/mpu4vid.cpp2
-rw-r--r--src/mame/drivers/mquake.cpp2
-rw-r--r--src/mame/drivers/mrgame.cpp2
-rw-r--r--src/mame/drivers/mtouchxl.cpp2
-rw-r--r--src/mame/drivers/namcofl.cpp2
-rw-r--r--src/mame/drivers/namcond1.cpp4
-rw-r--r--src/mame/drivers/namcos1.cpp2
-rw-r--r--src/mame/drivers/namcos2.cpp14
-rw-r--r--src/mame/drivers/namcos21.cpp7
-rw-r--r--src/mame/drivers/namcos23.cpp6
-rw-r--r--src/mame/drivers/naomi.cpp4
-rw-r--r--src/mame/drivers/nbmj8688.cpp4
-rw-r--r--src/mame/drivers/nbmj8891.cpp20
-rw-r--r--src/mame/drivers/nbmj8991.cpp8
-rw-r--r--src/mame/drivers/nbmj9195.cpp12
-rw-r--r--src/mame/drivers/nc.cpp2
-rw-r--r--src/mame/drivers/neogeo.cpp2
-rw-r--r--src/mame/drivers/neogeocd.cpp2
-rw-r--r--src/mame/drivers/neoprint.cpp4
-rw-r--r--src/mame/drivers/niyanpai.cpp3
-rw-r--r--src/mame/drivers/norautp.cpp2
-rw-r--r--src/mame/drivers/novag6502.cpp6
-rw-r--r--src/mame/drivers/novag68k.cpp2
-rw-r--r--src/mame/drivers/nyny.cpp2
-rw-r--r--src/mame/drivers/ojankohs.cpp8
-rw-r--r--src/mame/drivers/omegrace.cpp2
-rw-r--r--src/mame/drivers/pacman.cpp2
-rw-r--r--src/mame/drivers/pastelg.cpp4
-rw-r--r--src/mame/drivers/pb1000.cpp4
-rw-r--r--src/mame/drivers/pcat_dyn.cpp2
-rw-r--r--src/mame/drivers/pcat_nit.cpp4
-rw-r--r--src/mame/drivers/pcd.cpp2
-rw-r--r--src/mame/drivers/pce220.cpp6
-rw-r--r--src/mame/drivers/pda600.cpp2
-rw-r--r--src/mame/drivers/peplus.cpp2
-rw-r--r--src/mame/drivers/peyper.cpp2
-rw-r--r--src/mame/drivers/pgm.cpp4
-rw-r--r--src/mame/drivers/pgm2.cpp2
-rw-r--r--src/mame/drivers/piggypas.cpp2
-rw-r--r--src/mame/drivers/pingpong.cpp2
-rw-r--r--src/mame/drivers/piratesh.cpp2
-rw-r--r--src/mame/drivers/pkscram.cpp2
-rw-r--r--src/mame/drivers/play_1.cpp2
-rw-r--r--src/mame/drivers/play_2.cpp2
-rw-r--r--src/mame/drivers/play_3.cpp2
-rw-r--r--src/mame/drivers/playch10.cpp7
-rw-r--r--src/mame/drivers/playmark.cpp2
-rw-r--r--src/mame/drivers/pocketc.cpp4
-rw-r--r--src/mame/drivers/pofo.cpp2
-rw-r--r--src/mame/drivers/polepos.cpp4
-rw-r--r--src/mame/drivers/polgar.cpp4
-rw-r--r--src/mame/drivers/portrait.cpp2
-rw-r--r--src/mame/drivers/psion.cpp8
-rw-r--r--src/mame/drivers/punchout.cpp2
-rw-r--r--src/mame/drivers/px4.cpp4
-rw-r--r--src/mame/drivers/qdrmfgp.cpp4
-rw-r--r--src/mame/drivers/qix.cpp2
-rw-r--r--src/mame/drivers/quickpick5.cpp2
-rw-r--r--src/mame/drivers/qvt201.cpp2
-rw-r--r--src/mame/drivers/qvt6800.cpp4
-rw-r--r--src/mame/drivers/r2dtank.cpp2
-rw-r--r--src/mame/drivers/rainbow.cpp2
-rw-r--r--src/mame/drivers/rc759.cpp2
-rw-r--r--src/mame/drivers/rd110.cpp13
-rw-r--r--src/mame/drivers/re900.cpp2
-rw-r--r--src/mame/drivers/risc2500.cpp2
-rw-r--r--src/mame/drivers/rmhaihai.cpp2
-rw-r--r--src/mame/drivers/roul.cpp2
-rw-r--r--src/mame/drivers/royalmah.cpp2
-rw-r--r--src/mame/drivers/s11.cpp2
-rw-r--r--src/mame/drivers/s11a.cpp2
-rw-r--r--src/mame/drivers/s11b.cpp2
-rw-r--r--src/mame/drivers/s11c.cpp2
-rw-r--r--src/mame/drivers/s3.cpp2
-rw-r--r--src/mame/drivers/s4.cpp2
-rw-r--r--src/mame/drivers/s6.cpp2
-rw-r--r--src/mame/drivers/s6a.cpp2
-rw-r--r--src/mame/drivers/s7.cpp2
-rw-r--r--src/mame/drivers/s8.cpp2
-rw-r--r--src/mame/drivers/s8a.cpp2
-rw-r--r--src/mame/drivers/s9.cpp2
-rw-r--r--src/mame/drivers/sanremo.cpp2
-rw-r--r--src/mame/drivers/saturn.cpp2
-rw-r--r--src/mame/drivers/sauro.cpp2
-rw-r--r--src/mame/drivers/sderby.cpp12
-rw-r--r--src/mame/drivers/seattle.cpp3
-rw-r--r--src/mame/drivers/segac2.cpp2
-rw-r--r--src/mame/drivers/segajw.cpp2
-rw-r--r--src/mame/drivers/segaorun.cpp10
-rw-r--r--src/mame/drivers/segas16a.cpp2
-rw-r--r--src/mame/drivers/segas16b.cpp4
-rw-r--r--src/mame/drivers/segas18.cpp2
-rw-r--r--src/mame/drivers/segas24.cpp7
-rw-r--r--src/mame/drivers/segaxbd.cpp4
-rw-r--r--src/mame/drivers/segaybd.cpp2
-rw-r--r--src/mame/drivers/seicross.cpp2
-rw-r--r--src/mame/drivers/sengokmj.cpp2
-rw-r--r--src/mame/drivers/seta.cpp10
-rw-r--r--src/mame/drivers/seta2.cpp8
-rw-r--r--src/mame/drivers/sfbonus.cpp2
-rw-r--r--src/mame/drivers/sigmab52.cpp2
-rw-r--r--src/mame/drivers/sigmab98.cpp6
-rw-r--r--src/mame/drivers/skylncr.cpp2
-rw-r--r--src/mame/drivers/sm7238.cpp2
-rw-r--r--src/mame/drivers/smsmcorp.cpp2
-rw-r--r--src/mame/drivers/snookr10.cpp2
-rw-r--r--src/mame/drivers/spectra.cpp2
-rw-r--r--src/mame/drivers/spiders.cpp2
-rw-r--r--src/mame/drivers/spinb.cpp2
-rw-r--r--src/mame/drivers/splus.cpp4
-rw-r--r--src/mame/drivers/spoker.cpp2
-rw-r--r--src/mame/drivers/srmp2.cpp6
-rw-r--r--src/mame/drivers/ssv.cpp14
-rw-r--r--src/mame/drivers/st_mp100.cpp2
-rw-r--r--src/mame/drivers/st_mp200.cpp2
-rw-r--r--src/mame/drivers/statriv2.cpp2
-rw-r--r--src/mame/drivers/stratos.cpp2
-rw-r--r--src/mame/drivers/stuntair.cpp2
-rw-r--r--src/mame/drivers/subsino.cpp2
-rw-r--r--src/mame/drivers/subsino2.cpp8
-rw-r--r--src/mame/drivers/sun3.cpp4
-rw-r--r--src/mame/drivers/supdrapo.cpp2
-rw-r--r--src/mame/drivers/supercrd.cpp2
-rw-r--r--src/mame/drivers/suprnova.cpp2
-rw-r--r--src/mame/drivers/taitopjc.cpp2
-rw-r--r--src/mame/drivers/taitotz.cpp2
-rw-r--r--src/mame/drivers/tandy1t.cpp2
-rw-r--r--src/mame/drivers/tapatune.cpp2
-rw-r--r--src/mame/drivers/tatsumi.cpp2
-rw-r--r--src/mame/drivers/tceptor.cpp2
-rw-r--r--src/mame/drivers/techno.cpp2
-rw-r--r--src/mame/drivers/tetrisp2.cpp14
-rw-r--r--src/mame/drivers/thedealr.cpp2
-rw-r--r--src/mame/drivers/ti74.cpp4
-rw-r--r--src/mame/drivers/ti85.cpp2
-rw-r--r--src/mame/drivers/ti89.cpp2
-rw-r--r--src/mame/drivers/tickee.cpp6
-rw-r--r--src/mame/drivers/tmaster.cpp2
-rw-r--r--src/mame/drivers/tmnt.cpp2
-rw-r--r--src/mame/drivers/toaplan2.cpp4
-rw-r--r--src/mame/drivers/tomcat.cpp2
-rw-r--r--src/mame/drivers/tonton.cpp2
-rw-r--r--src/mame/drivers/trackfld.cpp4
-rw-r--r--src/mame/drivers/triplhnt.cpp2
-rw-r--r--src/mame/drivers/ttchamp.cpp2
-rw-r--r--src/mame/drivers/tv955.cpp2
-rw-r--r--src/mame/drivers/tv965.cpp2
-rw-r--r--src/mame/drivers/tv990.cpp2
-rw-r--r--src/mame/drivers/twin16.cpp2
-rw-r--r--src/mame/drivers/tx1.cpp6
-rw-r--r--src/mame/drivers/umipoker.cpp2
-rw-r--r--src/mame/drivers/univac.cpp2
-rw-r--r--src/mame/drivers/upscope.cpp2
-rw-r--r--src/mame/drivers/usgames.cpp2
-rw-r--r--src/mame/drivers/v550.cpp2
-rw-r--r--src/mame/drivers/vamphalf.cpp4
-rw-r--r--src/mame/drivers/vcombat.cpp4
-rw-r--r--src/mame/drivers/vertigo.cpp2
-rw-r--r--src/mame/drivers/victory.cpp2
-rw-r--r--src/mame/drivers/videopkr.cpp2
-rw-r--r--src/mame/drivers/vlc.cpp2
-rw-r--r--src/mame/drivers/vp101.cpp4
-rw-r--r--src/mame/drivers/vp122.cpp2
-rw-r--r--src/mame/drivers/vroulet.cpp2
-rw-r--r--src/mame/drivers/wico.cpp2
-rw-r--r--src/mame/drivers/wildpkr.cpp2
-rw-r--r--src/mame/drivers/williams.cpp4
-rw-r--r--src/mame/drivers/wink.cpp2
-rw-r--r--src/mame/drivers/witch.cpp2
-rw-r--r--src/mame/drivers/wmg.cpp2
-rw-r--r--src/mame/drivers/wpc_95.cpp2
-rw-r--r--src/mame/drivers/wpc_dcs.cpp2
-rw-r--r--src/mame/drivers/wpc_s.cpp2
-rw-r--r--src/mame/drivers/wswan.cpp2
-rw-r--r--src/mame/drivers/x07.cpp4
-rw-r--r--src/mame/drivers/x68k.cpp2
-rw-r--r--src/mame/drivers/xtheball.cpp2
-rw-r--r--src/mame/drivers/zac_1.cpp2
-rw-r--r--src/mame/drivers/zac_2.cpp2
-rw-r--r--src/mame/drivers/zac_proto.cpp2
-rw-r--r--src/mame/drivers/zn.cpp6
-rw-r--r--src/mame/machine/cedar_magnet_flop.cpp7
-rw-r--r--src/mame/machine/decopincpu.cpp2
-rw-r--r--src/mame/machine/gaelco_ds5002fp.cpp2
-rw-r--r--src/mame/machine/iteagle_fpga.cpp11
-rw-r--r--src/mame/machine/megacd.cpp2
-rw-r--r--src/mame/machine/mpu4.cpp2
-rw-r--r--src/mame/machine/pce_cd.cpp2
394 files changed, 715 insertions, 750 deletions
diff --git a/src/devices/bus/msx_slot/fs4600.cpp b/src/devices/bus/msx_slot/fs4600.cpp
index 3ec7efc74f7..dc975cdd4ba 100644
--- a/src/devices/bus/msx_slot/fs4600.cpp
+++ b/src/devices/bus/msx_slot/fs4600.cpp
@@ -27,9 +27,10 @@ msx_slot_fs4600_device::msx_slot_fs4600_device(const machine_config &mconfig, co
}
-MACHINE_CONFIG_START(msx_slot_fs4600_device::device_add_mconfig)
- MCFG_NVRAM_ADD_0FILL("nvram")
-MACHINE_CONFIG_END
+void msx_slot_fs4600_device::device_add_mconfig(machine_config &config)
+{
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
+}
void msx_slot_fs4600_device::device_start()
diff --git a/src/devices/bus/msx_slot/panasonic08.cpp b/src/devices/bus/msx_slot/panasonic08.cpp
index 04630982531..450f4fce1de 100644
--- a/src/devices/bus/msx_slot/panasonic08.cpp
+++ b/src/devices/bus/msx_slot/panasonic08.cpp
@@ -33,9 +33,10 @@ msx_slot_panasonic08_device::msx_slot_panasonic08_device(const machine_config &m
}
-MACHINE_CONFIG_START(msx_slot_panasonic08_device::device_add_mconfig)
- MCFG_NVRAM_ADD_0FILL("nvram")
-MACHINE_CONFIG_END
+void msx_slot_panasonic08_device::device_add_mconfig(machine_config &config)
+{
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
+}
void msx_slot_panasonic08_device::device_start()
diff --git a/src/devices/bus/msx_slot/sony08.cpp b/src/devices/bus/msx_slot/sony08.cpp
index 825b74bec6c..96f3f0fdedc 100644
--- a/src/devices/bus/msx_slot/sony08.cpp
+++ b/src/devices/bus/msx_slot/sony08.cpp
@@ -30,9 +30,10 @@ msx_slot_sony08_device::msx_slot_sony08_device(const machine_config &mconfig, co
}
-MACHINE_CONFIG_START(msx_slot_sony08_device::device_add_mconfig)
- MCFG_NVRAM_ADD_0FILL("nvram")
-MACHINE_CONFIG_END
+void msx_slot_sony08_device::device_add_mconfig(machine_config &config)
+{
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
+}
void msx_slot_sony08_device::device_start()
diff --git a/src/devices/machine/nvram.h b/src/devices/machine/nvram.h
index dd5a89660ba..45c01bad0c1 100644
--- a/src/devices/machine/nvram.h
+++ b/src/devices/machine/nvram.h
@@ -13,44 +13,6 @@
#pragma once
-
-
-//**************************************************************************
-// INTERFACE CONFIGURATION MACROS
-//**************************************************************************
-
-#define MCFG_NVRAM_ADD_0FILL(_tag) \
- MCFG_DEVICE_ADD(_tag, NVRAM, nvram_device::DEFAULT_ALL_0);
-#define MCFG_NVRAM_ADD_1FILL(_tag) \
- MCFG_DEVICE_ADD(_tag, NVRAM, nvram_device::DEFAULT_ALL_1);
-#define MCFG_NVRAM_ADD_RANDOM_FILL(_tag) \
- MCFG_DEVICE_ADD(_tag, NVRAM, nvram_device::DEFAULT_RANDOM);
-#define MCFG_NVRAM_ADD_NO_FILL(_tag) \
- MCFG_DEVICE_ADD(_tag, NVRAM, nvram_device::DEFAULT_NONE);
-#define MCFG_NVRAM_ADD_CUSTOM_DRIVER(_tag, _class, _method) \
- MCFG_DEVICE_ADD(_tag, NVRAM) \
- downcast<nvram_device &>(*device).set_custom_handler(nvram_device::init_delegate(&_class::_method, #_class "::" #_method, nullptr, (_class *)nullptr));
-
-#define MCFG_NVRAM_REPLACE_0FILL(_tag) \
- MCFG_DEVICE_REPLACE(_tag, NVRAM, 0) \
- downcast<nvram_device &>(*device).set_default_value(nvram_device::DEFAULT_ALL_0);
-#define MCFG_NVRAM_REPLACE_1FILL(_tag) \
- MCFG_DEVICE_REPLACE(_tag, NVRAM, 0) \
- downcast<nvram_device &>(*device).set_default_value(nvram_device::DEFAULT_ALL_1);
-#define MCFG_NVRAM_REPLACE_RANDOM_FILL(_tag) \
- MCFG_DEVICE_REPLACE(_tag, NVRAM, 0) \
- downcast<nvram_device &>(*device).set_default_value(*nvram_device::DEFAULT_RANDOM);
-#define MCFG_NVRAM_REPLACE_CUSTOM_DRIVER(_tag, _class, _method) \
- MCFG_DEVICE_REPLACE(_tag, NVRAM, 0) \
- downcast<nvram_device &>(*device).set_custom_handler(nvram_device::init_delegate(&_class::_method, #_class "::" #_method, nullptr, (_class *)nullptr));
-
-
-//**************************************************************************
-// TYPE DEFINITIONS
-//**************************************************************************
-
-// ======================> nvram_device
-
class nvram_device : public device_t,
public device_nvram_interface
{
@@ -117,9 +79,6 @@ protected:
size_t m_length;
};
-
-// device type definition
DECLARE_DEVICE_TYPE(NVRAM, nvram_device)
-
#endif // MAME_DEVICES_MACHINE_NVRAM_H
diff --git a/src/devices/machine/smpc.cpp b/src/devices/machine/smpc.cpp
index ef177979c40..a1e9d893b40 100644
--- a/src/devices/machine/smpc.cpp
+++ b/src/devices/machine/smpc.cpp
@@ -233,11 +233,12 @@ smpc_hle_device::smpc_hle_device(const machine_config &mconfig, const char *tag,
// configuration addiitons
//-------------------------------------------------
-MACHINE_CONFIG_START(smpc_hle_device::device_add_mconfig)
- MCFG_NVRAM_ADD_0FILL("smem")
+void smpc_hle_device::device_add_mconfig(machine_config &config)
+{
+ NVRAM(config, "smem", nvram_device::DEFAULT_ALL_0);
// TODO: custom RTC subdevice
-MACHINE_CONFIG_END
+}
//-------------------------------------------------
// device_start - device-specific startup
diff --git a/src/mame/drivers/3do.cpp b/src/mame/drivers/3do.cpp
index cfea047eb9f..fca1b451d1f 100644
--- a/src/mame/drivers/3do.cpp
+++ b/src/mame/drivers/3do.cpp
@@ -160,7 +160,7 @@ MACHINE_CONFIG_START(_3do_state::_3do)
MCFG_DEVICE_ADD( m_maincpu, ARM7_BE, XTAL(50'000'000)/4 )
MCFG_DEVICE_PROGRAM_MAP( main_mem)
- MCFG_NVRAM_ADD_1FILL(m_nvram)
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TIMER_DRIVER_ADD_PERIODIC("timer_x16", _3do_state, timer_x16_cb, attotime::from_hz(12000)) // TODO: timing
@@ -178,7 +178,7 @@ MACHINE_CONFIG_START(_3do_state::_3do_pal)
MCFG_DEVICE_ADD(m_maincpu, ARM7_BE, XTAL(50'000'000)/4 )
MCFG_DEVICE_PROGRAM_MAP( main_mem)
- MCFG_NVRAM_ADD_1FILL(m_nvram)
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TIMER_DRIVER_ADD_PERIODIC("timer_x16", _3do_state, timer_x16_cb, attotime::from_hz(12000)) // TODO: timing
diff --git a/src/mame/drivers/4enraya.cpp b/src/mame/drivers/4enraya.cpp
index 64102cf68e1..f66f549c447 100644
--- a/src/mame/drivers/4enraya.cpp
+++ b/src/mame/drivers/4enraya.cpp
@@ -505,7 +505,7 @@ MACHINE_CONFIG_START(unk_gambl_state::unkpacg)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(unkpacg_main_map)
MCFG_DEVICE_IO_MAP(unkpacg_main_portmap)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* sound hardware */
// SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/4roses.cpp b/src/mame/drivers/4roses.cpp
index 7661c6117b8..9fdbf48c848 100644
--- a/src/mame/drivers/4roses.cpp
+++ b/src/mame/drivers/4roses.cpp
@@ -460,7 +460,7 @@ MACHINE_CONFIG_START(_4roses_state::_4roses)
MCFG_DEVICE_PROGRAM_MAP(_4roses_map)
MCFG_DEVICE_OPCODES_MAP(_4roses_opcodes_map)
-// MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
diff --git a/src/mame/drivers/5clown.cpp b/src/mame/drivers/5clown.cpp
index 9662da4baf1..a730e92427d 100644
--- a/src/mame/drivers/5clown.cpp
+++ b/src/mame/drivers/5clown.cpp
@@ -1033,7 +1033,7 @@ MACHINE_CONFIG_START(_5clown_state::fclown)
MCFG_DEVICE_ADD("audiocpu", M6502, MASTER_CLOCK/8) /* guess, seems ok */
MCFG_DEVICE_PROGRAM_MAP(fcaudio_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
pia6821_device &pia0(PIA6821(config, "pia0", 0));
pia0.readpa_handler().set(FUNC(_5clown_state::mux_port_r));
diff --git a/src/mame/drivers/88games.cpp b/src/mame/drivers/88games.cpp
index fa4764210ad..c5e3139aa7f 100644
--- a/src/mame/drivers/88games.cpp
+++ b/src/mame/drivers/88games.cpp
@@ -312,7 +312,7 @@ MACHINE_CONFIG_START(_88games_state::_88games)
MCFG_DEVICE_ADD("audiocpu", Z80, 3579545)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/accomm.cpp b/src/mame/drivers/accomm.cpp
index 5b27b9d0fa3..e8463a342c9 100644
--- a/src/mame/drivers/accomm.cpp
+++ b/src/mame/drivers/accomm.cpp
@@ -850,7 +850,7 @@ MACHINE_CONFIG_START(accomm_state::accomm)
/* internal ram */
RAM(config, RAM_TAG).set_default_size("512K").set_extra_options("1M");
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* sound */
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/acefruit.cpp b/src/mame/drivers/acefruit.cpp
index df1a1ef0146..0ccd187950a 100644
--- a/src/mame/drivers/acefruit.cpp
+++ b/src/mame/drivers/acefruit.cpp
@@ -649,7 +649,7 @@ MACHINE_CONFIG_START(acefruit_state::acefruit)
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(acefruit_state, acefruit)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* sound hardware */
diff --git a/src/mame/drivers/adp.cpp b/src/mame/drivers/adp.cpp
index 5f521639e1c..c5a3c9f4687 100644
--- a/src/mame/drivers/adp.cpp
+++ b/src/mame/drivers/adp.cpp
@@ -177,7 +177,9 @@ public:
m_microtouch(*this, "microtouch"),
m_maincpu(*this, "maincpu"),
m_duart(*this, "duart"),
+ m_acrtc(*this, "acrtc"),
m_palette(*this, "palette"),
+ m_nvram(*this, "nvram"),
m_in0(*this, "IN0")
{ }
@@ -192,7 +194,9 @@ private:
required_device<microtouch_device> m_microtouch;
required_device<cpu_device> m_maincpu;
required_device<mc68681_device> m_duart;
+ required_device<hd63484_device> m_acrtc;
required_device<palette_device> m_palette;
+ required_device<nvram_device> m_nvram;
required_ioport m_in0;
/* misc */
@@ -311,8 +315,8 @@ WRITE16_MEMBER(adp_state::input_w)
void adp_state::skattv_mem(address_map &map)
{
map(0x000000, 0x0fffff).rom();
- map(0x800080, 0x800081).rw("acrtc", FUNC(hd63484_device::status16_r), FUNC(hd63484_device::address16_w));
- map(0x800082, 0x800083).rw("acrtc", FUNC(hd63484_device::data16_r), FUNC(hd63484_device::data16_w));
+ map(0x800080, 0x800081).rw(m_acrtc, FUNC(hd63484_device::status16_r), FUNC(hd63484_device::address16_w));
+ map(0x800082, 0x800083).rw(m_acrtc, FUNC(hd63484_device::data16_r), FUNC(hd63484_device::data16_w));
map(0x800100, 0x800101).rw(FUNC(adp_state::input_r), FUNC(adp_state::input_w));
map(0x800140, 0x800143).rw("aysnd", FUNC(ay8910_device::data_r), FUNC(ay8910_device::address_data_w)).umask16(0x00ff); //18b too
map(0x800180, 0x80019f).rw(m_duart, FUNC(mc68681_device::read), FUNC(mc68681_device::write)).umask16(0x00ff);
@@ -323,8 +327,8 @@ void adp_state::skattva_mem(address_map &map)
{
map(0x000000, 0x03ffff).rom();
map(0x400000, 0x40001f).rw("rtc", FUNC(msm6242_device::read), FUNC(msm6242_device::write)).umask16(0x00ff);
- map(0x800080, 0x800081).rw("acrtc", FUNC(hd63484_device::status16_r), FUNC(hd63484_device::address16_w));
- map(0x800082, 0x800083).rw("acrtc", FUNC(hd63484_device::data16_r), FUNC(hd63484_device::data16_w));
+ map(0x800080, 0x800081).rw(m_acrtc, FUNC(hd63484_device::status16_r), FUNC(hd63484_device::address16_w));
+ map(0x800082, 0x800083).rw(m_acrtc, FUNC(hd63484_device::data16_r), FUNC(hd63484_device::data16_w));
map(0x800100, 0x800101).portr("IN0");
map(0x800140, 0x800143).rw("aysnd", FUNC(ay8910_device::data_r), FUNC(ay8910_device::address_data_w)).umask16(0x00ff); //18b too
map(0x800180, 0x80019f).rw(m_duart, FUNC(mc68681_device::read), FUNC(mc68681_device::write)).umask16(0x00ff);
@@ -335,8 +339,8 @@ void adp_state::quickjac_mem(address_map &map)
{
map(0x000000, 0x01ffff).rom();
map(0x400000, 0x40001f).rw("rtc", FUNC(msm6242_device::read), FUNC(msm6242_device::write)).umask16(0x00ff);
- map(0x800080, 0x800081).rw("acrtc", FUNC(hd63484_device::status16_r), FUNC(hd63484_device::address16_w)); // bad
- map(0x800082, 0x800083).rw("acrtc", FUNC(hd63484_device::data16_r), FUNC(hd63484_device::data16_w)); // bad
+ map(0x800080, 0x800081).rw(m_acrtc, FUNC(hd63484_device::status16_r), FUNC(hd63484_device::address16_w)); // bad
+ map(0x800082, 0x800083).rw(m_acrtc, FUNC(hd63484_device::data16_r), FUNC(hd63484_device::data16_w)); // bad
map(0x800100, 0x800101).portr("IN0");
map(0x800140, 0x800143).rw("aysnd", FUNC(ay8910_device::data_r), FUNC(ay8910_device::address_data_w)).umask16(0x00ff); //18b too
map(0x800180, 0x80019f).rw(m_duart, FUNC(mc68681_device::read), FUNC(mc68681_device::write)).umask16(0x00ff);
@@ -347,8 +351,8 @@ void adp_state::funland_mem(address_map &map)
{
map(0x000000, 0x0fffff).rom();
map(0x400000, 0x40001f).rw("rtc", FUNC(msm6242_device::read), FUNC(msm6242_device::write)).umask16(0x00ff);
- map(0x800080, 0x800081).rw("acrtc", FUNC(hd63484_device::status16_r), FUNC(hd63484_device::address16_w));
- map(0x800082, 0x800083).rw("acrtc", FUNC(hd63484_device::data16_r), FUNC(hd63484_device::data16_w));
+ map(0x800080, 0x800081).rw(m_acrtc, FUNC(hd63484_device::status16_r), FUNC(hd63484_device::address16_w));
+ map(0x800082, 0x800083).rw(m_acrtc, FUNC(hd63484_device::data16_r), FUNC(hd63484_device::data16_w));
map(0x800089, 0x800089).w("ramdac", FUNC(ramdac_device::index_w));
map(0x80008b, 0x80008b).w("ramdac", FUNC(ramdac_device::pal_w));
map(0x80008d, 0x80008d).w("ramdac", FUNC(ramdac_device::mask_w));
@@ -361,8 +365,8 @@ void adp_state::funland_mem(address_map &map)
void adp_state::fstation_mem(address_map &map)
{
map(0x000000, 0x0fffff).rom();
- map(0x800080, 0x800081).rw("acrtc", FUNC(hd63484_device::status16_r), FUNC(hd63484_device::address16_w));
- map(0x800082, 0x800083).rw("acrtc", FUNC(hd63484_device::data16_r), FUNC(hd63484_device::data16_w));
+ map(0x800080, 0x800081).rw(m_acrtc, FUNC(hd63484_device::status16_r), FUNC(hd63484_device::address16_w));
+ map(0x800082, 0x800083).rw(m_acrtc, FUNC(hd63484_device::data16_r), FUNC(hd63484_device::data16_w));
map(0x800100, 0x800101).rw(FUNC(adp_state::input_r), FUNC(adp_state::input_w));
map(0x800140, 0x800143).rw("aysnd", FUNC(ay8910_device::data_r), FUNC(ay8910_device::address_data_w)).umask16(0x00ff); //18b too
map(0x800180, 0x80019f).rw(m_duart, FUNC(mc68681_device::read), FUNC(mc68681_device::write)).umask16(0x00ff);
@@ -554,7 +558,7 @@ void adp_state::fstation_hd63484_map(address_map &map)
MACHINE_CONFIG_START(adp_state::quickjac)
- MCFG_DEVICE_ADD("maincpu", M68000, 8000000)
+ MCFG_DEVICE_ADD(m_maincpu, M68000, 8000000)
MCFG_DEVICE_PROGRAM_MAP(quickjac_mem)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(adp_state, duart_iack_handler)
@@ -568,7 +572,7 @@ MACHINE_CONFIG_START(adp_state::quickjac)
MCFG_MICROTOUCH_ADD( "microtouch", 9600, WRITELINE("duart", mc68681_device, rx_a_w) )
- MCFG_NVRAM_ADD_NO_FILL("nvram")
+ NVRAM(config, m_nvram, nvram_device::DEFAULT_NONE);
MCFG_DEVICE_ADD("rtc", MSM6242, XTAL(32'768))
//MCFG_MSM6242_OUT_INT_HANDLER(WRITELINE(*this, adp_state, rtc_irq))
@@ -585,7 +589,7 @@ MACHINE_CONFIG_START(adp_state::quickjac)
MCFG_PALETTE_INIT_OWNER(adp_state,adp)
- MCFG_HD63484_ADD("acrtc", 0, adp_hd63484_map)
+ HD63484(config, m_acrtc, 0).set_addrmap(0, &adp_state::adp_hd63484_map);
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("aysnd", AY8910, 3686400/2)
@@ -594,25 +598,24 @@ MACHINE_CONFIG_START(adp_state::quickjac)
MACHINE_CONFIG_END
-MACHINE_CONFIG_START(adp_state::skattv)
+void adp_state::skattv(machine_config &config)
+{
quickjac(config);
- MCFG_DEVICE_MODIFY("maincpu")
- MCFG_DEVICE_PROGRAM_MAP(skattv_mem)
-MACHINE_CONFIG_END
+ m_maincpu->set_addrmap(AS_PROGRAM, &adp_state::skattv_mem);
+}
-MACHINE_CONFIG_START(adp_state::skattva)
+void adp_state::skattva(machine_config &config)
+{
quickjac(config);
- MCFG_DEVICE_MODIFY("maincpu")
- MCFG_DEVICE_PROGRAM_MAP(skattva_mem)
-
- MCFG_NVRAM_REPLACE_CUSTOM_DRIVER("nvram", adp_state, skattva_nvram_init)
-MACHINE_CONFIG_END
+ m_maincpu->set_addrmap(AS_PROGRAM, &adp_state::skattva_mem);
+ m_nvram->set_custom_handler(FUNC(adp_state::skattva_nvram_init));
+}
-MACHINE_CONFIG_START(adp_state::fashiong)
+void adp_state::fashiong(machine_config &config)
+{
skattv(config);
- MCFG_DEVICE_MODIFY("acrtc")
- MCFG_HD63484_ADDRESS_MAP(fashiong_hd63484_map)
-MACHINE_CONFIG_END
+ m_acrtc->set_addrmap(0, &adp_state::fashiong_hd63484_map);
+}
void adp_state::ramdac_map(address_map &map)
{
diff --git a/src/mame/drivers/albazc.cpp b/src/mame/drivers/albazc.cpp
index 3e5a2c1b10b..267f9d08e56 100644
--- a/src/mame/drivers/albazc.cpp
+++ b/src/mame/drivers/albazc.cpp
@@ -285,7 +285,7 @@ MACHINE_CONFIG_START(albazc_state::hanaroku)
MCFG_DEVICE_PROGRAM_MAP(hanaroku_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", albazc_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(50), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH )
diff --git a/src/mame/drivers/alesis.cpp b/src/mame/drivers/alesis.cpp
index 322c9da3f23..f31f60fde61 100644
--- a/src/mame/drivers/alesis.cpp
+++ b/src/mame/drivers/alesis.cpp
@@ -445,7 +445,7 @@ MACHINE_CONFIG_START(alesis_state::hr16)
/* sound hardware */
MCFG_ALESIS_DM3AG_ADD("dm3ag", 12_MHz_XTAL/2)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(alesis_state::sr16)
diff --git a/src/mame/drivers/alg.cpp b/src/mame/drivers/alg.cpp
index 707c187ab55..027ca192c6a 100644
--- a/src/mame/drivers/alg.cpp
+++ b/src/mame/drivers/alg.cpp
@@ -311,7 +311,7 @@ MACHINE_CONFIG_START(alg_state::alg_r1)
ADDRESS_MAP_BANK(config, "overlay").set_map(&alg_state::overlay_512kb_map).set_options(ENDIANNESS_BIG, 16, 22, 0x200000);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
ntsc_video(config);
diff --git a/src/mame/drivers/alphasma.cpp b/src/mame/drivers/alphasma.cpp
index d0fe87710d7..8e9df198ad3 100644
--- a/src/mame/drivers/alphasma.cpp
+++ b/src/mame/drivers/alphasma.cpp
@@ -457,7 +457,7 @@ MACHINE_CONFIG_START(alphasmart_state::alphasmart)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(alphasmart_state, alphasmart)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(asma2k_state::asma2k)
diff --git a/src/mame/drivers/amaticmg.cpp b/src/mame/drivers/amaticmg.cpp
index 22a41783643..7c8e5eafca2 100644
--- a/src/mame/drivers/amaticmg.cpp
+++ b/src/mame/drivers/amaticmg.cpp
@@ -849,7 +849,7 @@ MACHINE_CONFIG_START(amaticmg_state::amaticmg)
MCFG_DEVICE_PROGRAM_MAP(amaticmg_map)
MCFG_DEVICE_IO_MAP(amaticmg_portmap)
-// MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* 3x 8255 */
MCFG_DEVICE_ADD("ppi8255_0", I8255A, 0)
diff --git a/src/mame/drivers/amiga.cpp b/src/mame/drivers/amiga.cpp
index 28099d91f0b..ffa5bd40d63 100644
--- a/src/mame/drivers/amiga.cpp
+++ b/src/mame/drivers/amiga.cpp
@@ -1781,10 +1781,10 @@ MACHINE_CONFIG_START(cdtv_state::cdtv)
ADDRESS_MAP_BANK(config, "overlay").set_map(&amiga_state::overlay_1mb_map).set_options(ENDIANNESS_BIG, 16, 22, 0x200000);
// standard sram
- MCFG_NVRAM_ADD_0FILL("sram")
+ NVRAM(config, "sram", nvram_device::DEFAULT_ALL_0);
// 256kb memory card
- MCFG_NVRAM_ADD_0FILL("memcard")
+ NVRAM(config, "memcard", nvram_device::DEFAULT_ALL_0);
// real-time clock
MCFG_DEVICE_ADD("u61", MSM6242, XTAL(32'768))
diff --git a/src/mame/drivers/ampoker2.cpp b/src/mame/drivers/ampoker2.cpp
index a3deba623ca..93de5af13e7 100644
--- a/src/mame/drivers/ampoker2.cpp
+++ b/src/mame/drivers/ampoker2.cpp
@@ -1157,7 +1157,7 @@ MACHINE_CONFIG_START(ampoker2_state::ampoker2)
MCFG_WATCHDOG_ADD("watchdog")
MCFG_WATCHDOG_TIME_INIT(attotime::from_msec(200)) /* 200 ms, measured */
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/apc.cpp b/src/mame/drivers/apc.cpp
index 6bf4d40bb5e..b4fe4b567a7 100644
--- a/src/mame/drivers/apc.cpp
+++ b/src/mame/drivers/apc.cpp
@@ -970,7 +970,7 @@ MACHINE_CONFIG_START(apc_state::apc)
m_dmac->out_dack_callback<2>().set(FUNC(apc_state::apc_dack2_w));
m_dmac->out_dack_callback<3>().set(FUNC(apc_state::apc_dack3_w));
- MCFG_NVRAM_ADD_1FILL(m_cmos)
+ NVRAM(config, m_cmos, nvram_device::DEFAULT_ALL_1);
MCFG_UPD1990A_ADD(m_rtc, XTAL(32'768), NOOP, NOOP)
MCFG_UPD765A_ADD(m_fdc, true, true)
diff --git a/src/mame/drivers/apple2gs.cpp b/src/mame/drivers/apple2gs.cpp
index bd7e3c3ec83..9f78a00f45a 100644
--- a/src/mame/drivers/apple2gs.cpp
+++ b/src/mame/drivers/apple2gs.cpp
@@ -4569,7 +4569,7 @@ MACHINE_CONFIG_START( apple2gs_state::apple2gs )
MCFG_TIMER_DRIVER_ADD_PERIODIC("repttmr", apple2gs_state, ay3600_repeat, attotime::from_hz(15))
#endif
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD(A2GS_VIDEO_TAG, APPLE2_VIDEO, A2GS_14M)
diff --git a/src/mame/drivers/arachnid.cpp b/src/mame/drivers/arachnid.cpp
index 3c0f14591dc..c9a97e4cb5f 100644
--- a/src/mame/drivers/arachnid.cpp
+++ b/src/mame/drivers/arachnid.cpp
@@ -428,7 +428,7 @@ MACHINE_CONFIG_START(arachnid_state::arachnid)
MCFG_DEVICE_ADD(M6809_TAG, MC6809, 10.738635_MHz_XTAL / 3)
MCFG_DEVICE_PROGRAM_MAP(arachnid_map)
- MCFG_NVRAM_ADD_0FILL("nvram") // MK48Z02 (or DS1220Y)
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // MK48Z02 (or DS1220Y)
// devices
PIA6821(config, m_pia_u4, 0);
diff --git a/src/mame/drivers/aristmk5.cpp b/src/mame/drivers/aristmk5.cpp
index 432e4035bb3..c8d7ebe5ae1 100644
--- a/src/mame/drivers/aristmk5.cpp
+++ b/src/mame/drivers/aristmk5.cpp
@@ -2057,7 +2057,7 @@ MACHINE_CONFIG_START(aristmk5_state::aristmk5)
EEPROM_93C56_16BIT(config, "eeprom0");
EEPROM_93C56_16BIT(config, "eeprom1");
- MCFG_NVRAM_ADD_NO_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_NONE);
// TL16C452FN U71
MCFG_DEVICE_ADD("uart_0a", NS16450, MASTER_CLOCK / 9)
diff --git a/src/mame/drivers/arsystems.cpp b/src/mame/drivers/arsystems.cpp
index 5fe54874202..b69cd520ac9 100644
--- a/src/mame/drivers/arsystems.cpp
+++ b/src/mame/drivers/arsystems.cpp
@@ -308,7 +308,7 @@ MACHINE_CONFIG_START(arcadia_amiga_state::arcadia)
ADDRESS_MAP_BANK(config, "overlay").set_map(&amiga_state::overlay_512kb_map).set_options(ENDIANNESS_BIG, 16, 22, 0x200000);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
ntsc_video(config);
diff --git a/src/mame/drivers/astrcorp.cpp b/src/mame/drivers/astrcorp.cpp
index 72a398ec767..fd77b86e208 100644
--- a/src/mame/drivers/astrcorp.cpp
+++ b/src/mame/drivers/astrcorp.cpp
@@ -530,7 +530,7 @@ MACHINE_CONFIG_START(astrocorp_state::showhand)
MCFG_DEVICE_PROGRAM_MAP(showhand_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", astrocorp_state, irq4_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
EEPROM_93C46_16BIT(config, "eeprom").default_data(showhand_default_eeprom, sizeof(showhand_default_eeprom));
@@ -583,7 +583,7 @@ MACHINE_CONFIG_START(astrocorp_state::skilldrp)
MCFG_DEVICE_PROGRAM_MAP(skilldrp_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", astrocorp_state, skilldrp_scanline, "screen", 0, 1)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
EEPROM_93C46_16BIT(config, "eeprom");
MCFG_TICKET_DISPENSER_ADD("ticket", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW )
diff --git a/src/mame/drivers/astrocde.cpp b/src/mame/drivers/astrocde.cpp
index c9b86a3618e..faa4760d5bd 100644
--- a/src/mame/drivers/astrocde.cpp
+++ b/src/mame/drivers/astrocde.cpp
@@ -1202,7 +1202,7 @@ MACHINE_CONFIG_START(astrocde_state::astrocade_16color_base)
/* basic machine hardware */
ADDRESS_MAP_BANK(config, m_bank4000).set_map(&astrocde_state::bank4000_map).set_options(ENDIANNESS_LITTLE, 8, 16, 0x4000);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_PALETTE_MODIFY("palette")
@@ -1436,7 +1436,7 @@ MACHINE_CONFIG_START(astrocde_state::robby)
MCFG_DEVICE_PROGRAM_MAP(robby_map)
MCFG_DEVICE_IO_MAP(port_map_stereo_pattern)
- MCFG_NVRAM_ADD_0FILL("nvram") // HM6116LP-4 + battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // HM6116LP-4 + battery
cd4099_device &outlatch(CD4099(config, "outlatch")); // on game board at U1
outlatch.q_out_cb<0>().set(FUNC(astrocde_state::coin_counter_w<0>));
diff --git a/src/mame/drivers/at.cpp b/src/mame/drivers/at.cpp
index b72f50e7ecc..91014f6728c 100644
--- a/src/mame/drivers/at.cpp
+++ b/src/mame/drivers/at.cpp
@@ -556,7 +556,7 @@ MACHINE_CONFIG_START(at_state::at386)
MCFG_DEVICE_ADD("mb", AT_MB, 0)
MCFG_QUANTUM_TIME(attotime::from_hz(60))
downcast<at_mb_device *>(device)->at_softlists(config);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// on-board devices
MCFG_DEVICE_ADD("board1", ISA16_SLOT, 0, "mb:isabus", pc_isa16_cards, "fdcsmc", true) // FIXME: deteremine ISA bus clock
@@ -721,7 +721,7 @@ MACHINE_CONFIG_START(at_vrom_fix_state::megapcpla)
MCFG_DEVICE_ADD("mb", AT_MB, 0)
MCFG_QUANTUM_TIME(attotime::from_hz(60))
downcast<at_mb_device *>(device)->at_softlists(config);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// on board devices
MCFG_DEVICE_ADD("board1", ISA16_SLOT, 0, "mb:isabus", pc_isa16_cards, "fdcsmc", true) // FIXME: determine ISA bus clock
diff --git a/src/mame/drivers/atari_s2.cpp b/src/mame/drivers/atari_s2.cpp
index 9f2d7fadaac..0b5eccf4db1 100644
--- a/src/mame/drivers/atari_s2.cpp
+++ b/src/mame/drivers/atari_s2.cpp
@@ -483,7 +483,7 @@ MACHINE_CONFIG_START(atari_s2_state::atari_s2)
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M6800, XTAL(4'000'000) / 4)
MCFG_DEVICE_PROGRAM_MAP(atari_s2_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
/* Sound */
diff --git a/src/mame/drivers/attache.cpp b/src/mame/drivers/attache.cpp
index e34f6922500..238957dfa13 100644
--- a/src/mame/drivers/attache.cpp
+++ b/src/mame/drivers/attache.cpp
@@ -1192,7 +1192,7 @@ MACHINE_CONFIG_START(attache_state::attache)
MCFG_TMS9927_VSYN_CALLBACK(WRITELINE("ctc", z80ctc_device, trg2))
MCFG_VIDEO_SET_SCREEN("screen")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
RAM(config, RAM_TAG).set_default_size("64K");
@@ -1282,7 +1282,7 @@ MACHINE_CONFIG_START(attache816_state::attache816)
MCFG_TMS9927_VSYN_CALLBACK(WRITELINE("ctc", z80ctc_device, trg2))
MCFG_VIDEO_SET_SCREEN("screen")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
RAM(config, RAM_TAG).set_default_size("64K");
diff --git a/src/mame/drivers/avigo.cpp b/src/mame/drivers/avigo.cpp
index 83ece668c99..b1aa1fbc27a 100644
--- a/src/mame/drivers/avigo.cpp
+++ b/src/mame/drivers/avigo.cpp
@@ -804,7 +804,7 @@ MACHINE_CONFIG_START(avigo_state::avigo)
ADDRESS_MAP_BANK(config, "bank0").set_map(&avigo_state::avigo_banked_map).set_options(ENDIANNESS_LITTLE, 8, 32, 0x4000);
ADDRESS_MAP_BANK(config, "bank1").set_map(&avigo_state::avigo_banked_map).set_options(ENDIANNESS_LITTLE, 8, 32, 0x4000);
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("nvram", avigo_state, nvram_init)
+ NVRAM(config, "nvram").set_custom_handler(FUNC(avigo_state::nvram_init));
// IRQ 1 is used for scan the pen and for cursor blinking
MCFG_TIMER_DRIVER_ADD_PERIODIC("scan_timer", avigo_state, avigo_scan_timer, attotime::from_hz(50))
diff --git a/src/mame/drivers/aztarac.cpp b/src/mame/drivers/aztarac.cpp
index 9c7e5d093ca..3c6e288487a 100644
--- a/src/mame/drivers/aztarac.cpp
+++ b/src/mame/drivers/aztarac.cpp
@@ -161,7 +161,7 @@ MACHINE_CONFIG_START(aztarac_state::aztarac)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(aztarac_state, snd_timed_irq, 100)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/bbusters.cpp b/src/mame/drivers/bbusters.cpp
index 59f94bcdb58..9af40a81467 100644
--- a/src/mame/drivers/bbusters.cpp
+++ b/src/mame/drivers/bbusters.cpp
@@ -652,7 +652,7 @@ MACHINE_CONFIG_START(bbusters_state::bbusters)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MCFG_DEVICE_IO_MAP(sound_portmap)
- MCFG_NVRAM_ADD_0FILL("eeprom")
+ NVRAM(config, "eeprom", nvram_device::DEFAULT_ALL_0);
/* video hardware */
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
diff --git a/src/mame/drivers/berzerk.cpp b/src/mame/drivers/berzerk.cpp
index 02329e21664..ee9608b722e 100644
--- a/src/mame/drivers/berzerk.cpp
+++ b/src/mame/drivers/berzerk.cpp
@@ -1127,7 +1127,7 @@ MACHINE_CONFIG_START(berzerk_state::berzerk)
MCFG_DEVICE_PROGRAM_MAP(berzerk_map)
MCFG_DEVICE_IO_MAP(berzerk_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("ls181_10c", TTL74181)
MCFG_DEVICE_ADD("ls181_12c", TTL74181)
diff --git a/src/mame/drivers/bfcobra.cpp b/src/mame/drivers/bfcobra.cpp
index f2ad5894251..039292fa44b 100644
--- a/src/mame/drivers/bfcobra.cpp
+++ b/src/mame/drivers/bfcobra.cpp
@@ -1648,7 +1648,7 @@ MACHINE_CONFIG_START(bfcobra_state::bfcobra)
MCFG_DEVICE_PROGRAM_MAP(m6809_prog_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(bfcobra_state, timer_irq, 1000)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* TODO */
diff --git a/src/mame/drivers/bfm_sc1.cpp b/src/mame/drivers/bfm_sc1.cpp
index 8e35f43eeca..968b7c55627 100644
--- a/src/mame/drivers/bfm_sc1.cpp
+++ b/src/mame/drivers/bfm_sc1.cpp
@@ -1088,7 +1088,7 @@ MACHINE_CONFIG_START(bfm_sc1_state::scorpion1)
MCFG_DEVICE_ADD("aysnd",AY8912, MASTER_CLOCK/4)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
config.set_default_layout(layout_sc1_vfd);
MCFG_DEVICE_ADD("reel0", REEL, STARPOINT_48STEP_REEL, 1, 3, 0x09, 4)
diff --git a/src/mame/drivers/bfm_sc2.cpp b/src/mame/drivers/bfm_sc2.cpp
index 06c6d9e2948..9f34389a0f2 100644
--- a/src/mame/drivers/bfm_sc2.cpp
+++ b/src/mame/drivers/bfm_sc2.cpp
@@ -2290,8 +2290,8 @@ MACHINE_CONFIG_START(bfm_sc2_vid_state::scorpion2_vid)
MCFG_BFMBD1_ADD("vfd0",0)
MCFG_BFMBD1_ADD("vfd1",1)
- MCFG_NVRAM_ADD_0FILL("nvram")
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("e2ram", bfm_sc2_vid_state, e2ram_init)
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
+ NVRAM(config, "e2ram").set_custom_handler(FUNC(bfm_sc2_vid_state::e2ram_init));
config.set_default_layout(layout_sc2_vid);
MCFG_BFM_ADDER2_ADD("adder2")
@@ -3767,8 +3767,8 @@ MACHINE_CONFIG_START(bfm_sc2_awp_state::scorpion2)
MCFG_DEVICE_ADD("ymsnd",YM2413, XTAL(3'579'545))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_NVRAM_ADD_0FILL("nvram")
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("e2ram", bfm_sc2_awp_state, e2ram_init)
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
+ NVRAM(config, "e2ram").set_custom_handler(FUNC(bfm_sc2_awp_state::e2ram_init));
/* video hardware */
config.set_default_layout(layout_sc2_vfd);
@@ -3824,8 +3824,8 @@ MACHINE_CONFIG_START(bfm_sc2_dmd_state::scorpion2_dm01)
MCFG_DEVICE_ADD("upd",UPD7759)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_NVRAM_ADD_0FILL("nvram")
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("e2ram", bfm_sc2_dmd_state, e2ram_init)
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
+ NVRAM(config, "e2ram").set_custom_handler(FUNC(bfm_sc2_dmd_state::e2ram_init));
/* video hardware */
config.set_default_layout(layout_sc2_dmd);
diff --git a/src/mame/drivers/bfm_sc4.cpp b/src/mame/drivers/bfm_sc4.cpp
index 70b869917b3..a2b76aa8766 100644
--- a/src/mame/drivers/bfm_sc4.cpp
+++ b/src/mame/drivers/bfm_sc4.cpp
@@ -902,7 +902,7 @@ MACHINE_CONFIG_START(sc4_state::sc4_common)
/* sound hardware */
SPEAKER(config, "mono").front_center();
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_DEVICE_ADD("duart68681", MC68681, 16000000/4) // ?? Mhz
MCFG_MC68681_SET_EXTERNAL_CLOCKS(XTAL(16'000'000)/2/8, XTAL(16'000'000)/2/16, XTAL(16'000'000)/2/16, XTAL(16'000'000)/2/8)
diff --git a/src/mame/drivers/bfmsys85.cpp b/src/mame/drivers/bfmsys85.cpp
index b7f554f2a08..9a3b6b8f2c8 100644
--- a/src/mame/drivers/bfmsys85.cpp
+++ b/src/mame/drivers/bfmsys85.cpp
@@ -408,7 +408,7 @@ MACHINE_CONFIG_START(bfmsys85_state::bfmsys85)
MCFG_DEVICE_ADD("aysnd",AY8912, MASTER_CLOCK/4) // add AY8912 soundchip
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
- MCFG_NVRAM_ADD_0FILL("nvram") // load/save nv RAM
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // load/save nv RAM
MCFG_DEVICE_ADD("reel0", REEL, STARPOINT_48STEP_REEL, 1, 3, 0x09, 4)
MCFG_STEPPER_OPTIC_CALLBACK(WRITELINE(*this, bfmsys85_state, reel0_optic_cb))
diff --git a/src/mame/drivers/big10.cpp b/src/mame/drivers/big10.cpp
index c1ae3224c45..3cda33f6458 100644
--- a/src/mame/drivers/big10.cpp
+++ b/src/mame/drivers/big10.cpp
@@ -237,7 +237,7 @@ MACHINE_CONFIG_START(big10_state::big10)
MCFG_DEVICE_PROGRAM_MAP(main_map)
MCFG_DEVICE_IO_MAP(main_io)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_V9938_ADD("v9938", "screen", VDP_MEM, MASTER_CLOCK)
diff --git a/src/mame/drivers/bingor.cpp b/src/mame/drivers/bingor.cpp
index 0bc751bc503..c6d1d54596c 100644
--- a/src/mame/drivers/bingor.cpp
+++ b/src/mame/drivers/bingor.cpp
@@ -701,7 +701,7 @@ MACHINE_CONFIG_START(bingor_state::bingor)
MCFG_DEVICE_ADD("pic", PIC16C57, 12000000) //?? Mhz
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_bingor)
- //MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/blitz68k.cpp b/src/mame/drivers/blitz68k.cpp
index 9a825e2abd6..f25f1272a96 100644
--- a/src/mame/drivers/blitz68k.cpp
+++ b/src/mame/drivers/blitz68k.cpp
@@ -1722,7 +1722,7 @@ MACHINE_CONFIG_START(blitz68k_state::ilpag)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(blitz68k_state, screen_update_blitz68k)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_PALETTE_ADD(m_palette, 0x100)
@@ -1784,7 +1784,7 @@ MACHINE_CONFIG_START(blitz68k_state::cjffruit)
// MC68HC705C8P (Sound MCU)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -1816,7 +1816,7 @@ MACHINE_CONFIG_START(blitz68k_state::bankrob)
// MC68HC705C8P (MCU2)
-// MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -1846,7 +1846,7 @@ MACHINE_CONFIG_START(blitz68k_state::bankroba)
// MC68HC705C8P (MCU)
-// MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -1875,7 +1875,7 @@ MACHINE_CONFIG_START(blitz68k_state::deucesw2)
// MC68HC705C8P (MCU)
-// MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -1906,7 +1906,7 @@ MACHINE_CONFIG_START(blitz68k_state::dualgame)
// MC68HC705C8P (MCU2)
-// MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -1935,7 +1935,7 @@ MACHINE_CONFIG_START(blitz68k_state::hermit)
// MC68HC705C8P (MCU)
-// MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -1969,7 +1969,7 @@ MACHINE_CONFIG_START(blitz68k_state::maxidbl)
// MC68HC705C8P (MCU3)
-// MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/bmcpokr.cpp b/src/mame/drivers/bmcpokr.cpp
index fcd3c212560..ff27925690c 100644
--- a/src/mame/drivers/bmcpokr.cpp
+++ b/src/mame/drivers/bmcpokr.cpp
@@ -826,7 +826,7 @@ MACHINE_CONFIG_START(bmcpokr_state::bmcpokr)
MCFG_RAMDAC_ADD("ramdac", ramdac_map, "palette")
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_bmcpokr)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(10), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW) // hopper stuck low if too slow
diff --git a/src/mame/drivers/btoads.cpp b/src/mame/drivers/btoads.cpp
index 368a6945d9e..d47af19c742 100644
--- a/src/mame/drivers/btoads.cpp
+++ b/src/mame/drivers/btoads.cpp
@@ -319,7 +319,7 @@ MACHINE_CONFIG_START(btoads_state::btoads)
MCFG_DEVICE_IO_MAP(sound_io_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(btoads_state, irq0_line_assert, 183)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* video hardware */
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
diff --git a/src/mame/drivers/by17.cpp b/src/mame/drivers/by17.cpp
index fc5f683052e..903a49048f2 100644
--- a/src/mame/drivers/by17.cpp
+++ b/src/mame/drivers/by17.cpp
@@ -998,7 +998,7 @@ MACHINE_CONFIG_START(by17_state::by17)
MCFG_DEVICE_ADD("maincpu", M6800, 530000) // No xtal, just 2 chips forming a multivibrator oscillator around 530KHz
MCFG_DEVICE_PROGRAM_MAP(by17_map)
- MCFG_NVRAM_ADD_0FILL("nvram") // 'F' filled causes Credit Display to be blank on first startup
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // 'F' filled causes Credit Display to be blank on first startup
/* Video */
config.set_default_layout(layout_by17);
diff --git a/src/mame/drivers/by35.cpp b/src/mame/drivers/by35.cpp
index bdcbb3630bc..1584c91b2b5 100644
--- a/src/mame/drivers/by35.cpp
+++ b/src/mame/drivers/by35.cpp
@@ -1097,7 +1097,7 @@ MACHINE_CONFIG_START(by35_state::by35)
MCFG_DEVICE_ADD("maincpu", M6800, 530000) // No xtal, just 2 chips forming a multivibrator oscillator around 530KHz
MCFG_DEVICE_PROGRAM_MAP(by35_map)
- MCFG_NVRAM_ADD_0FILL("nvram") // 'F' filled causes Credit Display to be blank on first startup
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // 'F' filled causes Credit Display to be blank on first startup
/* Video */
config.set_default_layout(layout_by35);
diff --git a/src/mame/drivers/by6803.cpp b/src/mame/drivers/by6803.cpp
index c277bcac59f..ba3cabc4e8b 100644
--- a/src/mame/drivers/by6803.cpp
+++ b/src/mame/drivers/by6803.cpp
@@ -384,7 +384,7 @@ MACHINE_CONFIG_START(by6803_state::by6803)
MCFG_DEVICE_PROGRAM_MAP(by6803_map)
MCFG_DEVICE_IO_MAP(by6803_io)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
//config.set_default_layout(layout_by6803);
diff --git a/src/mame/drivers/byvid.cpp b/src/mame/drivers/byvid.cpp
index 99b11d18936..6e1ed77d76e 100644
--- a/src/mame/drivers/byvid.cpp
+++ b/src/mame/drivers/byvid.cpp
@@ -765,7 +765,7 @@ MACHINE_CONFIG_START(by133_state::babypac)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MCFG_DEVICE_IO_MAP(sound_portmap)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
PIA6821(config, m_pia_u7, 0);
m_pia_u7->readpa_handler().set(FUNC(by133_state::u7_a_r));
diff --git a/src/mame/drivers/calcune.cpp b/src/mame/drivers/calcune.cpp
index 92712f280b8..d2a544c0fbd 100644
--- a/src/mame/drivers/calcune.cpp
+++ b/src/mame/drivers/calcune.cpp
@@ -295,7 +295,7 @@ MACHINE_CONFIG_START(calcune_state::calcune)
MCFG_PALETTE_ADD("palette", 0xc0*2)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* sound hardware */
SPEAKER(config, "lspeaker").front_left();
diff --git a/src/mame/drivers/calomega.cpp b/src/mame/drivers/calomega.cpp
index c168f362fde..4b5ff4644ea 100644
--- a/src/mame/drivers/calomega.cpp
+++ b/src/mame/drivers/calomega.cpp
@@ -2576,7 +2576,7 @@ MACHINE_CONFIG_START(calomega_state::sys903)
MCFG_DEVICE_PROGRAM_MAP(sys903_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", calomega_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
PIA6821(config, m_pia[0], 0);
m_pia[0]->readpa_handler().set(FUNC(calomega_state::s903_mux_port_r));
diff --git a/src/mame/drivers/capbowl.cpp b/src/mame/drivers/capbowl.cpp
index bd8feea3aa8..b831a8df3ea 100644
--- a/src/mame/drivers/capbowl.cpp
+++ b/src/mame/drivers/capbowl.cpp
@@ -330,7 +330,7 @@ MACHINE_CONFIG_START(capbowl_state::capbowl)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
// MCFG_WATCHDOG_TIME_INIT(PERIOD_OF_555_ASTABLE(100000.0, 100000.0, 0.1e-6) * 15.5) // TODO
- MCFG_NVRAM_ADD_RANDOM_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_RANDOM);
MCFG_TICKET_DISPENSER_ADD("ticket", attotime::from_msec(100), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW)
diff --git a/src/mame/drivers/caswin.cpp b/src/mame/drivers/caswin.cpp
index bd16857a7cc..23202452b26 100644
--- a/src/mame/drivers/caswin.cpp
+++ b/src/mame/drivers/caswin.cpp
@@ -350,7 +350,7 @@ MACHINE_CONFIG_START(caswin_state::vvillage)
MCFG_SCREEN_UPDATE_DRIVER(caswin_state, screen_update_vvillage)
MCFG_SCREEN_PALETTE("palette")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_vvillage)
MCFG_PALETTE_ADD("palette", 0x40)
diff --git a/src/mame/drivers/cat.cpp b/src/mame/drivers/cat.cpp
index 52b58dc4ad3..a2bc4f38a6c 100644
--- a/src/mame/drivers/cat.cpp
+++ b/src/mame/drivers/cat.cpp
@@ -1088,7 +1088,7 @@ MACHINE_CONFIG_START(cat_state::cat)
SPEAKER(config, "mono").front_center();
SPEAKER_SOUND(config, "speaker").add_route(ALL_OUTPUTS, "mono", 1.00);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
ROM_START( cat )
diff --git a/src/mame/drivers/cave.cpp b/src/mame/drivers/cave.cpp
index b2cf78c0d05..6483c0ebc4c 100644
--- a/src/mame/drivers/cave.cpp
+++ b/src/mame/drivers/cave.cpp
@@ -2550,7 +2550,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_START(cave_state::pacslot)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000, 28_MHz_XTAL / 2)
@@ -2804,7 +2804,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_START(cave_state::tekkencw)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000, 28_MHz_XTAL / 2)
@@ -2858,7 +2858,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_START(cave_state::tjumpman)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000, 28_MHz_XTAL / 2)
diff --git a/src/mame/drivers/cc40.cpp b/src/mame/drivers/cc40.cpp
index 4f403882068..b618b6f0550 100644
--- a/src/mame/drivers/cc40.cpp
+++ b/src/mame/drivers/cc40.cpp
@@ -590,9 +590,9 @@ MACHINE_CONFIG_START(cc40_state::cc40)
MCFG_TMS7000_IN_PORTA_CB(READ8(*this, cc40_state, keyboard_r))
MCFG_TMS7000_OUT_PORTB_CB(WRITE8(*this, cc40_state, keyboard_w))
- MCFG_NVRAM_ADD_0FILL("sysram.0")
- MCFG_NVRAM_ADD_0FILL("sysram.1")
- MCFG_NVRAM_ADD_0FILL("sysram.2")
+ NVRAM(config, "sysram.0", nvram_device::DEFAULT_ALL_0);
+ NVRAM(config, "sysram.1", nvram_device::DEFAULT_ALL_0);
+ NVRAM(config, "sysram.2", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", LCD)
diff --git a/src/mame/drivers/cdc721.cpp b/src/mame/drivers/cdc721.cpp
index c3c5419b201..0548bb21756 100644
--- a/src/mame/drivers/cdc721.cpp
+++ b/src/mame/drivers/cdc721.cpp
@@ -312,7 +312,7 @@ MACHINE_CONFIG_START(cdc721_state::cdc721)
ADDRESS_MAP_BANK(config, "block8").set_map(&cdc721_state::block8_map).set_options(ENDIANNESS_LITTLE, 8, 32, 0x4000);
ADDRESS_MAP_BANK(config, "blockc").set_map(&cdc721_state::blockc_map).set_options(ENDIANNESS_LITTLE, 8, 32, 0x4000);
- MCFG_NVRAM_ADD_0FILL("nvram") // MCM51L01C45 (256x4) + battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // MCM51L01C45 (256x4) + battery
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/cesclass.cpp b/src/mame/drivers/cesclass.cpp
index 98c638a197b..93609c3f34b 100644
--- a/src/mame/drivers/cesclass.cpp
+++ b/src/mame/drivers/cesclass.cpp
@@ -257,7 +257,7 @@ MACHINE_CONFIG_START(cesclassic_state::cesclassic)
MCFG_DEVICE_VBLANK_INT_DRIVER("l_lcd", cesclassic_state, irq2_line_assert) // TODO: unknown sources
MCFG_DEVICE_PERIODIC_INT_DRIVER(cesclassic_state, irq3_line_assert, 60*8)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("l_lcd", LCD)
diff --git a/src/mame/drivers/champbwl.cpp b/src/mame/drivers/champbwl.cpp
index c9436b5c0d5..c8fca73d700 100644
--- a/src/mame/drivers/champbwl.cpp
+++ b/src/mame/drivers/champbwl.cpp
@@ -497,7 +497,7 @@ MACHINE_CONFIG_START(champbwl_state::champbwl)
MCFG_DEVICE_PROGRAM_MAP(champbwl_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", champbwl_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_MACHINE_START_OVERRIDE(champbwl_state,champbwl)
MCFG_MACHINE_RESET_OVERRIDE(champbwl_state,champbwl)
@@ -563,7 +563,7 @@ MACHINE_CONFIG_START(champbwl_state::doraemon)
MCFG_DEVICE_PROGRAM_MAP(doraemon_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", champbwl_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("spritegen", SETA001_SPRITE, 0)
MCFG_SETA001_SPRITE_GFXDECODE("gfxdecode")
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(2000), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_LOW )
diff --git a/src/mame/drivers/chinsan.cpp b/src/mame/drivers/chinsan.cpp
index fa5d01bc0b3..cb533c2893b 100644
--- a/src/mame/drivers/chinsan.cpp
+++ b/src/mame/drivers/chinsan.cpp
@@ -513,7 +513,7 @@ MACHINE_CONFIG_START(chinsan_state::chinsan)
MCFG_DEVICE_OPCODES_MAP(decrypted_opcodes_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", chinsan_state, vblank_int)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("ppi", I8255A, 0)
MCFG_I8255_OUT_PORTA_CB(WRITE8(*this, chinsan_state, input_select_w))
diff --git a/src/mame/drivers/chsuper.cpp b/src/mame/drivers/chsuper.cpp
index 5e225f995ef..28e8b6aa44f 100644
--- a/src/mame/drivers/chsuper.cpp
+++ b/src/mame/drivers/chsuper.cpp
@@ -381,7 +381,7 @@ MACHINE_CONFIG_START(chsuper_state::chsuper)
MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 0, 30*8-1)
MCFG_SCREEN_PALETTE("palette")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_chsuper)
MCFG_PALETTE_ADD("palette", 0x100)
diff --git a/src/mame/drivers/cidelsa.cpp b/src/mame/drivers/cidelsa.cpp
index ebf94a26bd8..d5aed3fcb4e 100644
--- a/src/mame/drivers/cidelsa.cpp
+++ b/src/mame/drivers/cidelsa.cpp
@@ -409,7 +409,7 @@ MACHINE_CONFIG_START(cidelsa_state::destryer)
cpu.clear_cb().set(FUNC(cidelsa_state::clear_r));
cpu.q_cb().set(FUNC(cidelsa_state::q_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* sound and video hardware */
destryer_video(config);
@@ -424,7 +424,7 @@ MACHINE_CONFIG_START(cidelsa_state::destryera)
cpu.clear_cb().set(FUNC(cidelsa_state::clear_r));
cpu.q_cb().set(FUNC(cidelsa_state::q_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* sound and video hardware */
destryer_video(config);
@@ -440,7 +440,7 @@ MACHINE_CONFIG_START(cidelsa_state::altair)
cpu.q_cb().set(FUNC(cidelsa_state::q_w));
cpu.tpb_cb().set("ic26", FUNC(cdp1852_device::clock_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* input/output hardware */
cdp1852_device &ic23(CDP1852(config, "ic23")); // clock is really tied to CDP1869 CMSEL (pin 37)
@@ -473,7 +473,7 @@ MACHINE_CONFIG_START(draco_state::draco)
cpu.q_cb().set(FUNC(draco_state::q_w));
cpu.tpb_cb().set("ic32", FUNC(cdp1852_device::clock_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD(COP402N_TAG, COP402, DRACO_SND_CHR1)
MCFG_DEVICE_PROGRAM_MAP(draco_sound_map)
diff --git a/src/mame/drivers/cischeat.cpp b/src/mame/drivers/cischeat.cpp
index 00aba7bc985..4e3595d3e32 100644
--- a/src/mame/drivers/cischeat.cpp
+++ b/src/mame/drivers/cischeat.cpp
@@ -2234,7 +2234,7 @@ MACHINE_CONFIG_START(cischeat_state::captflag)
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(2000), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH )
MCFG_WATCHDOG_ADD("watchdog")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/clcd.cpp b/src/mame/drivers/clcd.cpp
index 4ce5135282d..9d702084db6 100644
--- a/src/mame/drivers/clcd.cpp
+++ b/src/mame/drivers/clcd.cpp
@@ -729,7 +729,7 @@ MACHINE_CONFIG_START(clcd_state::clcd)
RAM(config, "ram").set_default_size("128K").set_extra_options("32K,64K").set_default_value(0);
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("nvram", clcd_state, nvram_init)
+ NVRAM(config, "nvram").set_custom_handler(FUNC(clcd_state::nvram_init));
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cliffhgr.cpp b/src/mame/drivers/cliffhgr.cpp
index fe386fe2ac3..69fcd3279c8 100644
--- a/src/mame/drivers/cliffhgr.cpp
+++ b/src/mame/drivers/cliffhgr.cpp
@@ -695,7 +695,7 @@ MACHINE_CONFIG_START(cliffhgr_state::cliffhgr)
MCFG_DEVICE_IO_MAP(mainport)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_LASERDISC_PR8210_ADD("laserdisc")
MCFG_LASERDISC_OVERLAY_DEVICE(tms9928a_device::TOTAL_HORZ, tms9928a_device::TOTAL_VERT_NTSC, "tms9928a", tms9928a_device, screen_update)
diff --git a/src/mame/drivers/cloak.cpp b/src/mame/drivers/cloak.cpp
index 66cb8278daf..08a58d805a7 100644
--- a/src/mame/drivers/cloak.cpp
+++ b/src/mame/drivers/cloak.cpp
@@ -326,7 +326,7 @@ MACHINE_CONFIG_START(cloak_state::cloak)
MCFG_QUANTUM_TIME(attotime::from_hz(1000))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
ls259_device &outlatch(LS259(config, "outlatch")); // 10B
outlatch.q_out_cb<0>().set(FUNC(cloak_state::coin_counter_r_w));
diff --git a/src/mame/drivers/clpoker.cpp b/src/mame/drivers/clpoker.cpp
index 3ca09e57082..a785e9731d7 100644
--- a/src/mame/drivers/clpoker.cpp
+++ b/src/mame/drivers/clpoker.cpp
@@ -259,7 +259,7 @@ MACHINE_CONFIG_START(clpoker_state::clpoker)
MCFG_DEVICE_PROGRAM_MAP(prg_map)
MCFG_DEVICE_IO_MAP(io_map)
- MCFG_NVRAM_ADD_0FILL("nvram") // HY6116ALP-12
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // HY6116ALP-12
MCFG_DEVICE_ADD("ppi_outputs", I8255, 0) // M5L8255AP-5
MCFG_I8255_OUT_PORTA_CB(WRITE8(*this, clpoker_state, output_a_w))
diff --git a/src/mame/drivers/coinmstr.cpp b/src/mame/drivers/coinmstr.cpp
index 6ab47125c63..d3ba04f7adf 100644
--- a/src/mame/drivers/coinmstr.cpp
+++ b/src/mame/drivers/coinmstr.cpp
@@ -1325,7 +1325,7 @@ MACHINE_CONFIG_START(coinmstr_state::jpcoin)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(jpcoin_map)
MCFG_DEVICE_IO_MAP(jpcoin_io_map)
-// MCFG_NVRAM_ADD_0FILL("attr_ram3")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
/*
diff --git a/src/mame/drivers/coinmvga.cpp b/src/mame/drivers/coinmvga.cpp
index caefc109786..3a6f6cccf5c 100644
--- a/src/mame/drivers/coinmvga.cpp
+++ b/src/mame/drivers/coinmvga.cpp
@@ -644,7 +644,7 @@ MACHINE_CONFIG_START(coinmvga_state::coinmvga)
MCFG_DEVICE_IO_MAP(coinmvga_io_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", coinmvga_state, vblank_irq) /* wrong, fix me */
-// MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/coolpool.cpp b/src/mame/drivers/coolpool.cpp
index 3a612ccd761..14a5efa1a9c 100644
--- a/src/mame/drivers/coolpool.cpp
+++ b/src/mame/drivers/coolpool.cpp
@@ -735,7 +735,7 @@ MACHINE_CONFIG_START(coolpool_state::amerdart)
MCFG_GENERIC_LATCH_DATA_PENDING_CB(INPUTLINE("maincpu", 1))
MCFG_MACHINE_RESET_OVERRIDE(coolpool_state,amerdart)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TIMER_DRIVER_ADD(m_nvram_timer, coolpool_state, nvram_write_timeout)
@@ -780,7 +780,7 @@ MACHINE_CONFIG_START(coolpool_state::coolpool)
MCFG_GENERIC_LATCH_DATA_PENDING_CB(INPUTLINE("maincpu", 1))
MCFG_MACHINE_RESET_OVERRIDE(coolpool_state,coolpool)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TIMER_DRIVER_ADD(m_nvram_timer, coolpool_state, nvram_write_timeout)
diff --git a/src/mame/drivers/coolridr.cpp b/src/mame/drivers/coolridr.cpp
index 1d46062f9a2..49721853676 100644
--- a/src/mame/drivers/coolridr.cpp
+++ b/src/mame/drivers/coolridr.cpp
@@ -3288,7 +3288,7 @@ MACHINE_CONFIG_START(coolridr_state::coolridr)
MCFG_DEVICE_PROGRAM_MAP(coolridr_submap)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer2", coolridr_state, system_h1_sub, "screen", 0, 1)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
sega_315_5649_device &io(SEGA_315_5649(config, "io", 0));
io.out_pb_callback().set(FUNC(coolridr_state::lamps_w));
diff --git a/src/mame/drivers/corona.cpp b/src/mame/drivers/corona.cpp
index e907b7cd7f1..f917068face 100644
--- a/src/mame/drivers/corona.cpp
+++ b/src/mame/drivers/corona.cpp
@@ -1399,7 +1399,7 @@ MACHINE_CONFIG_START(corona_state::winner81)
MCFG_DEVICE_IO_MAP(winner81_sound_cpu_io_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(corona_state, nmi_line_pulse, 244) /* 244 Hz (1MHz/16/16/16) */
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -1433,7 +1433,7 @@ MACHINE_CONFIG_START(corona_state::winner82)
MCFG_DEVICE_PROGRAM_MAP(winner82_sound_map) /* IM1 instead of NMI */
MCFG_DEVICE_IO_MAP(winner82_sound_cpu_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -1468,7 +1468,7 @@ MACHINE_CONFIG_START(corona_state::re800)
MCFG_DEVICE_IO_MAP(re800_sound_cpu_io_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(corona_state, nmi_line_pulse, 244) /* 244 Hz (1MHz/16/16/16) */
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -1502,7 +1502,7 @@ MACHINE_CONFIG_START(corona_state::rcirulet)
MCFG_DEVICE_PROGRAM_MAP(winner82_sound_map) /* IM1 instead of NMI */
MCFG_DEVICE_IO_MAP(winner82_sound_cpu_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -1537,7 +1537,7 @@ MACHINE_CONFIG_START(corona_state::luckyrlt)
MCFG_DEVICE_IO_MAP(luckyrlt_sound_cpu_io_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(corona_state, nmi_line_pulse, 244) /* 244 Hz (1MHz/16/16/16) */
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/cps3.cpp b/src/mame/drivers/cps3.cpp
index 78b470f1aab..c5a5df501d1 100644
--- a/src/mame/drivers/cps3.cpp
+++ b/src/mame/drivers/cps3.cpp
@@ -2545,7 +2545,7 @@ MACHINE_CONFIG_START(cps3_state::cps3)
42.9545MHz / 15.4445kHz = 2781.217 / 6 = 463.536 -> unlikely
*/
- MCFG_NVRAM_ADD_0FILL("eeprom")
+ NVRAM(config, "eeprom", nvram_device::DEFAULT_ALL_0);
MCFG_PALETTE_ADD("palette", 0x10000) // actually 0x20000 ...
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfxdecode_device::empty)
diff --git a/src/mame/drivers/crystal.cpp b/src/mame/drivers/crystal.cpp
index c0819105e1d..beafc934ced 100644
--- a/src/mame/drivers/crystal.cpp
+++ b/src/mame/drivers/crystal.cpp
@@ -1493,7 +1493,7 @@ MACHINE_CONFIG_START(crystal_state::crystal)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", crystal_state, crystal_interrupt)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(crystal_state, icallback)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/csplayh5.cpp b/src/mame/drivers/csplayh5.cpp
index 6fa587b4dc6..b5c43f9c7f5 100644
--- a/src/mame/drivers/csplayh5.cpp
+++ b/src/mame/drivers/csplayh5.cpp
@@ -382,7 +382,7 @@ MACHINE_CONFIG_START(csplayh5_state::csplayh5)
ide.irq_handler().set(FUNC(csplayh5_state::ide_irq));
#endif
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_V9958_ADD("v9958", "screen", 0x20000, XTAL(21'477'272)) // typical 9958 clock, not verified
diff --git a/src/mame/drivers/cubeqst.cpp b/src/mame/drivers/cubeqst.cpp
index cfa8bfef50f..112537acfbd 100644
--- a/src/mame/drivers/cubeqst.cpp
+++ b/src/mame/drivers/cubeqst.cpp
@@ -542,7 +542,7 @@ MACHINE_CONFIG_START(cubeqst_state::cubeqst)
MCFG_QUANTUM_TIME(attotime::from_hz(48000))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_LASERDISC_SIMUTREK_ADD("laserdisc")
MCFG_LASERDISC_OVERLAY_DRIVER(CUBEQST_HBLANK, CUBEQST_VCOUNT, cubeqst_state, screen_update_cubeqst)
diff --git a/src/mame/drivers/cybiko.cpp b/src/mame/drivers/cybiko.cpp
index a8ac76d1640..fe538a8f76c 100644
--- a/src/mame/drivers/cybiko.cpp
+++ b/src/mame/drivers/cybiko.cpp
@@ -418,7 +418,7 @@ MACHINE_CONFIG_START(cybiko_state::cybikov1)
AT45DB041(config, m_flash1, 0);
m_flash1->so_callback().set("maincpu:sci1", FUNC(h8_sci_device::rx_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* internal ram */
RAM(config, m_ram).set_default_size("512K").set_extra_options("1M");
diff --git a/src/mame/drivers/d9final.cpp b/src/mame/drivers/d9final.cpp
index e0d063fb1e7..d1c766bdc8f 100644
--- a/src/mame/drivers/d9final.cpp
+++ b/src/mame/drivers/d9final.cpp
@@ -308,7 +308,7 @@ MACHINE_CONFIG_START(d9final_state::d9final)
MCFG_DEVICE_IO_MAP(d9final_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", d9final_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram") // Sharp LH5116D-10 + battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // Sharp LH5116D-10 + battery
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/dblcrown.cpp b/src/mame/drivers/dblcrown.cpp
index 35396d74199..d3441120833 100644
--- a/src/mame/drivers/dblcrown.cpp
+++ b/src/mame/drivers/dblcrown.cpp
@@ -624,7 +624,7 @@ MACHINE_CONFIG_START(dblcrown_state::dblcrown)
MCFG_PALETTE_ADD("palette", 0x100)
MCFG_PALETTE_INIT_OWNER(dblcrown_state, dblcrown)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("ppi", I8255, 0)
MCFG_I8255_OUT_PORTA_CB(WRITE8(*this, dblcrown_state, lamps_w))
diff --git a/src/mame/drivers/ddenlovr.cpp b/src/mame/drivers/ddenlovr.cpp
index c3e4fd683c3..da56f1b50e5 100644
--- a/src/mame/drivers/ddenlovr.cpp
+++ b/src/mame/drivers/ddenlovr.cpp
@@ -4370,7 +4370,7 @@ MACHINE_CONFIG_START(ddenlovr_state::htengoku)
MCFG_MACHINE_START_OVERRIDE(ddenlovr_state,dynax)
MCFG_MACHINE_RESET_OVERRIDE(ddenlovr_state,dynax)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
RST_POS_BUFFER(config, "mainirq", 0).int_callback().set_inputline(m_maincpu, 0);
@@ -9827,7 +9827,7 @@ MACHINE_CONFIG_START(ddenlovr_state::ultrchmp)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(ultrchmp_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_VIDEO_START_OVERRIDE(ddenlovr_state,mjflove)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/dgpix.cpp b/src/mame/drivers/dgpix.cpp
index 3ccaf4bdc0c..a8ea3a45588 100644
--- a/src/mame/drivers/dgpix.cpp
+++ b/src/mame/drivers/dgpix.cpp
@@ -440,7 +440,7 @@ MACHINE_CONFIG_START(dgpix_state::dgpix)
running at 16.9MHz
*/
- MCFG_NVRAM_ADD_NO_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_NONE);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/dmndrby.cpp b/src/mame/drivers/dmndrby.cpp
index eaae8fae413..51d1fe111c8 100644
--- a/src/mame/drivers/dmndrby.cpp
+++ b/src/mame/drivers/dmndrby.cpp
@@ -542,7 +542,7 @@ MACHINE_CONFIG_START(dmndrby_state::dderby)
MCFG_DEVICE_PROGRAM_MAP(dderby_sound_map)
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/drw80pkr.cpp b/src/mame/drivers/drw80pkr.cpp
index fe5cea3b91e..2a692930fec 100644
--- a/src/mame/drivers/drw80pkr.cpp
+++ b/src/mame/drivers/drw80pkr.cpp
@@ -486,7 +486,7 @@ MACHINE_CONFIG_START(drw80pkr_state::drw80pkr)
MCFG_PALETTE_ADD("palette", 16*16)
MCFG_PALETTE_INIT_OWNER(drw80pkr_state, drw80pkr)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// sound hardware
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/dynadice.cpp b/src/mame/drivers/dynadice.cpp
index b63d9d9102e..6e52b83c187 100644
--- a/src/mame/drivers/dynadice.cpp
+++ b/src/mame/drivers/dynadice.cpp
@@ -271,7 +271,7 @@ MACHINE_CONFIG_START(dynadice_state::dynadice)
MCFG_DEVICE_IO_MAP(dynadice_sound_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/dynax.cpp b/src/mame/drivers/dynax.cpp
index 2479430bde4..6b3a3a748b5 100644
--- a/src/mame/drivers/dynax.cpp
+++ b/src/mame/drivers/dynax.cpp
@@ -4203,7 +4203,7 @@ MACHINE_CONFIG_START(dynax_state::cdracula)
MCFG_MACHINE_START_OVERRIDE(dynax_state,dynax)
MCFG_MACHINE_RESET_OVERRIDE(dynax_state,dynax)
-// MCFG_NVRAM_ADD_0FILL("nvram") // no battery
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // no battery
RST_POS_BUFFER(config, m_mainirq, 0).int_callback().set_inputline(m_maincpu, 0);
@@ -4256,7 +4256,7 @@ MACHINE_CONFIG_START(dynax_state::hanamai)
MCFG_MACHINE_START_OVERRIDE(dynax_state,hanamai)
MCFG_MACHINE_RESET_OVERRIDE(dynax_state,dynax)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
RST_POS_BUFFER(config, m_mainirq, 0).int_callback().set_inputline(m_maincpu, 0);
@@ -4330,7 +4330,7 @@ MACHINE_CONFIG_START(dynax_state::hnoridur)
ADDRESS_MAP_BANK(config, m_bankdev).set_map(&dynax_state::hnoridur_banked_map).set_data_width(8).set_addr_width(20).set_stride(0x8000);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
RST_POS_BUFFER(config, m_mainirq, 0).int_callback().set_inputline(m_maincpu, 0);
@@ -4398,7 +4398,7 @@ MACHINE_CONFIG_START(dynax_state::hjingi)
ADDRESS_MAP_BANK(config, m_bankdev).set_map(&dynax_state::hjingi_banked_map).set_data_width(8).set_addr_width(20).set_stride(0x8000);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
RST_POS_BUFFER(config, m_mainirq, 0).int_callback().set_inputline(m_maincpu, 0);
@@ -4466,7 +4466,7 @@ MACHINE_CONFIG_START(dynax_state::sprtmtch)
MCFG_MACHINE_START_OVERRIDE(dynax_state,hanamai)
MCFG_MACHINE_RESET_OVERRIDE(dynax_state,dynax)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
RST_POS_BUFFER(config, m_mainirq, 0).int_callback().set_inputline(m_maincpu, 0);
@@ -4532,7 +4532,7 @@ MACHINE_CONFIG_START(dynax_state::mjfriday)
MCFG_MACHINE_START_OVERRIDE(dynax_state,hanamai)
MCFG_MACHINE_RESET_OVERRIDE(dynax_state,dynax)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
LS259(config, m_mainlatch); // IC15
m_mainlatch->q_out_cb<0>().set(FUNC(dynax_state::mjdialq2_blit_dest1_w));
@@ -4601,8 +4601,6 @@ MACHINE_CONFIG_START(dynax_state::yarunara)
MCFG_DEVICE_MODIFY("bankdev")
MCFG_DEVICE_PROGRAM_MAP(yarunara_banked_map)
- MCFG_NVRAM_REPLACE_0FILL("nvram")
-
MCFG_DEVICE_REMOVE("outlatch") // ???
m_screen->set_visarea(0, 336-1, 8, 256-1-8-1);
@@ -4689,7 +4687,7 @@ MACHINE_CONFIG_START(dynax_state::jantouki)
MCFG_MACHINE_START_OVERRIDE(dynax_state,jantouki)
MCFG_MACHINE_RESET_OVERRIDE(dynax_state,dynax)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
RST_POS_BUFFER(config, m_mainirq, 0).int_callback().set_inputline(m_maincpu, 0);
@@ -4873,7 +4871,7 @@ MACHINE_CONFIG_START(dynax_state::tenkai)
MCFG_MACHINE_START_OVERRIDE(dynax_state,dynax)
MCFG_MACHINE_RESET_OVERRIDE(dynax_state,dynax)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
LS259(config, m_mainlatch); // 10C on Ougon no Hai
m_mainlatch->q_out_cb<0>().set(FUNC(dynax_state::flipscreen_w)).invert();
@@ -4947,7 +4945,7 @@ MACHINE_CONFIG_START(dynax_state::gekisha)
MCFG_MACHINE_START_OVERRIDE(dynax_state,dynax)
MCFG_MACHINE_RESET_OVERRIDE(dynax_state,dynax)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
LS259(config, m_mainlatch);
m_mainlatch->q_out_cb<0>().set(FUNC(dynax_state::mjdialq2_blit_dest1_w));
diff --git a/src/mame/drivers/eacc.cpp b/src/mame/drivers/eacc.cpp
index 0877ee7ab54..54f40da22c3 100644
--- a/src/mame/drivers/eacc.cpp
+++ b/src/mame/drivers/eacc.cpp
@@ -263,7 +263,7 @@ MACHINE_CONFIG_START(eacc_state::eacc)
m_pia->irqa_handler().set_inputline("maincpu", M6802_IRQ_LINE);
m_pia->irqb_handler().set_inputline("maincpu", M6802_IRQ_LINE);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TIMER_DRIVER_ADD_PERIODIC("eacc_nmi", eacc_state, eacc_nmi, attotime::from_hz(600))
MCFG_TIMER_DRIVER_ADD_PERIODIC("eacc_cb1", eacc_state, eacc_cb1, attotime::from_hz(30))
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/epos.cpp b/src/mame/drivers/epos.cpp
index 18ff8bceced..355a24ad907 100644
--- a/src/mame/drivers/epos.cpp
+++ b/src/mame/drivers/epos.cpp
@@ -497,7 +497,7 @@ MACHINE_CONFIG_START(epos_state::dealer) /* EPOS TRISTAR 9000 PCB */
MCFG_I8255_IN_PORTA_CB(READ8(*this, epos_state, i8255_porta_r))
MCFG_I8255_OUT_PORTC_CB(WRITE8(*this, epos_state, i8255_portc_w))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_MACHINE_START_OVERRIDE(epos_state,dealer)
diff --git a/src/mame/drivers/equites.cpp b/src/mame/drivers/equites.cpp
index 07878546874..748a57bd5e7 100644
--- a/src/mame/drivers/equites.cpp
+++ b/src/mame/drivers/equites.cpp
@@ -1200,7 +1200,7 @@ MACHINE_CONFIG_START(gekisou_state::gekisou)
MCFG_DEVICE_PROGRAM_MAP(mcu_map)
// gekisou has battery-backed RAM to store settings
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/esh.cpp b/src/mame/drivers/esh.cpp
index a56b7911209..3205ce6a38a 100644
--- a/src/mame/drivers/esh.cpp
+++ b/src/mame/drivers/esh.cpp
@@ -367,7 +367,7 @@ MACHINE_CONFIG_START(esh_state::esh)
MCFG_DEVICE_IO_MAP(z80_0_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", esh_state, vblank_callback_esh)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_LASERDISC_LDV1000_ADD("laserdisc")
MCFG_LASERDISC_LDV1000_COMMAND_STROBE_CB(WRITELINE(*this, esh_state, ld_command_strobe_cb))
diff --git a/src/mame/drivers/esripsys.cpp b/src/mame/drivers/esripsys.cpp
index 45566c7a26d..792e963bbce 100644
--- a/src/mame/drivers/esripsys.cpp
+++ b/src/mame/drivers/esripsys.cpp
@@ -685,7 +685,7 @@ MACHINE_CONFIG_START(esripsys_state::esripsys)
MCFG_DEVICE_ADD("sound_cpu", MC6809E, XTAL(8'000'000) / 4)
MCFG_DEVICE_PROGRAM_MAP(sound_cpu_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/ettrivia.cpp b/src/mame/drivers/ettrivia.cpp
index 38a778da095..2caa8c5b747 100644
--- a/src/mame/drivers/ettrivia.cpp
+++ b/src/mame/drivers/ettrivia.cpp
@@ -303,7 +303,7 @@ MACHINE_CONFIG_START(ettrivia_state::ettrivia)
MCFG_DEVICE_IO_MAP(io_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", ettrivia_state, ettrivia_interrupt)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/europc.cpp b/src/mame/drivers/europc.cpp
index 000ff099c00..1ac51ff2853 100644
--- a/src/mame/drivers/europc.cpp
+++ b/src/mame/drivers/europc.cpp
@@ -541,7 +541,7 @@ MACHINE_CONFIG_START(europc_pc_state::europc)
MCFG_SLOT_FIXED(true)
MCFG_PC_KEYB_ADD("pc_keyboard", WRITELINE("mb:pic8259", pic8259_device, ir1_w))
- MCFG_NVRAM_ADD_0FILL("nvram");
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);;
/* internal ram */
// Machine came with 512K standard, 640K via expansion card, but BIOS offers 256K as well
diff --git a/src/mame/drivers/exidy440.cpp b/src/mame/drivers/exidy440.cpp
index ddda2e3cdb3..68da9250cef 100644
--- a/src/mame/drivers/exidy440.cpp
+++ b/src/mame/drivers/exidy440.cpp
@@ -1002,7 +1002,7 @@ MACHINE_CONFIG_START(exidy440_state::exidy440)
MCFG_DEVICE_ADD("maincpu", MC6809E, MAIN_CPU_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(exidy440_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
exidy440_video(config);
diff --git a/src/mame/drivers/exterm.cpp b/src/mame/drivers/exterm.cpp
index 8adb0b29721..ec9d2b3a3cb 100644
--- a/src/mame/drivers/exterm.cpp
+++ b/src/mame/drivers/exterm.cpp
@@ -399,7 +399,7 @@ MACHINE_CONFIG_START(exterm_state::exterm)
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TIMER_DRIVER_ADD(m_nmi_timer, exterm_state, master_sound_nmi_callback)
diff --git a/src/mame/drivers/fb01.cpp b/src/mame/drivers/fb01.cpp
index 0aa2b148e9a..5f12c6d18b1 100644
--- a/src/mame/drivers/fb01.cpp
+++ b/src/mame/drivers/fb01.cpp
@@ -225,7 +225,7 @@ MACHINE_CONFIG_START(fb01_state::fb01)
MCFG_SOUND_ROUTE(0, "lspeaker", 1.00)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.00)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/fccpu30.cpp b/src/mame/drivers/fccpu30.cpp
index 8b81a1cada8..7d79c467849 100644
--- a/src/mame/drivers/fccpu30.cpp
+++ b/src/mame/drivers/fccpu30.cpp
@@ -663,7 +663,7 @@ MACHINE_CONFIG_START(cpu30_state::cpu30)
MCFG_DEVICE_ADD("maincpu", M68030, XTAL(25'000'000))
MCFG_DEVICE_PROGRAM_MAP(cpu30_mem)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DEVICE("fga002", fga002_device, iack)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_VME_DEVICE_ADD("vme")
MCFG_VME_SLOT_ADD("vme", 1, fccpu30_vme_cards, nullptr)
diff --git a/src/mame/drivers/feversoc.cpp b/src/mame/drivers/feversoc.cpp
index 2191159a966..84b516cf300 100644
--- a/src/mame/drivers/feversoc.cpp
+++ b/src/mame/drivers/feversoc.cpp
@@ -315,7 +315,7 @@ MACHINE_CONFIG_START(feversoc_state::feversoc)
MCFG_JRC6355E_ADD("rtc", XTAL(32'768))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(60), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH )
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/fidel6502.cpp b/src/mame/drivers/fidel6502.cpp
index a7a3d8c46bd..ce174d455f9 100644
--- a/src/mame/drivers/fidel6502.cpp
+++ b/src/mame/drivers/fidel6502.cpp
@@ -1927,7 +1927,7 @@ MACHINE_CONFIG_START(fidel6502_state::eas)
MCFG_I8255_IN_PORTB_CB(READ8(*this, fidel6502_state, eas_ppi_portb_r))
MCFG_I8255_OUT_PORTC_CB(WRITE8(*this, fidel6502_state, eas_ppi_portc_w))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", fidelbase_state, display_decay_tick, attotime::from_msec(1))
config.set_default_layout(layout_fidel_eas);
diff --git a/src/mame/drivers/fidel68k.cpp b/src/mame/drivers/fidel68k.cpp
index d8acd64920a..7b8046f62cc 100644
--- a/src/mame/drivers/fidel68k.cpp
+++ b/src/mame/drivers/fidel68k.cpp
@@ -636,7 +636,7 @@ MACHINE_CONFIG_START(fidel68k_state::eag_base)
MCFG_TIMER_START_DELAY(attotime::from_hz(4.9152_MHz_XTAL/0x2000) - attotime::from_nsec(8250)) // active for 8.25us
MCFG_TIMER_DRIVER_ADD_PERIODIC("irq_off", fidel68k_state, irq_off, attotime::from_hz(4.9152_MHz_XTAL/0x2000))
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", fidelbase_state, display_decay_tick, attotime::from_msec(1))
config.set_default_layout(layout_fidel_eag_68k);
diff --git a/src/mame/drivers/fmtowns.cpp b/src/mame/drivers/fmtowns.cpp
index df5e08a85c7..cfec592dbca 100644
--- a/src/mame/drivers/fmtowns.cpp
+++ b/src/mame/drivers/fmtowns.cpp
@@ -2888,10 +2888,11 @@ MACHINE_CONFIG_START(towns_state::towns_base)
MCFG_MSM58321_DEFAULT_24H(true)
MACHINE_CONFIG_END
-MACHINE_CONFIG_START(towns_state::towns)
+void towns_state::towns(machine_config &config)
+{
towns_base(config);
- MCFG_NVRAM_ADD_0FILL("nvram")
-MACHINE_CONFIG_END
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
+}
MACHINE_CONFIG_START(towns16_state::townsux)
towns_base(config);
@@ -2904,7 +2905,7 @@ MACHINE_CONFIG_START(towns16_state::townsux)
m_ram->set_default_size("2M").set_extra_options("10M");
- MCFG_NVRAM_ADD_0FILL("nvram16")
+ NVRAM(config, "nvram16", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(towns_state::townssj)
@@ -2952,7 +2953,7 @@ MACHINE_CONFIG_START(marty_state::marty)
m_ram->set_default_size("6M");
- MCFG_NVRAM_ADD_0FILL("nvram16")
+ NVRAM(config, "nvram16", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
/* ROM definitions */
diff --git a/src/mame/drivers/fortecar.cpp b/src/mame/drivers/fortecar.cpp
index 062d9c18398..7f452fcd14f 100644
--- a/src/mame/drivers/fortecar.cpp
+++ b/src/mame/drivers/fortecar.cpp
@@ -690,7 +690,7 @@ MACHINE_CONFIG_START(fortecar_state::fortecar)
MCFG_WATCHDOG_ADD("watchdog")
MCFG_WATCHDOG_TIME_INIT(attotime::from_msec(200)) /* guess */
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/funtech.cpp b/src/mame/drivers/funtech.cpp
index e3cae6f13ca..da104afcd23 100644
--- a/src/mame/drivers/funtech.cpp
+++ b/src/mame/drivers/funtech.cpp
@@ -507,7 +507,7 @@ MACHINE_CONFIG_START(fun_tech_corp_state::funtech)
MCFG_PALETTE_ADD("palette", 0x200)
MCFG_PALETTE_FORMAT(xBBBBBGGGGGRRRRR)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(50), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH)
diff --git a/src/mame/drivers/funworld.cpp b/src/mame/drivers/funworld.cpp
index 28201530537..e5f103746f8 100644
--- a/src/mame/drivers/funworld.cpp
+++ b/src/mame/drivers/funworld.cpp
@@ -3071,7 +3071,7 @@ MACHINE_CONFIG_START(funworld_state::fw1stpal)
MCFG_DEVICE_ADD("maincpu", M65SC02, CPU_CLOCK) /* 2MHz */
MCFG_DEVICE_PROGRAM_MAP(funworld_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
pia6821_device &pia0(PIA6821(config, "pia0", 0));
pia0.readpa_handler().set_ioport("IN0");
diff --git a/src/mame/drivers/g627.cpp b/src/mame/drivers/g627.cpp
index 63f78774e00..b4a999530d8 100644
--- a/src/mame/drivers/g627.cpp
+++ b/src/mame/drivers/g627.cpp
@@ -308,7 +308,7 @@ MACHINE_CONFIG_START(g627_state::g627)
i8156.out_pc_callback().set(FUNC(g627_state::portc_w));
i8156.out_to_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Sound */
genpin_audio(config);
diff --git a/src/mame/drivers/gal3.cpp b/src/mame/drivers/gal3.cpp
index a2657d87ac6..4b9ee2e2f7a 100644
--- a/src/mame/drivers/gal3.cpp
+++ b/src/mame/drivers/gal3.cpp
@@ -635,7 +635,7 @@ MACHINE_CONFIG_START(gal3_state::gal3)
*/
MCFG_QUANTUM_TIME(attotime::from_hz(60*8000)) /* 8000 CPU slices per frame */
- MCFG_NVRAM_ADD_0FILL("nvmem")
+ NVRAM(config, "nvmem", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("lscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/galaxi.cpp b/src/mame/drivers/galaxi.cpp
index 9b36dcf4348..9f95aac0d50 100644
--- a/src/mame/drivers/galaxi.cpp
+++ b/src/mame/drivers/galaxi.cpp
@@ -470,7 +470,7 @@ MACHINE_CONFIG_START(galaxi_state::galaxi)
MCFG_DEVICE_PROGRAM_MAP(galaxi_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", galaxi_state, irq4_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/gambl186.cpp b/src/mame/drivers/gambl186.cpp
index 9be11b6f8e0..fb24cd27511 100644
--- a/src/mame/drivers/gambl186.cpp
+++ b/src/mame/drivers/gambl186.cpp
@@ -477,7 +477,7 @@ MACHINE_CONFIG_START(gambl186_state::gambl186)
MCFG_DEVICE_PROGRAM_MAP(gambl186_map)
MCFG_DEVICE_IO_MAP(gambl186_io)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480)
diff --git a/src/mame/drivers/gamecom.cpp b/src/mame/drivers/gamecom.cpp
index 46c752857ad..bb7e765deca 100644
--- a/src/mame/drivers/gamecom.cpp
+++ b/src/mame/drivers/gamecom.cpp
@@ -258,7 +258,7 @@ MACHINE_CONFIG_START(gamecom_state::gamecom)
MCFG_QUANTUM_TIME(attotime::from_hz(60))
- //MCFG_NVRAM_ADD_0FILL("nvram")
+ //NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", LCD)
diff --git a/src/mame/drivers/gamemasters.cpp b/src/mame/drivers/gamemasters.cpp
index 7d317113589..ef6262e9381 100644
--- a/src/mame/drivers/gamemasters.cpp
+++ b/src/mame/drivers/gamemasters.cpp
@@ -80,7 +80,7 @@ MACHINE_CONFIG_START(gamemasters_state::gmsshoot)
MCFG_DEVICE_ADD("maincpu", R65C02, 4_MHz_XTAL / 4) // divider not verified
MCFG_DEVICE_PROGRAM_MAP(mem_map)
- MCFG_NVRAM_ADD_0FILL("nvram") // MK48Z02B-25
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // MK48Z02B-25
// LCD video?
diff --git a/src/mame/drivers/gatron.cpp b/src/mame/drivers/gatron.cpp
index 7173bbab2a0..887c8f73349 100644
--- a/src/mame/drivers/gatron.cpp
+++ b/src/mame/drivers/gatron.cpp
@@ -570,7 +570,7 @@ MACHINE_CONFIG_START(gatron_state::gat)
MCFG_DEVICE_PROGRAM_MAP(gat_map)
MCFG_DEVICE_IO_MAP(gat_portmap)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("ppi8255", I8255A, 0)
MCFG_I8255_IN_PORTA_CB(IOPORT("IN0"))
diff --git a/src/mame/drivers/gei.cpp b/src/mame/drivers/gei.cpp
index d5ff6768dce..e6da3f1ccb0 100644
--- a/src/mame/drivers/gei.cpp
+++ b/src/mame/drivers/gei.cpp
@@ -992,7 +992,7 @@ MACHINE_CONFIG_START(gei_state::getrivia)
MCFG_PALETTE_ADD_3BIT_GBR("palette")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("ppi8255_0", I8255A, 0)
MCFG_I8255_IN_PORTA_CB(IOPORT("DSWA"))
diff --git a/src/mame/drivers/gkigt.cpp b/src/mame/drivers/gkigt.cpp
index 052c6e23d89..ead0439482b 100644
--- a/src/mame/drivers/gkigt.cpp
+++ b/src/mame/drivers/gkigt.cpp
@@ -645,7 +645,7 @@ MACHINE_CONFIG_START(igt_gameking_state::igt_gameking)
MCFG_DEVICE_ADD("ymz", YMZ280B, XTAL(16'934'400)) // enhanced sound on optional Media-Lite sub board
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(igt_gameking_state::igt_ms72c)
diff --git a/src/mame/drivers/gladiatr.cpp b/src/mame/drivers/gladiatr.cpp
index 45333777a94..0aa70651f89 100644
--- a/src/mame/drivers/gladiatr.cpp
+++ b/src/mame/drivers/gladiatr.cpp
@@ -957,7 +957,7 @@ MACHINE_CONFIG_START(ppking_state::ppking)
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
MCFG_MACHINE_RESET_OVERRIDE(ppking_state, ppking)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
ls259_device &mainlatch(LS259(config, "mainlatch")); // 5L on main board
mainlatch.q_out_cb<0>().set(FUNC(ppking_state::spritebuffer_w));
@@ -1019,7 +1019,7 @@ MACHINE_CONFIG_START(gladiatr_state::gladiatr)
MCFG_DEVICE_PROGRAM_MAP(gladiatr_cpu3_map)
MCFG_MACHINE_RESET_OVERRIDE(gladiatr_state,gladiator)
- MCFG_NVRAM_ADD_0FILL("nvram") // NEC uPD449 CMOS SRAM
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // NEC uPD449 CMOS SRAM
ls259_device &mainlatch(LS259(config, "mainlatch")); // 5L on main board
mainlatch.q_out_cb<0>().set(FUNC(gladiatr_state::spritebuffer_w));
diff --git a/src/mame/drivers/gluck2.cpp b/src/mame/drivers/gluck2.cpp
index aa6f886776e..dec80e19483 100644
--- a/src/mame/drivers/gluck2.cpp
+++ b/src/mame/drivers/gluck2.cpp
@@ -489,7 +489,7 @@ MACHINE_CONFIG_START(gluck2_state::gluck2)
MCFG_DEVICE_ADD("maincpu", M6502, MASTER_CLOCK/16) /* guess */
MCFG_DEVICE_PROGRAM_MAP(gluck2_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/goldnpkr.cpp b/src/mame/drivers/goldnpkr.cpp
index c481d49a73a..120e8cb8614 100644
--- a/src/mame/drivers/goldnpkr.cpp
+++ b/src/mame/drivers/goldnpkr.cpp
@@ -4321,7 +4321,7 @@ MACHINE_CONFIG_START(goldnpkr_state::goldnpkr_base)
MCFG_DEVICE_ADD("maincpu", M6502, CPU_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(goldnpkr_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
PIA6821(config, m_pia[0], 0);
m_pia[0]->readpa_handler().set(FUNC(goldnpkr_state::goldnpkr_mux_port_r));
diff --git a/src/mame/drivers/goldstar.cpp b/src/mame/drivers/goldstar.cpp
index 57be173c3e8..e7f5a7636d5 100644
--- a/src/mame/drivers/goldstar.cpp
+++ b/src/mame/drivers/goldstar.cpp
@@ -8309,7 +8309,7 @@ MACHINE_CONFIG_START(goldstar_state::goldstar)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_goldstar)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_FORMAT(BBGGGRRR)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, goldstar)
@@ -8346,7 +8346,7 @@ MACHINE_CONFIG_START(goldstar_state::goldstbl)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_bl)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_FORMAT(BBGGGRRR)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, goldstar)
@@ -8394,7 +8394,7 @@ MACHINE_CONFIG_START(sanghopm_state::star100)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_sangho)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(sanghopm_state, sangho)
@@ -8433,7 +8433,7 @@ MACHINE_CONFIG_START(goldstar_state::super9)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_super9)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_FORMAT(BBGGGRRR)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, goldstar)
@@ -8542,7 +8542,7 @@ MACHINE_CONFIG_START(cb3_state::ncb3)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(goldstar_state, cm)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, goldstar)
@@ -8616,7 +8616,7 @@ MACHINE_CONFIG_START(goldstar_state::wcherry)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_cb3e)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(goldstar_state, cm)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, goldstar)
@@ -8663,7 +8663,7 @@ MACHINE_CONFIG_START(cmaster_state::cm)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_cmbitmap)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(goldstar_state,cm)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, cherrym)
@@ -8711,7 +8711,7 @@ MACHINE_CONFIG_START(goldstar_state::cmast91)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_cmast91)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(goldstar_state, cmast91)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, cherrym)
@@ -8768,7 +8768,7 @@ MACHINE_CONFIG_START(wingco_state::lucky8)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_FORMAT(BBGGGRRR)
MCFG_PALETTE_INIT_OWNER(goldstar_state, lucky8)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, goldstar)
@@ -8822,7 +8822,7 @@ MACHINE_CONFIG_START(wingco_state::bingowng)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_ncb3)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(goldstar_state, lucky8)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(wingco_state, bingowng)
@@ -8949,7 +8949,7 @@ MACHINE_CONFIG_START(wingco_state::magodds)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_magodds)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(wingco_state, magodds)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(wingco_state, magical)
@@ -9040,7 +9040,7 @@ MACHINE_CONFIG_START(goldstar_state::ladylinr)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_ncb3)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(goldstar_state, lucky8)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, goldstar)
@@ -9091,7 +9091,7 @@ MACHINE_CONFIG_START(wingco_state::wcat3)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_ncb3)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(goldstar_state, lucky8)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, goldstar)
@@ -9142,7 +9142,7 @@ MACHINE_CONFIG_START(cmaster_state::amcoe1)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_cm)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(goldstar_state,cm)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, cherrym)
@@ -9199,7 +9199,7 @@ MACHINE_CONFIG_START(cmaster_state::amcoe2)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_cm)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(goldstar_state,cm)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, cherrym)
@@ -9235,7 +9235,7 @@ MACHINE_CONFIG_START(unkch_state::unkch)
MCFG_DEVICE_PROGRAM_MAP(unkch_map)
MCFG_DEVICE_IO_MAP(unkch_portmap)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -9287,7 +9287,7 @@ MACHINE_CONFIG_START(goldstar_state::pkrmast)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_pkrmast)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(goldstar_state, cm)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state, cherrym)
@@ -9324,7 +9324,7 @@ MACHINE_CONFIG_START(unkch_state::megaline)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_megaline)
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(goldstar_state, lucky8)
-// MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_VIDEO_START_OVERRIDE(goldstar_state,goldstar)
diff --git a/src/mame/drivers/gottlieb.cpp b/src/mame/drivers/gottlieb.cpp
index 6cc219e056c..49c1e0c2219 100644
--- a/src/mame/drivers/gottlieb.cpp
+++ b/src/mame/drivers/gottlieb.cpp
@@ -1774,7 +1774,7 @@ MACHINE_CONFIG_START(gottlieb_state::gottlieb_core)
MCFG_DEVICE_PROGRAM_MAP(gottlieb_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", gottlieb_state, gottlieb_interrupt)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_WATCHDOG_ADD("watchdog")
MCFG_WATCHDOG_VBLANK_INIT("screen", 16)
diff --git a/src/mame/drivers/gp32.cpp b/src/mame/drivers/gp32.cpp
index 00fcd718098..a82c4605e60 100644
--- a/src/mame/drivers/gp32.cpp
+++ b/src/mame/drivers/gp32.cpp
@@ -1694,7 +1694,7 @@ MACHINE_CONFIG_START(gp32_state::gp32)
MCFG_SOUND_ROUTE(0, "ldac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "ldac", -1.0, DAC_VREF_NEG_INPUT)
MCFG_SOUND_ROUTE(0, "rdac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "rdac", -1.0, DAC_VREF_NEG_INPUT)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_DEVICE_ADD("smartmedia", SMARTMEDIA, 0)
diff --git a/src/mame/drivers/gp_1.cpp b/src/mame/drivers/gp_1.cpp
index e6270dc1826..6fd5c627c62 100644
--- a/src/mame/drivers/gp_1.cpp
+++ b/src/mame/drivers/gp_1.cpp
@@ -440,7 +440,7 @@ MACHINE_CONFIG_START(gp_1_state::gp_1)
MCFG_DEVICE_IO_MAP(gp_1_io)
MCFG_Z80_DAISY_CHAIN(daisy_chain)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_gp_1);
diff --git a/src/mame/drivers/gp_2.cpp b/src/mame/drivers/gp_2.cpp
index 73d0f3dd828..5ec3687f581 100644
--- a/src/mame/drivers/gp_2.cpp
+++ b/src/mame/drivers/gp_2.cpp
@@ -589,7 +589,7 @@ MACHINE_CONFIG_START(gp_2_state::gp_2)
MCFG_DEVICE_IO_MAP(gp_2_io)
MCFG_Z80_DAISY_CHAIN(daisy_chain)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_gp_2);
diff --git a/src/mame/drivers/gridlee.cpp b/src/mame/drivers/gridlee.cpp
index 33d5cfbe222..67459d57a22 100644
--- a/src/mame/drivers/gridlee.cpp
+++ b/src/mame/drivers/gridlee.cpp
@@ -402,7 +402,7 @@ MACHINE_CONFIG_START(gridlee_state::gridlee)
MCFG_DEVICE_ADD("maincpu", M6809, GRIDLEE_CPU_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(cpu1_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/gstream.cpp b/src/mame/drivers/gstream.cpp
index de502ce603b..5718ce91c6a 100644
--- a/src/mame/drivers/gstream.cpp
+++ b/src/mame/drivers/gstream.cpp
@@ -837,7 +837,7 @@ MACHINE_CONFIG_START(gstream_state::gstream)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", gstream_state, irq0_line_hold)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -869,7 +869,7 @@ MACHINE_CONFIG_START(gstream_state::x2222)
MCFG_DEVICE_IO_MAP(x2222_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", gstream_state, irq0_line_hold)
-// MCFG_NVRAM_ADD_1FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/gts1.cpp b/src/mame/drivers/gts1.cpp
index 2d581408511..10133812229 100644
--- a/src/mame/drivers/gts1.cpp
+++ b/src/mame/drivers/gts1.cpp
@@ -706,7 +706,7 @@ MACHINE_CONFIG_START(gts1_state::gts1)
MCFG_PPS4_DISCRETE_INPUT_A_CB(READ8(*this, gts1_state, gts1_pa_r))
MCFG_PPS4_DISCRETE_OUTPUT_CB(WRITE8(*this, gts1_state, gts1_do_w))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* A1753CE 2048 x 8 ROM (000-7ff), 128 x 4 RAM (00-7f) and 16 I/O lines (20 ... 2f) */
MCFG_DEVICE_ADD( "u5", RA17XX, 0 )
diff --git a/src/mame/drivers/gts80.cpp b/src/mame/drivers/gts80.cpp
index 80e2c2b2e59..7701f8e8c8b 100644
--- a/src/mame/drivers/gts80.cpp
+++ b/src/mame/drivers/gts80.cpp
@@ -361,7 +361,7 @@ MACHINE_CONFIG_START(gts80_state::gts80)
MCFG_DEVICE_ADD("maincpu", M6502, XTAL(3'579'545)/4)
MCFG_DEVICE_PROGRAM_MAP(gts80_map)
- MCFG_NVRAM_ADD_1FILL("nvram") // must be 1
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1); // must be 1
/* Video */
config.set_default_layout(layout_gts80);
diff --git a/src/mame/drivers/gts80a.cpp b/src/mame/drivers/gts80a.cpp
index fb42ca45704..593c538e940 100644
--- a/src/mame/drivers/gts80a.cpp
+++ b/src/mame/drivers/gts80a.cpp
@@ -352,7 +352,7 @@ MACHINE_CONFIG_START(gts80a_state::gts80a)
MCFG_DEVICE_ADD("maincpu", M6502, XTAL(3'579'545)/4)
MCFG_DEVICE_PROGRAM_MAP(gts80a_map)
- MCFG_NVRAM_ADD_1FILL("nvram") // must be 1
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1); // must be 1
/* Video */
config.set_default_layout(layout_gts80a);
diff --git a/src/mame/drivers/gts80b.cpp b/src/mame/drivers/gts80b.cpp
index 92e0efd4e06..0ddfbe0b734 100644
--- a/src/mame/drivers/gts80b.cpp
+++ b/src/mame/drivers/gts80b.cpp
@@ -393,7 +393,7 @@ MACHINE_CONFIG_START(gts80b_state::gts80b)
MCFG_DEVICE_ADD("maincpu", M6502, XTAL(3'579'545)/4)
MCFG_DEVICE_PROGRAM_MAP(gts80b_map)
- MCFG_NVRAM_ADD_1FILL("nvram") // must be 1
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1); // must be 1
/* Video */
config.set_default_layout(layout_gts80b);
diff --git a/src/mame/drivers/hankin.cpp b/src/mame/drivers/hankin.cpp
index 523ed47acdd..28746abb8cb 100644
--- a/src/mame/drivers/hankin.cpp
+++ b/src/mame/drivers/hankin.cpp
@@ -480,7 +480,7 @@ MACHINE_CONFIG_START(hankin_state::hankin)
MCFG_DEVICE_ADD("audiocpu", M6802, 3276800) // guess, xtal value not shown
MCFG_DEVICE_PROGRAM_MAP(hankin_sub_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_hankin);
diff --git a/src/mame/drivers/harriet.cpp b/src/mame/drivers/harriet.cpp
index 38965474c70..e5446d41315 100644
--- a/src/mame/drivers/harriet.cpp
+++ b/src/mame/drivers/harriet.cpp
@@ -102,7 +102,7 @@ MACHINE_CONFIG_START(harriet_state::harriet)
MCFG_HD63450_CPU("maincpu")
MCFG_DEVICE_ADD("timekpr", M48T02, 0)
- MCFG_NVRAM_ADD_0FILL("zpram") // MK48Z02
+ NVRAM(config, "zpram", nvram_device::DEFAULT_ALL_0); // MK48Z02
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("mfp", FUNC(mc68901_device::write_rx));
diff --git a/src/mame/drivers/highvdeo.cpp b/src/mame/drivers/highvdeo.cpp
index c76e9a121a2..1812972e332 100644
--- a/src/mame/drivers/highvdeo.cpp
+++ b/src/mame/drivers/highvdeo.cpp
@@ -1213,7 +1213,7 @@ MACHINE_CONFIG_START(highvdeo_state::tv_vcf)
MCFG_DEVICE_IO_MAP(tv_vcf_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", highvdeo_state, vblank_irq)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -1298,7 +1298,7 @@ MACHINE_CONFIG_START(highvdeo_state::brasil)
MCFG_DEVICE_IO_MAP(brasil_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", highvdeo_state, vblank_irq_80186)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -1328,7 +1328,7 @@ MACHINE_CONFIG_START(highvdeo_state::grancapi)
MCFG_DEVICE_IO_MAP(grancapi_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", highvdeo_state, vblank_irq_80186)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -1352,7 +1352,7 @@ MACHINE_CONFIG_START(highvdeo_state::magicbom)
MCFG_DEVICE_IO_MAP(magicbom_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", highvdeo_state, vblank_irq_80186)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/hitpoker.cpp b/src/mame/drivers/hitpoker.cpp
index 86ce8100c82..7c63dae816e 100644
--- a/src/mame/drivers/hitpoker.cpp
+++ b/src/mame/drivers/hitpoker.cpp
@@ -468,7 +468,7 @@ MACHINE_CONFIG_START(hitpoker_state::hitpoker)
MCFG_DEVICE_IO_MAP(hitpoker_io)
MCFG_MC68HC11_CONFIG(0, 0x100, 0x01)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/hnayayoi.cpp b/src/mame/drivers/hnayayoi.cpp
index 0562f7c9a50..6b4a39b0a1f 100644
--- a/src/mame/drivers/hnayayoi.cpp
+++ b/src/mame/drivers/hnayayoi.cpp
@@ -552,7 +552,7 @@ MACHINE_CONFIG_START(hnayayoi_state::hnayayoi)
MCFG_DEVICE_ADD("nmiclock", CLOCK, 8000)
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(*this, hnayayoi_state, nmi_clock_w))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
LS259(config, m_mainlatch);
m_mainlatch->q_out_cb<0>().set(FUNC(hnayayoi_state::coin_counter_w));
diff --git a/src/mame/drivers/hng64.cpp b/src/mame/drivers/hng64.cpp
index 7bdbedab0bc..fd676786f03 100644
--- a/src/mame/drivers/hng64.cpp
+++ b/src/mame/drivers/hng64.cpp
@@ -496,7 +496,7 @@ READ32_MEMBER(hng64_state::hng64_rtc_r)
// bit 4 disables "system log reader" (the device is 4-bit? so this bit is not from the device?)
if ((rtc_addr & 0xf) == 0xd)
- return m_rtc->read(space, (rtc_addr) & 0xf) | 0x10;
+ return m_rtc->read(space, (rtc_addr) & 0xf) | 0x10;
return m_rtc->read(space, (rtc_addr) & 0xf);
}
@@ -856,7 +856,7 @@ void hng64_state::hng_map(address_map &map)
map(0x2000d800, 0x2000e3ff).w(FUNC(hng64_state::hng64_sprite_clear_even_w));
map(0x2000e400, 0x2000efff).w(FUNC(hng64_state::hng64_sprite_clear_odd_w));
map(0x20010000, 0x20010013).ram().share("spriteregs");
-
+
// Backgrounds
map(0x20100000, 0x2017ffff).ram().w(FUNC(hng64_state::hng64_videoram_w)).share("videoram"); // Tilemap
map(0x20190000, 0x20190037).ram().w(FUNC(hng64_state::hng64_vregs_w)).share("videoregs");
@@ -1125,7 +1125,7 @@ static INPUT_PORTS_START( hng64_fight )
PORT_MODIFY("IN0")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
-
+
PORT_MODIFY("IN1")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -1182,7 +1182,7 @@ static INPUT_PORTS_START( hng64_drive )
PORT_MODIFY("IN0")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
-
+
PORT_MODIFY("IN1")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -1195,7 +1195,7 @@ static INPUT_PORTS_START( hng64_drive )
PORT_MODIFY("IN4")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_MODIFY("IN5")
+ PORT_MODIFY("IN5")
PORT_BIT( 0x1f, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("BGM 1")
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("BGM 2")
@@ -1547,7 +1547,7 @@ void hng64_state::set_irq(uint32_t irq_vector)
80000438: 00000000 irq0e INVALID
8000043C: 00000000 irq0f INVALID
80000440: 00000000 irq10 INVALID
- 80000444: 800170C0 irq11
+ 80000444: 800170C0 irq11
80000448: 00000000 irq12 INVALID
8000044C: 00000000 irq13 INVALID
80000450: 00000000 irq14 INVALID
@@ -1559,22 +1559,22 @@ void hng64_state::set_irq(uint32_t irq_vector)
Buriki
80000400: 800C49C4
- 80000404: 800C4748
+ 80000404: 800C4748
80000408: 800C4828
8000040C: 800C4B80
- 80000410: 00000000
- 80000414: 00000000
- 80000418: 00000000
- 8000041C: 00000000
+ 80000410: 00000000
+ 80000414: 00000000
+ 80000418: 00000000
+ 8000041C: 00000000
80000420: 00000000
- 80000424: 800C47B0
- 80000428: 800C4778
+ 80000424: 800C47B0
+ 80000428: 800C4778
8000042C: 800C4858
- 80000430: 800C47F0
- 80000434: 00000000
- 80000438: 00000000
+ 80000430: 800C47F0
+ 80000434: 00000000
+ 80000438: 00000000
8000043C: 00000000
- 80000440: 00000000
+ 80000440: 00000000
80000444: 800C4890
80000448: 00000000
8000044C: 00000000
@@ -1585,29 +1585,29 @@ void hng64_state::set_irq(uint32_t irq_vector)
80000460: 00000000
Beast Busters 2
- 80000400: 8000E9D8
- 80000404: 8000EAFC
- 80000408: 8000EBFC
- 8000040C: 80012D90
- 80000410: FFFFFFFF
- 80000414: FFFFFFFF
- 80000418: FFFFFFFF
- 8000041C: FFFFFFFF
- 80000420: FFFFFFFF
- 80000424: 8000EB74
- 80000428: 8000EB34
- 8000042C: 8000EC34
- 80000430: 8000EBBC
+ 80000400: 8000E9D8
+ 80000404: 8000EAFC
+ 80000408: 8000EBFC
+ 8000040C: 80012D90
+ 80000410: FFFFFFFF
+ 80000414: FFFFFFFF
+ 80000418: FFFFFFFF
+ 8000041C: FFFFFFFF
+ 80000420: FFFFFFFF
+ 80000424: 8000EB74
+ 80000428: 8000EB34
+ 8000042C: 8000EC34
+ 80000430: 8000EBBC
80000434: FFFFFFFF
- 80000438: FFFFFFFF
+ 80000438: FFFFFFFF
8000043C: FFFFFFFF
- 80000440: FFFFFFFF
- 80000444: 8000E508
- 80000448: FFFFFFFF
- 8000044C: FFFFFFFF
- 80000450: FFFFFFFF
- 80000454: FFFFFFFF
- 80000458: FFFFFFFF
+ 80000440: FFFFFFFF
+ 80000444: 8000E508
+ 80000448: FFFFFFFF
+ 8000044C: FFFFFFFF
+ 80000450: FFFFFFFF
+ 80000454: FFFFFFFF
+ 80000458: FFFFFFFF
8000045C: FFFFFFFF irq17 INVALID (not even a stub routine here)
80000460: FFFFFFFF
@@ -1629,10 +1629,10 @@ void hng64_state::set_irq(uint32_t irq_vector)
80000438: 00000000
8000043C: 00000000
80000440: 00000000
- 80000444: 80027340
- 80000448: 00000000
+ 80000444: 80027340
+ 80000448: 00000000
8000044C: 00000000
- 80000450: 00000000
+ 80000450: 00000000
80000454: 00000000
80000458: 00000000
8000045C: 00000000 irq17 INVALID (not even a stub routine here)
@@ -1641,7 +1641,7 @@ void hng64_state::set_irq(uint32_t irq_vector)
SamSho 64 code is more complex, irqs point to functions that get a jump address from a fixed ram location for each IRQ, most are invalid tho?
the ingame table is copied from 80005DD0
bootup ingame
- 80000400: 800C03E0 irq00 80005dd0 800c02e0 800cfcc8
+ 80000400: 800C03E0 irq00 80005dd0 800c02e0 800cfcc8
80000404: 800C041C irq01 80005dd4 800c0000
80000408: 800C0458 irq02 80005dd8 800c0000
8000040C: 800C0494 irq03 80005ddc 800c3054 800cfd58
@@ -1679,7 +1679,7 @@ void hng64_state::set_irq(uint32_t irq_vector)
8000041C: 801008A0 irq07 80000478 0000000b
80000420: 80100A08 irq08 80201200 80100500
80000424: 80100A44 irq09 80201204 80100500
- 80000428: 80100A80 irq0a 80201208 80100500
+ 80000428: 80100A80 irq0a 80201208 80100500
8000042C: 80100ABC irq0b 8020120c 80100500
80000430: 80100AF8 irq0c 80201210 80100500
80000434: 801007EC irq0d 80000478 0000000b
@@ -1706,7 +1706,7 @@ void hng64_state::set_irq(uint32_t irq_vector)
00040
00080
00100
- HNG64 writing to SYSTEM Registers 0x0000111c == 0x00000200. (PC=80009b70) 0x09
+ HNG64 writing to SYSTEM Registers 0x0000111c == 0x00000200. (PC=80009b70) 0x09
HNG64 writing to SYSTEM Registers 0x0000111c == 0x00000400. (PC=80009b78) 0x0a
HNG64 writing to SYSTEM Registers 0x0000111c == 0x00000800. (PC=80009b88) 0x0b network irq, needed by xrally and roadedge
01000
@@ -1824,7 +1824,7 @@ WRITE8_MEMBER(hng64_state::ioport1_w)
//LOG("%s: ioport1_w %02x\n", machine().describe_context(), data);
/* Port bits
-
+
aaac w-?-
a = external port number / address?
@@ -1875,7 +1875,7 @@ void hng64_lamps_device::device_start()
WRITE8_MEMBER(hng64_state::hng64_drive_lamps7_w)
{
- /*
+ /*
0x80 - BGM Select #2 (Active High)
0x40 - BGM Select #1 (Active High)
0x20
@@ -1889,7 +1889,7 @@ WRITE8_MEMBER(hng64_state::hng64_drive_lamps7_w)
WRITE8_MEMBER(hng64_state::hng64_drive_lamps6_w)
{
- /*
+ /*
0x80 - BGM Select #4 (Active High)
0x40 - BGM Select #3 (Active High)
0x20 - Winning Lamp (0x00 = ON, 0x10 = Blink 1, 0x20 = Blink 2, 0x30 = OFF)
@@ -1909,8 +1909,8 @@ WRITE8_MEMBER(hng64_state::hng64_drive_lamps5_w)
WRITE8_MEMBER(hng64_state::hng64_shoot_lamps7_w)
{
- /*
- 0x80
+ /*
+ 0x80
0x40 - Gun #3
0x20 - Gun #2
0x10 - Gun #1
@@ -1934,8 +1934,8 @@ WRITE8_MEMBER(hng64_state::hng64_shoot_lamps7_w)
WRITE8_MEMBER(hng64_state::hng64_shoot_lamps6_w)
{
// Start Lamp #1 / #2 don't get written to the output port, is this a TLCS870 bug or are they not connected to the 'lamp' outputs, they do get written to the DP ram, see above notes
- /*
- 0x80
+ /*
+ 0x80
0x40
0x20
0x10
@@ -1948,13 +1948,13 @@ WRITE8_MEMBER(hng64_state::hng64_shoot_lamps6_w)
WRITE8_MEMBER(hng64_state::hng64_fight_lamps6_w)
{
- /*
- 0x80
+ /*
+ 0x80
0x40
0x20
0x10
0x08
- 0x04
+ 0x04
0x02 - Coin Counter #2
0x01 - Coin Counter #1
*/
@@ -2114,7 +2114,7 @@ MACHINE_CONFIG_START(hng64_state::hng64)
MCFG_DEVICE_PROGRAM_MAP(hng_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", hng64_state, hng64_irq, "screen", 0, 1)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("rtc", RTC62423, XTAL(32'768))
@@ -2208,12 +2208,12 @@ MACHINE_CONFIG_END
ROMX_LOAD(name, offset, length, hash, ROM_BIOS(bios))
/* All main BIOS roms are said to be from 'fighting' type PCB, it is unknown if the actual MIPS BIOS differs on the others, but it appears unlikely.
-
- The IO MCU was dumped from a TMP87PH40AN type chip taken from an unknown IO board type.
-
+
+ The IO MCU was dumped from a TMP87PH40AN type chip taken from an unknown IO board type.
+
Some boards instead use a TMP87CH40N but in all cases they're stickered SNK-IOJ1.00A so the content is possibly the same on all types.
- This needs further studying of the MCU code as it is known that the different IO boards return a different ident value.
+ This needs further studying of the MCU code as it is known that the different IO boards return a different ident value.
*/
#define HNG64_BIOS \
diff --git a/src/mame/drivers/holeland.cpp b/src/mame/drivers/holeland.cpp
index bb440cbb327..f071f8c37b0 100644
--- a/src/mame/drivers/holeland.cpp
+++ b/src/mame/drivers/holeland.cpp
@@ -363,7 +363,7 @@ MACHINE_CONFIG_START(holeland_state::crzrally)
MCFG_DEVICE_IO_MAP(io_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", holeland_state, irq0_line_hold)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
LS259(config, m_latch);
m_latch->parallel_out_cb().set(FUNC(holeland_state::pal_offs_w)).mask(0x03);
diff --git a/src/mame/drivers/hp48.cpp b/src/mame/drivers/hp48.cpp
index 6e8df41d4f0..cd50c99ac0f 100644
--- a/src/mame/drivers/hp48.cpp
+++ b/src/mame/drivers/hp48.cpp
@@ -1269,7 +1269,7 @@ MACHINE_CONFIG_START(hp48_state::hp48_common)
WRITE32(*this, hp48_state, mem_crc), WRITELINE(*this, hp48_state, rsi) )
/* memory */
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video */
MCFG_SCREEN_ADD( "screen", RASTER )
diff --git a/src/mame/drivers/hp700.cpp b/src/mame/drivers/hp700.cpp
index 2425fdadf2c..62b7046de71 100644
--- a/src/mame/drivers/hp700.cpp
+++ b/src/mame/drivers/hp700.cpp
@@ -58,7 +58,7 @@ MACHINE_CONFIG_START(hp700_state::hp700_92)
MCFG_DEVICE_PROGRAM_MAP(mem_map)
MCFG_DEVICE_IO_MAP(io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("duart", SCN2681, XTAL(29'491'200) / 8) // divider not verified
MCFG_MC68681_IRQ_CALLBACK(INPUTLINE("maincpu", INPUT_LINE_NMI))
diff --git a/src/mame/drivers/hunter2.cpp b/src/mame/drivers/hunter2.cpp
index ce745b31fcc..bd185d1ff87 100644
--- a/src/mame/drivers/hunter2.cpp
+++ b/src/mame/drivers/hunter2.cpp
@@ -418,7 +418,7 @@ MACHINE_CONFIG_START(hunter2_state::hunter2)
MCFG_RS232_CTS_HANDLER(WRITELINE(*this, hunter2_state,cts_w))
MCFG_RS232_RXD_HANDLER(WRITELINE(*this, hunter2_state,rxd_w))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
ADDRESS_MAP_BANK(config, "bank1").set_map(&hunter2_state::hunter2_banked_mem).set_endianness(ENDIANNESS_LITTLE).set_data_width(8).set_stride(0x4000);
ADDRESS_MAP_BANK(config, "bank2").set_map(&hunter2_state::hunter2_banked_mem).set_endianness(ENDIANNESS_LITTLE).set_data_width(8).set_stride(0x4000);
diff --git a/src/mame/drivers/hyhoo.cpp b/src/mame/drivers/hyhoo.cpp
index 0971df3656c..9f28afd5516 100644
--- a/src/mame/drivers/hyhoo.cpp
+++ b/src/mame/drivers/hyhoo.cpp
@@ -234,7 +234,7 @@ MACHINE_CONFIG_START(hyhoo_state::hyhoo)
MCFG_DEVICE_IO_MAP(hyhoo_io_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", hyhoo_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/hyperspt.cpp b/src/mame/drivers/hyperspt.cpp
index 6279d96e193..7a571b2025d 100644
--- a/src/mame/drivers/hyperspt.cpp
+++ b/src/mame/drivers/hyperspt.cpp
@@ -310,7 +310,7 @@ MACHINE_CONFIG_START(hyperspt_state::hyperspt)
mainlatch.q_out_cb<5>().set_nop(); // SA
mainlatch.q_out_cb<7>().set(FUNC(hyperspt_state::irq_mask_w)); // INT
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/igs009.cpp b/src/mame/drivers/igs009.cpp
index b46b4e08827..3fe9425892a 100644
--- a/src/mame/drivers/igs009.cpp
+++ b/src/mame/drivers/igs009.cpp
@@ -834,7 +834,7 @@ MACHINE_CONFIG_START(igs009_state::jingbell)
MCFG_DEVICE_PROGRAM_MAP(jingbell_map)
MCFG_DEVICE_IO_MAP(jingbell_portmap)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("ppi8255_0", I8255A, 0)
MCFG_I8255_OUT_PORTA_CB(WRITE8(*this, igs009_state, nmi_and_coins_w))
diff --git a/src/mame/drivers/igs011.cpp b/src/mame/drivers/igs011.cpp
index 4b36416def4..3a4924ea89f 100644
--- a/src/mame/drivers/igs011.cpp
+++ b/src/mame/drivers/igs011.cpp
@@ -4184,7 +4184,7 @@ GFXDECODE_END
MACHINE_CONFIG_START(igs011_state::igs011_base)
MCFG_DEVICE_ADD("maincpu",M68000, XTAL(22'000'000)/3)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/igs_m027.cpp b/src/mame/drivers/igs_m027.cpp
index 5f3cbff153b..3d296c35720 100644
--- a/src/mame/drivers/igs_m027.cpp
+++ b/src/mame/drivers/igs_m027.cpp
@@ -331,7 +331,7 @@ MACHINE_CONFIG_START(igs_m027_state::igs_majhong)
MCFG_DEVICE_ADD("maincpu", ARM7, 20000000)
MCFG_DEVICE_PROGRAM_MAP(igs_majhong_map)
- //MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
@@ -364,7 +364,7 @@ MACHINE_CONFIG_START(igs_m027_state::amazonia)
MCFG_DEVICE_ADD("maincpu", ARM7, 20000000)
MCFG_DEVICE_PROGRAM_MAP(igs_majhong_map)
- //MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
diff --git a/src/mame/drivers/inder.cpp b/src/mame/drivers/inder.cpp
index 58213a89ac0..a6da752246c 100644
--- a/src/mame/drivers/inder.cpp
+++ b/src/mame/drivers/inder.cpp
@@ -1363,7 +1363,7 @@ MACHINE_CONFIG_START(inder_state::brvteam)
MCFG_DEVICE_PROGRAM_MAP(brvteam_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(inder_state, irq0_line_hold, 250) // NE556
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* Video */
config.set_default_layout(layout_inder);
@@ -1381,7 +1381,7 @@ MACHINE_CONFIG_START(inder_state::canasta)
MCFG_DEVICE_PROGRAM_MAP(canasta_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(inder_state, irq0_line_hold, 250) // NE556
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* Video */
config.set_default_layout(layout_inder);
@@ -1402,7 +1402,7 @@ MACHINE_CONFIG_START(inder_state::lapbylap)
MCFG_DEVICE_PROGRAM_MAP(lapbylap_sub_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(inder_state, irq0_line_hold, 250) // NE555
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* Video */
config.set_default_layout(layout_inder);
@@ -1426,7 +1426,7 @@ MACHINE_CONFIG_START(inder_state::inder)
MCFG_DEVICE_PROGRAM_MAP(inder_sub_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(inder_state, irq0_line_hold, 250) // NE555
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* Video */
config.set_default_layout(layout_inder);
diff --git a/src/mame/drivers/jaguar.cpp b/src/mame/drivers/jaguar.cpp
index d6506e366fc..62e62fa6dda 100644
--- a/src/mame/drivers/jaguar.cpp
+++ b/src/mame/drivers/jaguar.cpp
@@ -1853,7 +1853,7 @@ MACHINE_CONFIG_START(jaguar_state::cojagr3k)
MCFG_JAGUAR_IRQ_HANDLER(WRITELINE(*this, jaguar_state, dsp_cpu_int))
MCFG_DEVICE_PROGRAM_MAP(dsp_map)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/jangou.cpp b/src/mame/drivers/jangou.cpp
index bb4f382b38e..63aeb744462 100644
--- a/src/mame/drivers/jangou.cpp
+++ b/src/mame/drivers/jangou.cpp
@@ -968,7 +968,7 @@ MACHINE_CONFIG_START(jangou_state::roylcrdn)
MCFG_DEVICE_REMOVE("cpu1")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_MACHINE_START_OVERRIDE(jangou_state,common)
MCFG_MACHINE_RESET_OVERRIDE(jangou_state,common)
diff --git a/src/mame/drivers/jclub2.cpp b/src/mame/drivers/jclub2.cpp
index 6d0391eea04..730b515ab69 100644
--- a/src/mame/drivers/jclub2.cpp
+++ b/src/mame/drivers/jclub2.cpp
@@ -1141,7 +1141,7 @@ MACHINE_CONFIG_START(jclub2o_state::jclub2o)
MCFG_DEVICE_IO_MAP(st0016_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", jclub2o_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
EEPROM_S29290_16BIT(config, "eeprom");
MCFG_WATCHDOG_ADD("watchdog")
@@ -1175,7 +1175,7 @@ MACHINE_CONFIG_START(jclub2_state::jclub2)
MCFG_DEVICE_PROGRAM_MAP(jclub2_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", common_state, scanline_irq, "screen", 0, 1)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
EEPROM_93C46_8BIT(config, "eeprom");
MCFG_WATCHDOG_ADD("watchdog")
@@ -1210,7 +1210,7 @@ MACHINE_CONFIG_START(darkhors_state::darkhors)
MCFG_DEVICE_PROGRAM_MAP(darkhors_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", common_state, scanline_irq, "screen", 0, 1)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
EEPROM_93C46_8BIT(config, "eeprom");
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/joctronic.cpp b/src/mame/drivers/joctronic.cpp
index f9ac5e7beb1..9c318fc794c 100644
--- a/src/mame/drivers/joctronic.cpp
+++ b/src/mame/drivers/joctronic.cpp
@@ -346,7 +346,7 @@ MACHINE_CONFIG_START(joctronic_state::joctronic)
MCFG_DEVICE_PROGRAM_MAP(joctronic_sound_map)
MCFG_DEVICE_IO_MAP(joctronic_sound_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram") // 5516
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // 5516
LS259(config, m_mainlatch); // IC4 - exact type unknown
//m_mainlatch->parallel_out_cb().set(FUNC(joctronic_state::display_select_w)); MCFG_DEVCB_MASK(0x07)
@@ -392,7 +392,7 @@ MACHINE_CONFIG_START(joctronic_state::slalom03)
MCFG_DEVICE_PROGRAM_MAP(slalom03_sound_map)
MCFG_DEVICE_IO_MAP(slalom03_sound_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram") // 5516
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // 5516
LS259(config, m_mainlatch); // IC6 - exact type unknown
//m_mainlatch->q_out_cb<0>().set(FUNC(joctronic_state::cont_w));
diff --git a/src/mame/drivers/jokrwild.cpp b/src/mame/drivers/jokrwild.cpp
index a8e09d19bcd..2c5b1f53cf5 100644
--- a/src/mame/drivers/jokrwild.cpp
+++ b/src/mame/drivers/jokrwild.cpp
@@ -415,7 +415,7 @@ MACHINE_CONFIG_START(jokrwild_state::jokrwild)
MCFG_DEVICE_ADD("maincpu", M6809, MASTER_CLOCK/2) /* guess */
MCFG_DEVICE_PROGRAM_MAP(jokrwild_map)
-// MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
pia6821_device &pia0(PIA6821(config, "pia0", 0));
pia0.readpa_handler().set_ioport("IN0");
diff --git a/src/mame/drivers/jp.cpp b/src/mame/drivers/jp.cpp
index 9aa8fae2697..5e79fd57b5b 100644
--- a/src/mame/drivers/jp.cpp
+++ b/src/mame/drivers/jp.cpp
@@ -338,7 +338,7 @@ MACHINE_CONFIG_START(jp_state::jp)
MCFG_DEVICE_PROGRAM_MAP(jp_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(jp_state, irq0_line_hold, 8_MHz_XTAL / 8192) // 4020 divider
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
LS259(config, m_latch[0]);
m_latch[0]->q_out_cb<1>().set(FUNC(jp_state::disp_data_w)).invert();
diff --git a/src/mame/drivers/jpmimpct.cpp b/src/mame/drivers/jpmimpct.cpp
index 5326d48c2b5..466297947de 100644
--- a/src/mame/drivers/jpmimpct.cpp
+++ b/src/mame/drivers/jpmimpct.cpp
@@ -856,7 +856,7 @@ MACHINE_CONFIG_START(jpmimpct_state::jpmimpct)
MCFG_QUANTUM_TIME(attotime::from_hz(30000))
MCFG_MACHINE_START_OVERRIDE(jpmimpct_state,jpmimpct)
MCFG_MACHINE_RESET_OVERRIDE(jpmimpct_state,jpmimpct)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TIMER_DRIVER_ADD("duart_1_timer", jpmimpct_state, duart_1_timer_event)
@@ -1320,7 +1320,7 @@ MACHINE_CONFIG_START(jpmimpct_state::impctawp)
MCFG_MACHINE_START_OVERRIDE(jpmimpct_state,impctawp)
MCFG_MACHINE_RESET_OVERRIDE(jpmimpct_state,impctawp)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("ppi8255", I8255, 0)
MCFG_I8255_OUT_PORTA_CB(WRITE8(*this, jpmimpct_state, payen_a_w))
diff --git a/src/mame/drivers/jpmsys5.cpp b/src/mame/drivers/jpmsys5.cpp
index 00cd321bb5a..429089f463c 100644
--- a/src/mame/drivers/jpmsys5.cpp
+++ b/src/mame/drivers/jpmsys5.cpp
@@ -609,7 +609,7 @@ MACHINE_CONFIG_START(jpmsys5v_state::jpmsys5v)
acia_clock.signal_handler().append(m_acia6850[2], FUNC(acia6850_device::write_txc));
acia_clock.signal_handler().append(m_acia6850[2], FUNC(acia6850_device::write_rxc));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_S16LF01_ADD("vfd",0)//for debug ports
@@ -830,7 +830,7 @@ MACHINE_CONFIG_START(jpmsys5_state::jpmsys5_ym)
acia_clock.signal_handler().append(m_acia6850[2], FUNC(acia6850_device::write_txc));
acia_clock.signal_handler().append(m_acia6850[2], FUNC(acia6850_device::write_rxc));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_S16LF01_ADD("vfd",0)
SPEAKER(config, "mono").front_center();
@@ -888,7 +888,7 @@ MACHINE_CONFIG_START(jpmsys5_state::jpmsys5)
acia_clock.signal_handler().append(m_acia6850[2], FUNC(acia6850_device::write_txc));
acia_clock.signal_handler().append(m_acia6850[2], FUNC(acia6850_device::write_rxc));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_S16LF01_ADD("vfd",0)
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/jubilee.cpp b/src/mame/drivers/jubilee.cpp
index 46b89daa87c..be8a61c57da 100644
--- a/src/mame/drivers/jubilee.cpp
+++ b/src/mame/drivers/jubilee.cpp
@@ -678,7 +678,7 @@ MACHINE_CONFIG_START(jubilee_state::jubileep)
m_maincpu->set_addrmap(AS_IO, &jubilee_state::jubileep_cru_map);
m_maincpu->set_vblank_int("screen", FUNC(jubilee_state::jubileep_interrupt));
- MCFG_NVRAM_ADD_0FILL("videoworkram")
+ NVRAM(config, "videoworkram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/kas89.cpp b/src/mame/drivers/kas89.cpp
index 639c11189fa..618d7f842aa 100644
--- a/src/mame/drivers/kas89.cpp
+++ b/src/mame/drivers/kas89.cpp
@@ -782,7 +782,7 @@ MACHINE_CONFIG_START(kas89_state::kas89)
MCFG_DEVICE_IO_MAP(audio_io)
MCFG_TIMER_DRIVER_ADD_PERIODIC("kas89_snmi", kas89_state, kas89_sound_nmi_cb, attotime::from_hz(138))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_V9938_ADD("v9938", "screen", VDP_MEM, MASTER_CLOCK)
diff --git a/src/mame/drivers/kingdrby.cpp b/src/mame/drivers/kingdrby.cpp
index 8b37d6d1c77..83f4a0e23fd 100644
--- a/src/mame/drivers/kingdrby.cpp
+++ b/src/mame/drivers/kingdrby.cpp
@@ -976,7 +976,7 @@ MACHINE_CONFIG_START(kingdrby_state::kingdrby)
MCFG_QUANTUM_PERFECT_CPU("master")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// 5000-5003 PPI group modes 0/0 - A & B as input, C (all) as output.
MCFG_DEVICE_ADD("ppi8255_0", I8255A, 0)
diff --git a/src/mame/drivers/kingpin.cpp b/src/mame/drivers/kingpin.cpp
index d178f11bc92..271faa362fe 100644
--- a/src/mame/drivers/kingpin.cpp
+++ b/src/mame/drivers/kingpin.cpp
@@ -162,7 +162,7 @@ MACHINE_CONFIG_START(kingpin_state::kingpin)
MCFG_I8255_IN_PORTB_CB(IOPORT("IN1"))
// PORT C read = unknown
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(3'579'545))
MCFG_DEVICE_PROGRAM_MAP(kingpin_sound_map)
diff --git a/src/mame/drivers/konendev.cpp b/src/mame/drivers/konendev.cpp
index 76f296e0a11..2720d850532 100644
--- a/src/mame/drivers/konendev.cpp
+++ b/src/mame/drivers/konendev.cpp
@@ -324,8 +324,8 @@ MACHINE_CONFIG_START(konendev_state::konendev)
MCFG_DEVICE_ADD("gcu", K057714, 0)
MCFG_K057714_IRQ_CALLBACK(WRITELINE(*this, konendev_state, gcu_interrupt))
- MCFG_NVRAM_ADD_0FILL("nvram0")
- MCFG_NVRAM_ADD_0FILL("nvram1")
+ NVRAM(config, "nvram0", nvram_device::DEFAULT_ALL_0);
+ NVRAM(config, "nvram1", nvram_device::DEFAULT_ALL_0);
EEPROM_93C56_16BIT(config, "eeprom");
diff --git a/src/mame/drivers/kurukuru.cpp b/src/mame/drivers/kurukuru.cpp
index 053f4438d84..5b328728b64 100644
--- a/src/mame/drivers/kurukuru.cpp
+++ b/src/mame/drivers/kurukuru.cpp
@@ -854,7 +854,7 @@ MACHINE_CONFIG_START(kurukuru_state::kurukuru)
MCFG_DEVICE_IO_MAP(kurukuru_audio_io)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DEVICE("soundirq", rst_neg_buffer_device, inta_cb)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_V9938_ADD("v9938", "screen", VDP_MEM, MAIN_CLOCK)
diff --git a/src/mame/drivers/lastbank.cpp b/src/mame/drivers/lastbank.cpp
index bd1f3ea5110..9e1328e563f 100644
--- a/src/mame/drivers/lastbank.cpp
+++ b/src/mame/drivers/lastbank.cpp
@@ -519,7 +519,7 @@ MACHINE_CONFIG_START(lastbank_state::lastbank)
MCFG_DEVICE_PROGRAM_MAP(lastbank_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", lastbank_state, irq_scanline, "screen", 0, 1)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("audiocpu",Z80,MASTER_CLOCK/4)
MCFG_DEVICE_PROGRAM_MAP(lastbank_audio_map)
diff --git a/src/mame/drivers/lastfght.cpp b/src/mame/drivers/lastfght.cpp
index a94b41bb5ee..a9eb5d1e6ca 100644
--- a/src/mame/drivers/lastfght.cpp
+++ b/src/mame/drivers/lastfght.cpp
@@ -560,8 +560,7 @@ MACHINE_CONFIG_START(lastfght_state::lastfght)
MCFG_DEVICE_PROGRAM_MAP( lastfght_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", lastfght_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
-
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_PALETTE_ADD( "palette", 256 )
diff --git a/src/mame/drivers/lbeach.cpp b/src/mame/drivers/lbeach.cpp
index a493b8b9b71..309e63687d2 100644
--- a/src/mame/drivers/lbeach.cpp
+++ b/src/mame/drivers/lbeach.cpp
@@ -336,7 +336,7 @@ MACHINE_CONFIG_START(lbeach_state::lbeach)
MCFG_DEVICE_ADD("maincpu", M6800, XTAL(16'000'000) / 32) // Motorola MC6800P, 500kHz
MCFG_DEVICE_PROGRAM_MAP(lbeach_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/lcmate2.cpp b/src/mame/drivers/lcmate2.cpp
index d15a9a4a57e..6ca0c405998 100644
--- a/src/mame/drivers/lcmate2.cpp
+++ b/src/mame/drivers/lcmate2.cpp
@@ -252,7 +252,7 @@ MACHINE_CONFIG_START(lcmate2_state::lcmate2)
MCFG_HD44780_ADD("hd44780")
MCFG_HD44780_LCD_SIZE(2, 20)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* sound hardware */
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/leland.cpp b/src/mame/drivers/leland.cpp
index 7a23e78e4b6..f8531d9c1c1 100644
--- a/src/mame/drivers/leland.cpp
+++ b/src/mame/drivers/leland.cpp
@@ -991,7 +991,7 @@ MACHINE_CONFIG_START(leland_state::leland)
MCFG_DEVICE_IO_MAP(slave_map_io)
EEPROM_93C46_16BIT(config, m_eeprom);
- MCFG_NVRAM_ADD_0FILL("battery")
+ NVRAM(config, "battery", nvram_device::DEFAULT_ALL_0);
/* video hardware */
leland_video(config);
@@ -1063,7 +1063,7 @@ MACHINE_CONFIG_START(ataxx_state::ataxx)
EEPROM_93C56_16BIT(config, m_eeprom, eeprom_serial_streaming::ENABLE);
- MCFG_NVRAM_ADD_0FILL("battery")
+ NVRAM(config, "battery", nvram_device::DEFAULT_ALL_0);
/* video hardware */
ataxx_video(config);
diff --git a/src/mame/drivers/ltd.cpp b/src/mame/drivers/ltd.cpp
index 7e4e2abfd8f..3d7f5976fea 100644
--- a/src/mame/drivers/ltd.cpp
+++ b/src/mame/drivers/ltd.cpp
@@ -535,7 +535,7 @@ MACHINE_CONFIG_START(ltd_state::ltd3)
MCFG_DEVICE_ADD("maincpu", M6802, XTAL(3'579'545))
MCFG_DEVICE_PROGRAM_MAP(ltd3_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_ltd);
@@ -552,7 +552,7 @@ MACHINE_CONFIG_START(ltd_state::ltd4)
MCFG_DEVICE_PROGRAM_MAP(ltd4_map)
MCFG_DEVICE_IO_MAP(ltd4_io)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_ltd);
diff --git a/src/mame/drivers/lucky74.cpp b/src/mame/drivers/lucky74.cpp
index 9666d9a0e26..11fcb2ec14e 100644
--- a/src/mame/drivers/lucky74.cpp
+++ b/src/mame/drivers/lucky74.cpp
@@ -1471,7 +1471,7 @@ MACHINE_CONFIG_START(lucky74_state::lucky74)
MCFG_DEVICE_IO_MAP(lucky74_portmap)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", lucky74_state, nmi_interrupt) /* 60 Hz. measured */
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// Each 82C255 behaves like 2x 8255 (in mode 0). Since MAME doesn't support it yet, I replaced
// both 82C255 with 4x 8255...
diff --git a/src/mame/drivers/lvcards.cpp b/src/mame/drivers/lvcards.cpp
index 1d9a8f1fe5a..5a57a83e7e5 100644
--- a/src/mame/drivers/lvcards.cpp
+++ b/src/mame/drivers/lvcards.cpp
@@ -488,7 +488,7 @@ MACHINE_CONFIG_START(lvcards_state::lvpoker)
lvcards(config);
// basic machine hardware
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(lvpoker_map)
MCFG_MACHINE_START_OVERRIDE(lvcards_state,lvpoker)
@@ -499,7 +499,7 @@ MACHINE_CONFIG_START(lvcards_state::ponttehk)
lvcards(config);
// basic machine hardware
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(ponttehk_map)
MCFG_MACHINE_RESET_OVERRIDE(lvcards_state,lvpoker)
diff --git a/src/mame/drivers/m92.cpp b/src/mame/drivers/m92.cpp
index aa7e089a72f..7045b7bc98a 100644
--- a/src/mame/drivers/m92.cpp
+++ b/src/mame/drivers/m92.cpp
@@ -1012,7 +1012,7 @@ MACHINE_CONFIG_START(m92_state::majtitl2)
m92_banked(config);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(majtitl2_map)
- MCFG_NVRAM_ADD_0FILL("eeprom")
+ NVRAM(config, "eeprom", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_MODIFY("soundcpu")
MCFG_V25_CONFIG(majtitl2_decryption_table)
diff --git a/src/mame/drivers/magic10.cpp b/src/mame/drivers/magic10.cpp
index e208bea6f89..06274e51014 100644
--- a/src/mame/drivers/magic10.cpp
+++ b/src/mame/drivers/magic10.cpp
@@ -712,7 +712,7 @@ MACHINE_CONFIG_START(magic10_state::magic10)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", magic10_state, irq1_line_hold)
// 1FILL is required by vanilla magic10 at least (otherwise gameplay won't work properly)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/magicfly.cpp b/src/mame/drivers/magicfly.cpp
index 7312b4b949b..f6fc93964f2 100644
--- a/src/mame/drivers/magicfly.cpp
+++ b/src/mame/drivers/magicfly.cpp
@@ -946,7 +946,7 @@ MACHINE_CONFIG_START(magicfly_state::magicfly)
MCFG_DEVICE_ADD("maincpu", M6502, MASTER_CLOCK / 16) /* guess */
MCFG_DEVICE_PROGRAM_MAP(magicfly_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/magtouch.cpp b/src/mame/drivers/magtouch.cpp
index 76a1f55541b..80ccbc65040 100644
--- a/src/mame/drivers/magtouch.cpp
+++ b/src/mame/drivers/magtouch.cpp
@@ -210,7 +210,7 @@ MACHINE_CONFIG_START(magtouch_state::magtouch)
MCFG_INS8250_OUT_INT_CB(WRITELINE("pic8259_1", pic8259_device, ir4_w))
MCFG_MICROTOUCH_ADD( "microtouch", 9600, WRITELINE("ns16450_0", ins8250_uart_device, rx_w) )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
m_dma8237_1->out_iow_callback<1>().set(FUNC(magtouch_state::dma8237_1_dack_w));
diff --git a/src/mame/drivers/majorpkr.cpp b/src/mame/drivers/majorpkr.cpp
index 890290f52ea..ca2d6971a0a 100644
--- a/src/mame/drivers/majorpkr.cpp
+++ b/src/mame/drivers/majorpkr.cpp
@@ -1013,7 +1013,7 @@ MACHINE_CONFIG_START(majorpkr_state::majorpkr)
ADDRESS_MAP_BANK(config, "palette_bank").set_map(&majorpkr_state::palettebanks).set_options(ENDIANNESS_LITTLE, 8, 13, 0x800);
ADDRESS_MAP_BANK(config, "vram_bank").set_map(&majorpkr_state::vrambanks).set_options(ENDIANNESS_LITTLE, 8, 13, 0x800);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/malzak.cpp b/src/mame/drivers/malzak.cpp
index a981da9da1c..e16a634422b 100644
--- a/src/mame/drivers/malzak.cpp
+++ b/src/mame/drivers/malzak.cpp
@@ -373,7 +373,7 @@ MACHINE_CONFIG_START(malzak_state::malzak2)
MCFG_DEVICE_MODIFY( "maincpu" )
MCFG_DEVICE_PROGRAM_MAP(malzak2_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
ROM_START( malzak )
diff --git a/src/mame/drivers/manohman.cpp b/src/mame/drivers/manohman.cpp
index 0b345ea2440..11230025558 100644
--- a/src/mame/drivers/manohman.cpp
+++ b/src/mame/drivers/manohman.cpp
@@ -255,7 +255,7 @@ MACHINE_CONFIG_START(manohman_state::manohman)
MCFG_DEVICE_ADD("rtc", MSM6242, XTAL(32'768)) // M62X42B
- MCFG_NVRAM_ADD_NO_FILL("nvram") // KM6264BL-10 x2 + MAX696CFL + battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_NONE); // KM6264BL-10 x2 + MAX696CFL + battery
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("saa", SAA1099, XTAL(8'000'000) / 2) // clock not verified
diff --git a/src/mame/drivers/mastboyo.cpp b/src/mame/drivers/mastboyo.cpp
index f8548bc88ed..4b08e93e1ab 100644
--- a/src/mame/drivers/mastboyo.cpp
+++ b/src/mame/drivers/mastboyo.cpp
@@ -136,7 +136,7 @@ void mastboyo_state::mastboyo_portmap(address_map &map)
static INPUT_PORTS_START( mastboyo )
PORT_START("IN0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN2 )
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_START2 )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START1 )
@@ -204,7 +204,7 @@ MACHINE_CONFIG_START(mastboyo_state::mastboyo)
MCFG_DEVICE_IO_MAP(mastboyo_portmap)
MCFG_DEVICE_PERIODIC_INT_DRIVER(mastboyo_state, irq0_line_hold, 256.244f) // not sure, INT0 pin was measured at 256.244Hz
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -240,7 +240,7 @@ MACHINE_CONFIG_END
Also has a totally different device for questions: mastboy_27256.ic11,
which is mapped at 0x78000 (all 0xff in the other set)
-
+
Due to device addressing and the extra questions device, this dump was
set as parent.
@@ -276,7 +276,7 @@ ROM_END
/*
This set has the 78000-80000 range filled with 0xFF's.
There are more questions banks inside this range in
- the parent set.
+ the parent set.
*/
ROM_START( mastboyoa )
diff --git a/src/mame/drivers/maygay1b.cpp b/src/mame/drivers/maygay1b.cpp
index 699ccb99dcf..b6799c9e29b 100644
--- a/src/mame/drivers/maygay1b.cpp
+++ b/src/mame/drivers/maygay1b.cpp
@@ -839,7 +839,7 @@ MACHINE_CONFIG_START(maygay1b_state::maygay_m1)
MCFG_DEVICE_ADD("meters", METERS, 0)
MCFG_METERS_NUMBER(8)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
config.set_default_layout(layout_maygay1b);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/maygayv1.cpp b/src/mame/drivers/maygayv1.cpp
index 00bcddf4619..eecd849ad8c 100644
--- a/src/mame/drivers/maygayv1.cpp
+++ b/src/mame/drivers/maygayv1.cpp
@@ -896,7 +896,7 @@ MACHINE_CONFIG_START(maygayv1_state::maygayv1)
pia.writepa_handler().set(FUNC(maygayv1_state::b_writ));
pia.writepb_handler().set(FUNC(maygayv1_state::b_writ));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* TODO: Use real video timings */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/mazerbla.cpp b/src/mame/drivers/mazerbla.cpp
index 7639c9eb983..38c56c5feaf 100644
--- a/src/mame/drivers/mazerbla.cpp
+++ b/src/mame/drivers/mazerbla.cpp
@@ -1000,7 +1000,7 @@ MACHINE_CONFIG_START(mazerbla_state::mazerbla)
MCFG_MB_VCU_CPU("sub2")
MCFG_MB_VCU_PALETTE("palette")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -1043,7 +1043,7 @@ MACHINE_CONFIG_START(mazerbla_state::greatgun)
MCFG_MB_VCU_CPU("sub2")
MCFG_MB_VCU_PALETTE("palette")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/mcr.cpp b/src/mame/drivers/mcr.cpp
index 7b6c962c3b0..7d091ae8232 100644
--- a/src/mame/drivers/mcr.cpp
+++ b/src/mame/drivers/mcr.cpp
@@ -1765,7 +1765,7 @@ MACHINE_CONFIG_START(mcr_state::mcr_90009)
MCFG_WATCHDOG_ADD("watchdog")
MCFG_WATCHDOG_VBLANK_INIT("screen", 16)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/mcr3.cpp b/src/mame/drivers/mcr3.cpp
index 23ed6561e59..552cce6b392 100644
--- a/src/mame/drivers/mcr3.cpp
+++ b/src/mame/drivers/mcr3.cpp
@@ -1094,7 +1094,7 @@ MACHINE_CONFIG_START(mcr3_state::mcrmono)
MCFG_WATCHDOG_ADD("watchdog")
MCFG_WATCHDOG_VBLANK_INIT("screen", 16)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// sound hardware
SPEAKER(config, "lspeaker").front_left();
diff --git a/src/mame/drivers/mcr68.cpp b/src/mame/drivers/mcr68.cpp
index a562c229894..d7c94362bd6 100644
--- a/src/mame/drivers/mcr68.cpp
+++ b/src/mame/drivers/mcr68.cpp
@@ -1000,7 +1000,7 @@ MACHINE_CONFIG_START(mcr68_state::trisport)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(trisport_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mephisto_montec.cpp b/src/mame/drivers/mephisto_montec.cpp
index c64697e00a2..fff8aa84e0f 100644
--- a/src/mame/drivers/mephisto_montec.cpp
+++ b/src/mame/drivers/mephisto_montec.cpp
@@ -464,7 +464,7 @@ MACHINE_CONFIG_START(mephisto_montec_state::montec)
MCFG_DEVICE_PROGRAM_MAP( montec_mem )
MCFG_DEVICE_PERIODIC_INT_DRIVER(mephisto_montec_state, nmi_line_assert, XTAL(4'000'000) / (1 << 13))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("beeper", BEEP, 3250)
diff --git a/src/mame/drivers/mephistp.cpp b/src/mame/drivers/mephistp.cpp
index 7ae993818ae..c90754ecf85 100644
--- a/src/mame/drivers/mephistp.cpp
+++ b/src/mame/drivers/mephistp.cpp
@@ -166,7 +166,7 @@ MACHINE_CONFIG_START(mephisto_pinball_state::mephisto)
MCFG_DEVICE_PROGRAM_MAP(mephisto_map)
//MCFG_DEVICE_IRQ_ACKNOWLEDGE_DEVICE("muart", i8256_device, inta_cb)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
//MCFG_DEVICE_ADD("muart", I8256, XTAL(18'000'000)/3)
//MCFG_I8256_IRQ_HANDLER(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
diff --git a/src/mame/drivers/merit.cpp b/src/mame/drivers/merit.cpp
index df5abfb4c9d..65fe447c3c4 100644
--- a/src/mame/drivers/merit.cpp
+++ b/src/mame/drivers/merit.cpp
@@ -1449,7 +1449,7 @@ MACHINE_CONFIG_START(merit_state::casino5)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(casino5_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_MACHINE_START_OVERRIDE(merit_state,casino5)
MACHINE_CONFIG_END
@@ -1461,7 +1461,7 @@ MACHINE_CONFIG_START(merit_state::bigappg)
MCFG_DEVICE_PROGRAM_MAP(bigappg_map)
MCFG_DEVICE_IO_MAP(tictac_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(merit_state::misdraw)
@@ -1470,7 +1470,7 @@ MACHINE_CONFIG_START(merit_state::misdraw)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(misdraw_map)
- MCFG_NVRAM_ADD_0FILL("cpunvram")
+ NVRAM(config, "cpunvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(merit_state::dodge)
@@ -1480,7 +1480,7 @@ MACHINE_CONFIG_START(merit_state::dodge)
MCFG_DEVICE_PROGRAM_MAP(dodge_map)
MCFG_DEVICE_IO_MAP(tictac_io_map)
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("nvram", merit_state, dodge_nvram_init)
+ NVRAM(config, "nvram").set_custom_handler(FUNC(merit_state::dodge_nvram_init));
MACHINE_CONFIG_END
MACHINE_CONFIG_START(merit_state::tictac)
diff --git a/src/mame/drivers/meritm.cpp b/src/mame/drivers/meritm.cpp
index 7364dca26d3..53cc296b096 100644
--- a/src/mame/drivers/meritm.cpp
+++ b/src/mame/drivers/meritm.cpp
@@ -1127,7 +1127,7 @@ MACHINE_CONFIG_START(meritm_state::crt250)
MCFG_TIMER_DRIVER_ADD_SCANLINE("vblank_start", meritm_state, vblank_start_tick, "screen", 259, 262)
MCFG_TIMER_DRIVER_ADD_SCANLINE("vblank_end", meritm_state, vblank_end_tick, "screen", 262, 262)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DS1204_ADD(m_ds1204)
diff --git a/src/mame/drivers/meyc8080.cpp b/src/mame/drivers/meyc8080.cpp
index b16f6503863..3cbceeb37b6 100644
--- a/src/mame/drivers/meyc8080.cpp
+++ b/src/mame/drivers/meyc8080.cpp
@@ -594,7 +594,7 @@ MACHINE_CONFIG_START(meyc8080_state::meyc8080)
MCFG_DEVICE_ADD("maincpu", I8080, XTAL(20'000'000) / 10) // divider guessed
MCFG_DEVICE_PROGRAM_MAP(meyc8080_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/meyc8088.cpp b/src/mame/drivers/meyc8088.cpp
index 78b09f77814..dc8b2c91712 100644
--- a/src/mame/drivers/meyc8088.cpp
+++ b/src/mame/drivers/meyc8088.cpp
@@ -384,7 +384,7 @@ MACHINE_CONFIG_START(meyc8088_state::meyc8088)
i8155_2.out_pc_callback().set(FUNC(meyc8088_state::common_w));
i8155_2.out_to_callback().set("dac", FUNC(dac_bit_interface::write));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TIMER_DRIVER_ADD("heartbeat", meyc8088_state, heartbeat_callback)
diff --git a/src/mame/drivers/mgames.cpp b/src/mame/drivers/mgames.cpp
index 729b1eee708..30c1533c586 100644
--- a/src/mame/drivers/mgames.cpp
+++ b/src/mame/drivers/mgames.cpp
@@ -650,7 +650,7 @@ MACHINE_CONFIG_START(mgames_state::mgames)
MCFG_DEVICE_PROGRAM_MAP(main_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", mgames_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/mgavegas.cpp b/src/mame/drivers/mgavegas.cpp
index a2d131a9d92..b50f04c22a1 100644
--- a/src/mame/drivers/mgavegas.cpp
+++ b/src/mame/drivers/mgavegas.cpp
@@ -592,7 +592,7 @@ MACHINE_CONFIG_START(mgavegas_state::mgavegas)
MCFG_TIMER_DRIVER_ADD_PERIODIC("int_0", mgavegas_state, int_0, attotime::from_hz(6000)) //6KHz from MSM5205 /VCK
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TICKET_DISPENSER_ADD("hopper",attotime::from_msec(200),TICKET_MOTOR_ACTIVE_HIGH,TICKET_STATUS_ACTIVE_LOW);
diff --git a/src/mame/drivers/micro3d.cpp b/src/mame/drivers/micro3d.cpp
index ea4ccf7550d..5a619db197c 100644
--- a/src/mame/drivers/micro3d.cpp
+++ b/src/mame/drivers/micro3d.cpp
@@ -351,7 +351,7 @@ MACHINE_CONFIG_START(micro3d_state::micro3d)
//mfp.out_tao_cb().append("mfp", FUNC(mc68901_device::tc_w));
mfp.out_tco_cb().set("mfp", FUNC(mc68901_device::tbi_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_QUANTUM_TIME(attotime::from_hz(3000))
MCFG_PALETTE_ADD("palette", 4096)
diff --git a/src/mame/drivers/micronic.cpp b/src/mame/drivers/micronic.cpp
index 5b71e8f56ed..e124e4c7ec9 100644
--- a/src/mame/drivers/micronic.cpp
+++ b/src/mame/drivers/micronic.cpp
@@ -376,8 +376,8 @@ MACHINE_CONFIG_START(micronic_state::micronic)
/* ram banks */
RAM(config, RAM_TAG).set_default_size("224K");
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("nvram1", micronic_state, nvram_init) // base ram
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("nvram2", micronic_state, nvram_init) // additional ram banks
+ NVRAM(config, "nvram1").set_custom_handler(FUNC(micronic_state::nvram_init)); // base ram
+ NVRAM(config, "nvram2").set_custom_handler(FUNC(micronic_state::nvram_init)); // additional ram banks
MCFG_DEVICE_ADD(MC146818_TAG, MC146818, 32.768_kHz_XTAL)
MCFG_MC146818_IRQ_HANDLER(WRITELINE(*this, micronic_state, mc146818_irq))
diff --git a/src/mame/drivers/micropin.cpp b/src/mame/drivers/micropin.cpp
index 5db75719677..14201e08ff0 100644
--- a/src/mame/drivers/micropin.cpp
+++ b/src/mame/drivers/micropin.cpp
@@ -304,7 +304,7 @@ MACHINE_CONFIG_START(micropin_state::micropin)
MCFG_DEVICE_PROGRAM_MAP(micropin_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(micropin_state, irq0_line_hold, 500)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_micropin);
@@ -342,7 +342,7 @@ MACHINE_CONFIG_START(micropin_state::pentacup2)
MCFG_DEVICE_IO_MAP(pentacup2_io)
//MCFG_DEVICE_PERIODIC_INT_DRIVER(micropin_state, irq2_line_hold, 50)
- //MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Sound */
genpin_audio(config);
diff --git a/src/mame/drivers/midtunit.cpp b/src/mame/drivers/midtunit.cpp
index 05278fc7d0d..0605d4a1861 100644
--- a/src/mame/drivers/midtunit.cpp
+++ b/src/mame/drivers/midtunit.cpp
@@ -604,7 +604,7 @@ MACHINE_CONFIG_START(midtunit_state::tunit_core)
MCFG_TMS340X0_FROM_SHIFTREG_CB(midtunit_state, from_shiftreg) /* read from shiftreg function */
MCFG_MACHINE_RESET_OVERRIDE(midtunit_state,midtunit)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/midvunit.cpp b/src/mame/drivers/midvunit.cpp
index 2ce3734d360..e3e7252cad7 100644
--- a/src/mame/drivers/midvunit.cpp
+++ b/src/mame/drivers/midvunit.cpp
@@ -1069,7 +1069,7 @@ MACHINE_CONFIG_START(midvunit_state::midvcommon)
MCFG_DEVICE_ADD("maincpu", TMS32031, CPU_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(midvunit_map)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TIMER_ADD_NONE("timer0")
MCFG_TIMER_ADD_NONE("timer1")
diff --git a/src/mame/drivers/midwunit.cpp b/src/mame/drivers/midwunit.cpp
index d4e9a611049..3e59781b215 100644
--- a/src/mame/drivers/midwunit.cpp
+++ b/src/mame/drivers/midwunit.cpp
@@ -633,7 +633,7 @@ MACHINE_CONFIG_START(midwunit_state::wunit)
MCFG_TMS340X0_FROM_SHIFTREG_CB(midtunit_state, from_shiftreg) /* read from shiftreg function */
MCFG_MACHINE_RESET_OVERRIDE(midwunit_state,midwunit)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_PALETTE_ADD("palette", 32768)
diff --git a/src/mame/drivers/midxunit.cpp b/src/mame/drivers/midxunit.cpp
index b45c54d46a6..651fa53e887 100644
--- a/src/mame/drivers/midxunit.cpp
+++ b/src/mame/drivers/midxunit.cpp
@@ -254,7 +254,7 @@ MACHINE_CONFIG_START(midxunit_state::midxunit)
MCFG_TMS340X0_FROM_SHIFTREG_CB(midtunit_state, from_shiftreg) /* read from shiftreg function */
MCFG_MACHINE_RESET_OVERRIDE(midxunit_state,midxunit)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_PALETTE_ADD("palette", 32768)
diff --git a/src/mame/drivers/midyunit.cpp b/src/mame/drivers/midyunit.cpp
index a2221d564e9..f9be9e2026a 100644
--- a/src/mame/drivers/midyunit.cpp
+++ b/src/mame/drivers/midyunit.cpp
@@ -1112,7 +1112,7 @@ MACHINE_CONFIG_START(midyunit_state::zunit)
MCFG_TMS340X0_FROM_SHIFTREG_CB(midyunit_state, from_shiftreg) /* read from shiftreg function */
MCFG_MACHINE_RESET_OVERRIDE(midyunit_state,midyunit)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_PALETTE_ADD("palette", 8192)
@@ -1155,7 +1155,7 @@ MACHINE_CONFIG_START(midyunit_state::yunit_core)
MCFG_TMS340X0_FROM_SHIFTREG_CB(midyunit_state, from_shiftreg) /* read from shiftreg function */
MCFG_MACHINE_RESET_OVERRIDE(midyunit_state,midyunit)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_PALETTE_ADD("palette", 256)
diff --git a/src/mame/drivers/midzeus.cpp b/src/mame/drivers/midzeus.cpp
index e502c9cedf4..43fe7128307 100644
--- a/src/mame/drivers/midzeus.cpp
+++ b/src/mame/drivers/midzeus.cpp
@@ -1292,7 +1292,7 @@ MACHINE_CONFIG_START(midzeus_state::midzeus)
MCFG_MACHINE_START_OVERRIDE(midzeus_state,midzeus)
MCFG_MACHINE_RESET_OVERRIDE(midzeus_state,midzeus)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* video hardware */
MCFG_PALETTE_ADD("palette", 32768)
@@ -1335,7 +1335,7 @@ MACHINE_CONFIG_START(midzeus2_state::midzeus2)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", midzeus2_state, display_irq)
MCFG_MACHINE_RESET_OVERRIDE(midzeus2_state,midzeus)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/mil4000.cpp b/src/mame/drivers/mil4000.cpp
index 078fdf01647..b0651448b06 100644
--- a/src/mame/drivers/mil4000.cpp
+++ b/src/mame/drivers/mil4000.cpp
@@ -566,7 +566,7 @@ MACHINE_CONFIG_START(mil4000_state::mil4000)
// irq 2/4/5 point to the same place, others invalid
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", mil4000_state, irq5_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/miniboy7.cpp b/src/mame/drivers/miniboy7.cpp
index deead498699..1e3d22dfc56 100644
--- a/src/mame/drivers/miniboy7.cpp
+++ b/src/mame/drivers/miniboy7.cpp
@@ -517,7 +517,7 @@ MACHINE_CONFIG_START(miniboy7_state::miniboy7)
MCFG_DEVICE_ADD("maincpu", M6502, MASTER_CLOCK / 16) /* guess */
MCFG_DEVICE_PROGRAM_MAP(miniboy7_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
pia6821_device &pia(PIA6821(config, "pia0", 0));
pia.readpa_handler().set_ioport("INPUT1");
diff --git a/src/mame/drivers/mitchell.cpp b/src/mame/drivers/mitchell.cpp
index a868a9e5c99..c869081a6e8 100644
--- a/src/mame/drivers/mitchell.cpp
+++ b/src/mame/drivers/mitchell.cpp
@@ -1241,10 +1241,11 @@ MACHINE_CONFIG_START(mitchell_state::pang)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
-MACHINE_CONFIG_START(mitchell_state::pangnv)
+void mitchell_state::pangnv(machine_config &config)
+{
pang(config);
- MCFG_NVRAM_ADD_0FILL("nvram")
-MACHINE_CONFIG_END
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
+}
static const gfx_layout blcharlayout =
diff --git a/src/mame/drivers/mjkjidai.cpp b/src/mame/drivers/mjkjidai.cpp
index 557b5fcaaca..89e65cc02a6 100644
--- a/src/mame/drivers/mjkjidai.cpp
+++ b/src/mame/drivers/mjkjidai.cpp
@@ -303,7 +303,7 @@ MACHINE_CONFIG_START(mjkjidai_state::mjkjidai)
MCFG_DEVICE_PROGRAM_MAP(mjkjidai_map)
MCFG_DEVICE_IO_MAP(mjkjidai_io_map)
- MCFG_NVRAM_ADD_NO_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_NONE);
MCFG_DEVICE_ADD("ppi1", I8255A, 0)
MCFG_I8255_IN_PORTA_CB(IOPORT("KEYBOARD"))
diff --git a/src/mame/drivers/mjsenpu.cpp b/src/mame/drivers/mjsenpu.cpp
index a3e8dd3a67c..b79a85f8765 100644
--- a/src/mame/drivers/mjsenpu.cpp
+++ b/src/mame/drivers/mjsenpu.cpp
@@ -471,7 +471,7 @@ MACHINE_CONFIG_START(mjsenpu_state::mjsenpu)
MCFG_DEVICE_IO_MAP(mjsenpu_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", mjsenpu_state, irq0_line_hold)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
// more likely coins out?
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(50), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_HIGH)
diff --git a/src/mame/drivers/mmodular.cpp b/src/mame/drivers/mmodular.cpp
index 9927cf82b77..a0a00ade55c 100644
--- a/src/mame/drivers/mmodular.cpp
+++ b/src/mame/drivers/mmodular.cpp
@@ -278,7 +278,7 @@ MACHINE_CONFIG_START(mmodular_state::alm32)
MCFG_DEVICE_PROGRAM_MAP(alm32_mem)
MCFG_DEVICE_PERIODIC_INT_DRIVER(mmodular_state, irq6_line_hold, 750)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_MEPHISTO_SENSORS_BOARD_ADD("board")
MCFG_MEPHISTO_DISPLAY_MODUL_ADD("display")
@@ -298,7 +298,7 @@ MACHINE_CONFIG_START(mmodular_state::gen32)
MCFG_DEVICE_PROGRAM_MAP(gen32_mem)
MCFG_DEVICE_PERIODIC_INT_DRIVER(mmodular_state, irq2_line_hold, 375)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_MEPHISTO_SENSORS_BOARD_ADD("board")
MCFG_MEPHISTO_DISPLAY_MODUL_ADD("display")
@@ -311,7 +311,7 @@ MACHINE_CONFIG_START(berlinp_state::berlinp)
MCFG_DEVICE_PROGRAM_MAP(berlinp_mem)
MCFG_DEVICE_PERIODIC_INT_DRIVER(berlinp_state, irq2_line_hold, 750)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_MEPHISTO_BUTTONS_BOARD_ADD("board")
MCFG_MEPHISTO_DISPLAY_MODUL_ADD("display")
diff --git a/src/mame/drivers/model2.cpp b/src/mame/drivers/model2.cpp
index 3f330f4192a..81ec9cbbafd 100644
--- a/src/mame/drivers/model2.cpp
+++ b/src/mame/drivers/model2.cpp
@@ -2496,7 +2496,7 @@ MACHINE_CONFIG_START(model2o_state::model2o)
MCFG_MACHINE_START_OVERRIDE(model2_tgp_state,model2_tgp)
MCFG_MACHINE_RESET_OVERRIDE(model2o_state,model2o)
- MCFG_NVRAM_ADD_1FILL("backup1")
+ NVRAM(config, "backup1", nvram_device::DEFAULT_ALL_1);
model1io_device &ioboard(SEGA_MODEL1IO(config, "ioboard", 0));
ioboard.set_default_bios_tag("epr14869c");
@@ -2654,7 +2654,7 @@ MACHINE_CONFIG_START(model2a_state::model2a)
MCFG_MACHINE_RESET_OVERRIDE(model2a_state,model2a)
EEPROM_93C46_16BIT(config, "eeprom");
- MCFG_NVRAM_ADD_1FILL("backup1")
+ NVRAM(config, "backup1", nvram_device::DEFAULT_ALL_1);
sega_315_5649_device &io(SEGA_315_5649(config, "io", 0));
io.out_pa_callback().set(FUNC(model2a_state::eeprom_w));
@@ -2779,7 +2779,7 @@ MACHINE_CONFIG_START(model2b_state::model2b)
MCFG_MACHINE_RESET_OVERRIDE(model2b_state,model2b)
EEPROM_93C46_16BIT(config, "eeprom");
- MCFG_NVRAM_ADD_1FILL("backup1")
+ NVRAM(config, "backup1", nvram_device::DEFAULT_ALL_1);
sega_315_5649_device &io(SEGA_315_5649(config, "io", 0));
io.out_pa_callback().set(FUNC(model2b_state::eeprom_w));
@@ -2902,7 +2902,7 @@ MACHINE_CONFIG_START(model2c_state::model2c)
MCFG_MACHINE_RESET_OVERRIDE(model2c_state,model2c)
EEPROM_93C46_16BIT(config, "eeprom");
- MCFG_NVRAM_ADD_1FILL("backup1")
+ NVRAM(config, "backup1", nvram_device::DEFAULT_ALL_1);
sega_315_5649_device &io(SEGA_315_5649(config, "io", 0));
io.out_pa_callback().set(FUNC(model2c_state::eeprom_w));
diff --git a/src/mame/drivers/modena.cpp b/src/mame/drivers/modena.cpp
index d0336b61ed2..556c2e5006c 100644
--- a/src/mame/drivers/modena.cpp
+++ b/src/mame/drivers/modena.cpp
@@ -145,7 +145,7 @@ MACHINE_CONFIG_START(mephisto_modena_state::modena)
MCFG_TIMER_START_DELAY(attotime::from_hz(XTAL(4'194'304) / (1 << 13)) - attotime::from_usec(975)) // active for 975us
MCFG_TIMER_DRIVER_ADD_PERIODIC("nmi_off", mephisto_modena_state, nmi_off, attotime::from_hz(XTAL(4'194'304) / (1 << 13)))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_MEPHISTO_BUTTONS_BOARD_ADD("board")
MCFG_MEPHISTO_BOARD_DISABLE_LEDS(true)
diff --git a/src/mame/drivers/monzagp.cpp b/src/mame/drivers/monzagp.cpp
index 14596400c75..b105b0da967 100644
--- a/src/mame/drivers/monzagp.cpp
+++ b/src/mame/drivers/monzagp.cpp
@@ -523,7 +523,7 @@ MACHINE_CONFIG_START(monzagp_state::monzagp)
MCFG_TIMER_DRIVER_ADD_PERIODIC("time_tick_timer", monzagp_state, time_tick_timer, attotime::from_hz(4))
- MCFG_NVRAM_ADD_NO_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_NONE);
MACHINE_CONFIG_END
ROM_START( monzagp )
diff --git a/src/mame/drivers/mpu12wbk.cpp b/src/mame/drivers/mpu12wbk.cpp
index 5ac70ce1038..d9b90c1c128 100644
--- a/src/mame/drivers/mpu12wbk.cpp
+++ b/src/mame/drivers/mpu12wbk.cpp
@@ -496,7 +496,7 @@ MACHINE_CONFIG_START(mpu12wbk_state::mpu12wbk)
MCFG_DEVICE_ADD("maincpu", MC6809, MASTER_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(mpu12wbk_map)
-// MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/mpu3.cpp b/src/mame/drivers/mpu3.cpp
index c69f6d604be..7b84c41ad9a 100644
--- a/src/mame/drivers/mpu3.cpp
+++ b/src/mame/drivers/mpu3.cpp
@@ -895,7 +895,7 @@ MACHINE_CONFIG_START(mpu3_state::mpu3base)
MCFG_DEVICE_ADD("meters", METERS, 0)
MCFG_METERS_NUMBER(8)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
config.set_default_layout(layout_mpu3);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mpu4dealem.cpp b/src/mame/drivers/mpu4dealem.cpp
index 755820cca9a..6979f0859b9 100644
--- a/src/mame/drivers/mpu4dealem.cpp
+++ b/src/mame/drivers/mpu4dealem.cpp
@@ -215,7 +215,7 @@ MACHINE_CONFIG_START(mpu4dealem_state::dealem)
MCFG_AY8910_RES_LOADS(820, 0, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/mpu4vid.cpp b/src/mame/drivers/mpu4vid.cpp
index 6c72b5a18a6..2941cdd5dd6 100644
--- a/src/mame/drivers/mpu4vid.cpp
+++ b/src/mame/drivers/mpu4vid.cpp
@@ -1281,7 +1281,7 @@ MACHINE_CONFIG_START(mpu4vid_state::mpu4_vid)
MCFG_DEVICE_ADD("maincpu", M6809, MPU4_MASTER_CLOCK/4 )
MCFG_DEVICE_PROGRAM_MAP(mpu4_6809_map)
- MCFG_NVRAM_ADD_0FILL("nvram") /* confirm */
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); /* confirm */
mpu4_common(config);
diff --git a/src/mame/drivers/mquake.cpp b/src/mame/drivers/mquake.cpp
index eebef98d472..317c7d799aa 100644
--- a/src/mame/drivers/mquake.cpp
+++ b/src/mame/drivers/mquake.cpp
@@ -321,7 +321,7 @@ MACHINE_CONFIG_START(mquake_state::mquake)
ADDRESS_MAP_BANK(config, "overlay").set_map(&amiga_state::overlay_512kb_map).set_options(ENDIANNESS_BIG, 16, 22, 0x200000);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
ntsc_video(config);
diff --git a/src/mame/drivers/mrgame.cpp b/src/mame/drivers/mrgame.cpp
index 6834fb2f581..6ff51480cff 100644
--- a/src/mame/drivers/mrgame.cpp
+++ b/src/mame/drivers/mrgame.cpp
@@ -552,7 +552,7 @@ MACHINE_CONFIG_START(mrgame_state::mrgame)
MCFG_DEVICE_PROGRAM_MAP(audio2_map)
MCFG_DEVICE_IO_MAP(audio2_io)
- MCFG_NVRAM_ADD_0FILL("nvram") // 5564 (x2) + battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // 5564 (x2) + battery
LS259(config, m_selectlatch); // 5B
m_selectlatch->q_out_cb<0>().set(FUNC(mrgame_state::video_a11_w));
diff --git a/src/mame/drivers/mtouchxl.cpp b/src/mame/drivers/mtouchxl.cpp
index 5bb5c0260cf..97d8acc2d3b 100644
--- a/src/mame/drivers/mtouchxl.cpp
+++ b/src/mame/drivers/mtouchxl.cpp
@@ -219,7 +219,7 @@ MACHINE_CONFIG_START(mtxl_state::at486)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DEVICE("mb:pic8259_master", pic8259_device, inta_cb)
MCFG_DEVICE_ADD("mb", AT_MB, 0)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// on board devices
MCFG_DEVICE_ADD("board1", ISA16_SLOT, 0, "mb:isabus", pc_isa16_cards, "ide", true) // FIXME: determine ISA bus clock
diff --git a/src/mame/drivers/namcofl.cpp b/src/mame/drivers/namcofl.cpp
index 70ed13f185d..9946692e0fb 100644
--- a/src/mame/drivers/namcofl.cpp
+++ b/src/mame/drivers/namcofl.cpp
@@ -594,7 +594,7 @@ MACHINE_CONFIG_START(namcofl_state::namcofl)
MCFG_MACHINE_START_OVERRIDE(namcofl_state,namcofl)
MCFG_MACHINE_RESET_OVERRIDE(namcofl_state,namcofl)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/namcond1.cpp b/src/mame/drivers/namcond1.cpp
index 23733449f1f..35080d4ef00 100644
--- a/src/mame/drivers/namcond1.cpp
+++ b/src/mame/drivers/namcond1.cpp
@@ -399,8 +399,8 @@ MACHINE_CONFIG_START(namcond1_state::abcheck)
MCFG_DEVICE_PROGRAM_MAP(abcheck_map)
// MCFG_DEVICE_VBLANK_INT_DRIVER("screen", namcond1_state, irq1_line_hold)
- MCFG_NVRAM_ADD_0FILL("zpr1")
- MCFG_NVRAM_ADD_0FILL("zpr2")
+ NVRAM(config, "zpr1", nvram_device::DEFAULT_ALL_0);
+ NVRAM(config, "zpr2", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
ROM_START( ncv1 )
diff --git a/src/mame/drivers/namcos1.cpp b/src/mame/drivers/namcos1.cpp
index 6ca684edbf0..7af3d0a242a 100644
--- a/src/mame/drivers/namcos1.cpp
+++ b/src/mame/drivers/namcos1.cpp
@@ -1056,7 +1056,7 @@ MACHINE_CONFIG_START(namcos1_state::ns1)
// heavy sync required to prevent CPUs from fighting for video RAM access and going into deadlocks
MCFG_QUANTUM_TIME(attotime::from_hz(38400))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("dsw_sel", LS157, 0) // LS257 'A3'
diff --git a/src/mame/drivers/namcos2.cpp b/src/mame/drivers/namcos2.cpp
index f890c2b7d3c..7975fd2fa63 100644
--- a/src/mame/drivers/namcos2.cpp
+++ b/src/mame/drivers/namcos2.cpp
@@ -1766,7 +1766,7 @@ MACHINE_CONFIG_START(namcos2_state::base)
MCFG_MACHINE_START_OVERRIDE(namcos2_state,namcos2)
MCFG_MACHINE_RESET_OVERRIDE(namcos2_state,namcos2)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
configure_c148_standard(config);
NAMCO_C139(config, m_sci, 0);
@@ -1844,7 +1844,7 @@ MACHINE_CONFIG_START(namcos2_state::gollygho)
MCFG_MACHINE_START_OVERRIDE(namcos2_state,namcos2)
MCFG_MACHINE_RESET_OVERRIDE(namcos2_state,namcos2)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
configure_c148_standard(config);
NAMCO_C139(config, m_sci, 0);
@@ -1894,7 +1894,7 @@ MACHINE_CONFIG_START(namcos2_state::finallap)
MCFG_MACHINE_START_OVERRIDE(namcos2_state,namcos2)
MCFG_MACHINE_RESET_OVERRIDE(namcos2_state,namcos2)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
configure_c148_standard(config);
NAMCO_C139(config, m_sci, 0);
@@ -1956,7 +1956,7 @@ MACHINE_CONFIG_START(namcos2_state::sgunner)
MCFG_MACHINE_START_OVERRIDE(namcos2_state,namcos2)
MCFG_MACHINE_RESET_OVERRIDE(namcos2_state,namcos2)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
configure_c148_standard(config);
NAMCO_C139(config, m_sci, 0);
@@ -2013,7 +2013,7 @@ MACHINE_CONFIG_START(namcos2_state::sgunner2)
MCFG_MACHINE_START_OVERRIDE(namcos2_state,namcos2)
MCFG_MACHINE_RESET_OVERRIDE(namcos2_state,namcos2)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
configure_c148_standard(config);
NAMCO_C139(config, m_sci, 0);
@@ -2065,7 +2065,7 @@ MACHINE_CONFIG_START(namcos2_state::luckywld)
MCFG_MACHINE_START_OVERRIDE(namcos2_state,namcos2)
MCFG_MACHINE_RESET_OVERRIDE(namcos2_state,namcos2)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
configure_c148_standard(config);
NAMCO_C139(config, m_sci, 0);
@@ -2120,7 +2120,7 @@ MACHINE_CONFIG_START(namcos2_state::metlhawk)
MCFG_MACHINE_START_OVERRIDE(namcos2_state,namcos2)
MCFG_MACHINE_RESET_OVERRIDE(namcos2_state,namcos2)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
configure_c148_standard(config);
NAMCO_C139(config, m_sci, 0);
diff --git a/src/mame/drivers/namcos21.cpp b/src/mame/drivers/namcos21.cpp
index 9afe7008a62..6a2dd35d16b 100644
--- a/src/mame/drivers/namcos21.cpp
+++ b/src/mame/drivers/namcos21.cpp
@@ -1948,8 +1948,7 @@ MACHINE_CONFIG_START(namcos21_state::namcos21)
MCFG_MACHINE_START_OVERRIDE(namcos21_state,namcos21)
MCFG_MACHINE_RESET_OVERRIDE(namcos21_state,namcos2)
- MCFG_NVRAM_ADD_1FILL("nvram")
-
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS_NAMCO480I
@@ -2009,7 +2008,7 @@ MACHINE_CONFIG_START(namcos21_state::driveyes)
MCFG_MACHINE_START_OVERRIDE(namcos21_state,namcos21)
MCFG_MACHINE_RESET_OVERRIDE(namcos21_state,namcos2)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_DEVICE_ADD("gearbox", NAMCOIO_GEARBOX, 0)
@@ -2077,7 +2076,7 @@ MACHINE_CONFIG_START(namcos21_state::winrun)
MCFG_MACHINE_START_OVERRIDE(namcos21_state,namcos21)
MCFG_MACHINE_RESET_OVERRIDE(namcos21_state,namcos2)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS_NAMCO480I
diff --git a/src/mame/drivers/namcos23.cpp b/src/mame/drivers/namcos23.cpp
index 0b1516068e2..36f8b7d1e19 100644
--- a/src/mame/drivers/namcos23.cpp
+++ b/src/mame/drivers/namcos23.cpp
@@ -3612,7 +3612,7 @@ MACHINE_CONFIG_START(namcos23_state::gorgon)
subcpu_sci1.clk_handler().set(m_rtc, FUNC(rtc4543_device::clk_w)).invert();
subcpu_sci1.clk_handler().append(m_settings, FUNC(namco_settings_device::clk_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -3680,7 +3680,7 @@ MACHINE_CONFIG_START(namcos23_state::s23)
subcpu_sci1.clk_handler().set(m_rtc, FUNC(rtc4543_device::clk_w)).invert();
subcpu_sci1.clk_handler().append(m_settings, FUNC(namco_settings_device::clk_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -3761,7 +3761,7 @@ MACHINE_CONFIG_START(namcos23_state::ss23)
subcpu_sci1.clk_handler().set(m_rtc, FUNC(rtc4543_device::clk_w)).invert();
subcpu_sci1.clk_handler().append(m_settings, FUNC(namco_settings_device::clk_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/naomi.cpp b/src/mame/drivers/naomi.cpp
index 5fa939828b7..f5169bf1774 100644
--- a/src/mame/drivers/naomi.cpp
+++ b/src/mame/drivers/naomi.cpp
@@ -2957,7 +2957,7 @@ MACHINE_CONFIG_START(naomi_state::naomi_base)
MCFG_X76F100_ADD("naomibd_eeprom")
MCFG_M3COMM_ADD("comm_board")
MCFG_MACHINE_RESET_OVERRIDE(naomi_state,naomi)
- MCFG_NVRAM_ADD_0FILL("sram")
+ NVRAM(config, "sram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
/*
@@ -3092,7 +3092,7 @@ MACHINE_CONFIG_START(atomiswave_state::aw_base)
MCFG_AW_ROM_BOARD_ADD("rom_board", "rom_key", WRITE8(*this, dc_state, g1_irq))
MCFG_MACHINE_RESET_OVERRIDE(dc_state,dc_console)
- MCFG_NVRAM_ADD_0FILL("sram")
+ NVRAM(config, "sram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(atomiswave_state::aw1c)
diff --git a/src/mame/drivers/nbmj8688.cpp b/src/mame/drivers/nbmj8688.cpp
index e76db1c9774..50080e53e2b 100644
--- a/src/mame/drivers/nbmj8688.cpp
+++ b/src/mame/drivers/nbmj8688.cpp
@@ -2460,7 +2460,7 @@ MACHINE_CONFIG_START(nbmj8688_state::NBMJDRV_4096)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", nbmj8688_state, irq0_line_hold)
MCFG_NB1413M3_ADD("nb1413m3")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -2629,7 +2629,7 @@ MACHINE_CONFIG_START(nbmj8688_state::mbmj_p16bit_LCD)
MCFG_DEVICE_IO_MAP(p16bit_LCD_io_map)
MCFG_NB1413M3_ADD("nb1413m3")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_PALETTE_ADD("palette", 65536)
diff --git a/src/mame/drivers/nbmj8891.cpp b/src/mame/drivers/nbmj8891.cpp
index d67fd5da87c..b56da85789b 100644
--- a/src/mame/drivers/nbmj8891.cpp
+++ b/src/mame/drivers/nbmj8891.cpp
@@ -2234,7 +2234,7 @@ MACHINE_CONFIG_START(nbmj8891_state::mgion)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_MGION )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(nbmj8891_state::omotesnd)
@@ -2248,7 +2248,7 @@ MACHINE_CONFIG_START(nbmj8891_state::omotesnd)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_OMOTESND )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* sound hardware */
MCFG_DEVICE_REPLACE("fmsnd", AY8910, 1250000)
@@ -2275,7 +2275,7 @@ MACHINE_CONFIG_START(nbmj8891_state::mjcamerb)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_MJCAMERB )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_MODIFY("screen")
@@ -2293,7 +2293,7 @@ MACHINE_CONFIG_START(nbmj8891_state::mmcamera)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_MMCAMERA )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_MODIFY("screen")
@@ -2410,7 +2410,7 @@ MACHINE_CONFIG_START(nbmj8891_state::mmaiko)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_MMAIKO )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(nbmj8891_state::lovehous)
@@ -2424,7 +2424,7 @@ MACHINE_CONFIG_START(nbmj8891_state::lovehous)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_LOVEHOUS )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(nbmj8891_state::hanaoji)
@@ -2437,7 +2437,7 @@ MACHINE_CONFIG_START(nbmj8891_state::hanaoji)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_HANAOJI )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(nbmj8891_state::hnxmasev)
@@ -2481,7 +2481,7 @@ MACHINE_CONFIG_START(nbmj8891_state::bananadr)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_BANANADR )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(nbmj8891_state::club90s)
@@ -2517,7 +2517,7 @@ MACHINE_CONFIG_START(nbmj8891_state::mjfocusm)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_MJFOCUSM )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_MODIFY("screen")
@@ -2550,7 +2550,7 @@ MACHINE_CONFIG_START(nbmj8891_state::taiwanmb)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_TAIWANMB )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_MODIFY("screen")
diff --git a/src/mame/drivers/nbmj8991.cpp b/src/mame/drivers/nbmj8991.cpp
index a32b79da870..01c90a0e4ef 100644
--- a/src/mame/drivers/nbmj8991.cpp
+++ b/src/mame/drivers/nbmj8991.cpp
@@ -1459,7 +1459,7 @@ MACHINE_CONFIG_START(nbmj8991_state::tokimbsj)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_TOKIMBSJ )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
@@ -1491,7 +1491,7 @@ MACHINE_CONFIG_START(nbmj8991_state::hyouban)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_HYOUBAN )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
@@ -1565,7 +1565,7 @@ MACHINE_CONFIG_START(nbmj8991_state::finalbny)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_FINALBNY )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
@@ -1588,7 +1588,7 @@ MACHINE_CONFIG_START(nbmj8991_state::mjgottub)
MCFG_DEVICE_MODIFY("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_MJGOTTUB )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nbmj9195.cpp b/src/mame/drivers/nbmj9195.cpp
index 4738f676d50..6b71fcabbd2 100644
--- a/src/mame/drivers/nbmj9195.cpp
+++ b/src/mame/drivers/nbmj9195.cpp
@@ -2627,7 +2627,7 @@ MACHINE_CONFIG_START(nbmj9195_state::janbari)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_IO_MAP(patimono_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
@@ -2639,7 +2639,7 @@ MACHINE_CONFIG_START(nbmj9195_state::mmehyou)
MCFG_DEVICE_PROGRAM_MAP(koinomp_map)
MCFG_DEVICE_IO_MAP(mmehyou_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
@@ -2651,7 +2651,7 @@ MACHINE_CONFIG_START(nbmj9195_state::ultramhm)
MCFG_DEVICE_PROGRAM_MAP(koinomp_map)
MCFG_DEVICE_IO_MAP(koinomp_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
@@ -2698,7 +2698,7 @@ MACHINE_CONFIG_START(nbmj9195_state::pachiten)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_IO_MAP(pachiten_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
@@ -2716,7 +2716,7 @@ MACHINE_CONFIG_START(nbmj9195_state::sailorwr)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_IO_MAP(sailorwr_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
@@ -2763,7 +2763,7 @@ MACHINE_CONFIG_START(nbmj9195_state::yosimotm)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_IO_MAP(yosimotm_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nc.cpp b/src/mame/drivers/nc.cpp
index 9a5a636002d..aa93fb9faeb 100644
--- a/src/mame/drivers/nc.cpp
+++ b/src/mame/drivers/nc.cpp
@@ -1418,7 +1418,7 @@ MACHINE_CONFIG_START(nc_state::nc_base)
/* internal ram */
RAM(config, m_ram).set_default_size("64K");
- MCFG_NVRAM_ADD_NO_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_NONE);
/* dummy timer */
MCFG_TIMER_DRIVER_ADD_PERIODIC("dummy_timer", nc_state, dummy_timer_callback, attotime::from_hz(50))
diff --git a/src/mame/drivers/neogeo.cpp b/src/mame/drivers/neogeo.cpp
index 2edb3abb784..a1e88b164ca 100644
--- a/src/mame/drivers/neogeo.cpp
+++ b/src/mame/drivers/neogeo.cpp
@@ -2002,7 +2002,7 @@ MACHINE_CONFIG_START(ngarcade_base_state::neogeo_arcade)
MCFG_UPD4990A_ADD("upd4990a", XTAL(32'768), NOOP, NOOP)
- MCFG_NVRAM_ADD_0FILL("saveram")
+ NVRAM(config, "saveram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/neogeocd.cpp b/src/mame/drivers/neogeocd.cpp
index 08b1f225101..5a55a0125d2 100644
--- a/src/mame/drivers/neogeocd.cpp
+++ b/src/mame/drivers/neogeocd.cpp
@@ -1053,7 +1053,7 @@ MACHINE_CONFIG_START(ngcd_state::neocd)
MCFG_SET_TYPE2_INTERRUPT_CALLBACK( ngcd_state, interrupt_callback_type2 )
MCFG_SET_TYPE3_INTERRUPT_CALLBACK( ngcd_state, interrupt_callback_type3 )
- MCFG_NVRAM_ADD_0FILL("saveram")
+ NVRAM(config, "saveram", nvram_device::DEFAULT_ALL_0);
MCFG_NEOGEO_CONTROL_PORT_ADD("ctrl1", neogeo_controls, "joy", false)
MCFG_NEOGEO_CONTROL_PORT_ADD("ctrl2", neogeo_controls, "joy", false)
diff --git a/src/mame/drivers/neoprint.cpp b/src/mame/drivers/neoprint.cpp
index e75779b4971..3f9559bd9b2 100644
--- a/src/mame/drivers/neoprint.cpp
+++ b/src/mame/drivers/neoprint.cpp
@@ -510,7 +510,7 @@ MACHINE_CONFIG_START(neoprint_state::neoprint)
MCFG_DEVICE_IO_MAP(neoprint_audio_io_map)
MCFG_UPD4990A_ADD("upd4990a", XTAL(32'768), NOOP, NOOP)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_neoprint)
@@ -554,7 +554,7 @@ MACHINE_CONFIG_START(neoprint_state::nprsp)
MCFG_DEVICE_IO_MAP(neoprint_audio_io_map)
MCFG_UPD4990A_ADD("upd4990a", XTAL(32'768), NOOP, NOOP)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_neoprint)
diff --git a/src/mame/drivers/niyanpai.cpp b/src/mame/drivers/niyanpai.cpp
index 39ac7871cad..4193618958e 100644
--- a/src/mame/drivers/niyanpai.cpp
+++ b/src/mame/drivers/niyanpai.cpp
@@ -702,8 +702,7 @@ MACHINE_CONFIG_START(niyanpai_state::niyanpai)
MCFG_TMP68301_CPU("maincpu")
MCFG_TMP68301_OUT_PARALLEL_CB(WRITE16(*this, niyanpai_state, tmp68301_parallel_port_w))
-
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/norautp.cpp b/src/mame/drivers/norautp.cpp
index 90a29ff2c4c..7a299a1cdef 100644
--- a/src/mame/drivers/norautp.cpp
+++ b/src/mame/drivers/norautp.cpp
@@ -1247,7 +1247,7 @@ MACHINE_CONFIG_START(norautp_state::noraut_base)
MCFG_DEVICE_PROGRAM_MAP(norautp_map)
MCFG_DEVICE_IO_MAP(norautp_portmap)
- MCFG_NVRAM_ADD_0FILL("nvram") /* doesn't work if placed at derivative drivers */
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); /* doesn't work if placed at derivative drivers */
I8255(config, m_ppi8255[0], 0);
/* (60-63) Mode 0 - Port A set as input */
diff --git a/src/mame/drivers/novag6502.cpp b/src/mame/drivers/novag6502.cpp
index 2a2bd38d9fb..d3f118b0750 100644
--- a/src/mame/drivers/novag6502.cpp
+++ b/src/mame/drivers/novag6502.cpp
@@ -878,7 +878,7 @@ MACHINE_CONFIG_START(novag6502_state::supercon)
MCFG_DEVICE_PERIODIC_INT_DRIVER(novag6502_state, irq0_line_hold, 600) // guessed
MCFG_DEVICE_PROGRAM_MAP(supercon_map)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", novagbase_state, display_decay_tick, attotime::from_msec(1))
config.set_default_layout(layout_novag_supercon);
@@ -898,7 +898,7 @@ MACHINE_CONFIG_START(novag6502_state::cforte)
MCFG_TIMER_START_DELAY(attotime::from_hz(32.768_kHz_XTAL/128) - attotime::from_usec(11)) // active for 11us
MCFG_TIMER_DRIVER_ADD_PERIODIC("irq_off", novag6502_state, irq_off, attotime::from_hz(32.768_kHz_XTAL/128))
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* video hardware */
HLCD0538(config, m_hlcd0538, 0);
@@ -933,7 +933,7 @@ MACHINE_CONFIG_START(novag6502_state::sexpert)
rs232.rxd_handler().set("acia", FUNC(mos6551_device::write_rxd));
rs232.dsr_handler().set("acia", FUNC(mos6551_device::write_dsr));
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_MACHINE_RESET_OVERRIDE(novag6502_state, sexpert)
diff --git a/src/mame/drivers/novag68k.cpp b/src/mame/drivers/novag68k.cpp
index 3c1ad078156..4ac9dbad1bb 100644
--- a/src/mame/drivers/novag68k.cpp
+++ b/src/mame/drivers/novag68k.cpp
@@ -247,7 +247,7 @@ MACHINE_CONFIG_START(novag68k_state::diablo68k)
mos6551_device &acia(MOS6551(config, "acia", 0));
acia.set_xtal(1.8432_MHz_XTAL);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", LCD)
diff --git a/src/mame/drivers/nyny.cpp b/src/mame/drivers/nyny.cpp
index 5de931b5ae1..6dd450ac0d4 100644
--- a/src/mame/drivers/nyny.cpp
+++ b/src/mame/drivers/nyny.cpp
@@ -608,7 +608,7 @@ MACHINE_CONFIG_START(nyny_state::nyny)
MCFG_DEVICE_ADD("audio2", M6802, AUDIO_CPU_2_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(nyny_audio_2_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/ojankohs.cpp b/src/mame/drivers/ojankohs.cpp
index 231d84cef89..ce85c4b7cf3 100644
--- a/src/mame/drivers/ojankohs.cpp
+++ b/src/mame/drivers/ojankohs.cpp
@@ -721,7 +721,7 @@ MACHINE_CONFIG_START(ojankohs_state::ojankohs)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", ojankohs_state, irq0_line_hold)
MCFG_MACHINE_START_OVERRIDE(ojankohs_state,ojankohs)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -762,7 +762,7 @@ MACHINE_CONFIG_START(ojankohs_state::ojankoy)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", ojankohs_state, irq0_line_hold)
MCFG_MACHINE_START_OVERRIDE(ojankohs_state,ojankoy)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -802,7 +802,7 @@ MACHINE_CONFIG_START(ojankohs_state::ccasino)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", ojankohs_state, irq0_line_hold)
MCFG_MACHINE_START_OVERRIDE(ojankohs_state,ojankohs)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -843,7 +843,7 @@ MACHINE_CONFIG_START(ojankohs_state::ojankoc)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", ojankohs_state, irq0_line_hold)
MCFG_MACHINE_START_OVERRIDE(ojankohs_state,ojankoc)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/omegrace.cpp b/src/mame/drivers/omegrace.cpp
index 960feab2b1b..d10bcd799b8 100644
--- a/src/mame/drivers/omegrace.cpp
+++ b/src/mame/drivers/omegrace.cpp
@@ -534,7 +534,7 @@ MACHINE_CONFIG_START(omegrace_state::omegrace)
MCFG_DEVICE_IO_MAP(sound_port)
MCFG_DEVICE_PERIODIC_INT_DRIVER(omegrace_state, nmi_line_pulse, 250)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/pacman.cpp b/src/mame/drivers/pacman.cpp
index 415d3b1958d..649b69f8907 100644
--- a/src/mame/drivers/pacman.cpp
+++ b/src/mame/drivers/pacman.cpp
@@ -3867,7 +3867,7 @@ MACHINE_CONFIG_START(pacman_state::superabc)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(superabc_map)
- MCFG_NVRAM_ADD_0FILL("28c16.u17")
+ NVRAM(config, "28c16.u17", nvram_device::DEFAULT_ALL_0);
MCFG_MACHINE_RESET_OVERRIDE(pacman_state,superabc)
diff --git a/src/mame/drivers/pastelg.cpp b/src/mame/drivers/pastelg.cpp
index 58804561eff..1f93be1a6d5 100644
--- a/src/mame/drivers/pastelg.cpp
+++ b/src/mame/drivers/pastelg.cpp
@@ -408,7 +408,7 @@ MACHINE_CONFIG_START(pastelg_state::pastelg)
MCFG_NB1413M3_ADD("nb1413m3")
MCFG_NB1413M3_TYPE( NB1413M3_PASTELG )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -467,7 +467,7 @@ MACHINE_CONFIG_START(pastelg_state::threeds)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", pastelg_state, irq0_line_assert)
MCFG_NB1413M3_ADD("nb1413m3")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/pb1000.cpp b/src/mame/drivers/pb1000.cpp
index f55fbf99772..833bbf58731 100644
--- a/src/mame/drivers/pb1000.cpp
+++ b/src/mame/drivers/pb1000.cpp
@@ -510,8 +510,8 @@ MACHINE_CONFIG_START(pb1000_state::pb1000)
MCFG_DEVICE_ADD("hd44352", HD44352, 910000)
MCFG_HD44352_ON_CB(INPUTLINE("maincpu", HD61700_ON_INT))
- MCFG_NVRAM_ADD_0FILL("nvram1")
- MCFG_NVRAM_ADD_0FILL("nvram2")
+ NVRAM(config, "nvram1", nvram_device::DEFAULT_ALL_0);
+ NVRAM(config, "nvram2", nvram_device::DEFAULT_ALL_0);
/* sound hardware */
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/pcat_dyn.cpp b/src/mame/drivers/pcat_dyn.cpp
index 5b30051ec81..2a91174f4fc 100644
--- a/src/mame/drivers/pcat_dyn.cpp
+++ b/src/mame/drivers/pcat_dyn.cpp
@@ -190,7 +190,7 @@ MACHINE_CONFIG_START(pcat_dyn_state::pcat_dyn)
m_dma8237_1->out_iow_callback<0>().set("ad1848", FUNC(ad1848_device::dack_w));
m_dma8237_1->out_iow_callback<1>().set(FUNC(pcat_dyn_state::dma8237_1_dack_w));
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("nvram", pcat_dyn_state, nvram_init)
+ NVRAM(config, "nvram").set_custom_handler(FUNC(pcat_dyn_state::nvram_init));
MCFG_DEVICE_ADD( "ns16550", NS16550, XTAL(1'843'200) )
MCFG_INS8250_OUT_TX_CB(WRITELINE("serport", rs232_port_device, write_txd))
diff --git a/src/mame/drivers/pcat_nit.cpp b/src/mame/drivers/pcat_nit.cpp
index 6b3731e8c6e..25518a4e6b7 100644
--- a/src/mame/drivers/pcat_nit.cpp
+++ b/src/mame/drivers/pcat_nit.cpp
@@ -247,7 +247,7 @@ MACHINE_CONFIG_START(pcat_nit_state::pcat_nit)
MCFG_INS8250_OUT_INT_CB(WRITELINE("pic8259_1", pic8259_device, ir4_w))
MCFG_MICROTOUCH_ADD( "microtouch", 9600, WRITELINE("ns16450_0", ins8250_uart_device, rx_w) ) // rate?
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(pcat_nit_state::bonanza)
@@ -266,7 +266,7 @@ MACHINE_CONFIG_START(pcat_nit_state::bonanza)
MCFG_INS8250_OUT_INT_CB(WRITELINE("pic8259_1", pic8259_device, ir4_w))
MCFG_MICROTOUCH_ADD( "microtouch", 9600, WRITELINE("ns16450_0", ins8250_uart_device, rx_w) ) // rate?
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
/***************************************
diff --git a/src/mame/drivers/pcd.cpp b/src/mame/drivers/pcd.cpp
index 4e2f97a9b60..b85bb31258f 100644
--- a/src/mame/drivers/pcd.cpp
+++ b/src/mame/drivers/pcd.cpp
@@ -517,7 +517,7 @@ MACHINE_CONFIG_START(pcd_state::pcd)
RAM(config, RAM_TAG).set_default_size("1M");
// nvram
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
// floppy disk controller
MCFG_DEVICE_ADD("fdc", WD2793, 16_MHz_XTAL / 8)
diff --git a/src/mame/drivers/pce220.cpp b/src/mame/drivers/pce220.cpp
index 6158b43d8a2..0d5ce207e93 100644
--- a/src/mame/drivers/pce220.cpp
+++ b/src/mame/drivers/pce220.cpp
@@ -969,7 +969,7 @@ MACHINE_CONFIG_START(pce220_state::pce220)
MCFG_TIMER_DRIVER_ADD_PERIODIC("pce220_timer", pce220_state, pce220_timer_callback, attotime::from_msec(468))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* internal ram */
RAM(config, RAM_TAG).set_default_size("64K"); // 32K internal + 32K external card
@@ -1003,7 +1003,7 @@ MACHINE_CONFIG_START(pcg850v_state::pcg815)
MCFG_TIMER_DRIVER_ADD_PERIODIC("pce220_timer", pce220_state, pce220_timer_callback, attotime::from_msec(468))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* internal ram */
RAM(config, RAM_TAG).set_default_size("64K"); // 32K internal + 32K external card
@@ -1037,7 +1037,7 @@ MACHINE_CONFIG_START(pcg850v_state::pcg850v)
MCFG_TIMER_DRIVER_ADD_PERIODIC("pce220_timer", pce220_state, pce220_timer_callback, attotime::from_msec(468))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* internal ram */
RAM(config, RAM_TAG).set_default_size("64K"); // 32K internal + 32K external card
diff --git a/src/mame/drivers/pda600.cpp b/src/mame/drivers/pda600.cpp
index 687cae1a2a7..dc3cde6f2e9 100644
--- a/src/mame/drivers/pda600.cpp
+++ b/src/mame/drivers/pda600.cpp
@@ -223,7 +223,7 @@ MACHINE_CONFIG_START(pda600_state::pda600)
MCFG_PALETTE_ADD_MONOCHROME("palette")
// NVRAM needs to be filled with random data to fail the checksum and be initialized correctly
- MCFG_NVRAM_ADD_RANDOM_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_RANDOM);
MCFG_DEVICE_ADD("rtc", HD64610, XTAL(32'768))
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/peplus.cpp b/src/mame/drivers/peplus.cpp
index 79b047ec6fd..769ccd0ffb8 100644
--- a/src/mame/drivers/peplus.cpp
+++ b/src/mame/drivers/peplus.cpp
@@ -1376,7 +1376,7 @@ MACHINE_CONFIG_START(peplus_state::peplus)
MCFG_MCS51_PORT_P1_OUT_CB(WRITE8(*this, peplus_state, paldata_w<0>))
MCFG_MCS51_PORT_P3_OUT_CB(WRITE8(*this, peplus_state, paldata_w<1>))
- MCFG_NVRAM_ADD_0FILL("cmos")
+ NVRAM(config, "cmos", nvram_device::DEFAULT_ALL_0);
// video hardware
MCFG_SCREEN_ADD(m_screen, RASTER)
diff --git a/src/mame/drivers/peyper.cpp b/src/mame/drivers/peyper.cpp
index 8c26e7116ed..1c2da4509c6 100644
--- a/src/mame/drivers/peyper.cpp
+++ b/src/mame/drivers/peyper.cpp
@@ -607,7 +607,7 @@ MACHINE_CONFIG_START(peyper_state::peyper)
MCFG_DEVICE_PROGRAM_MAP(peyper_map)
MCFG_DEVICE_IO_MAP(peyper_io)
MCFG_DEVICE_PERIODIC_INT_DRIVER(peyper_state, irq0_line_hold, 1250)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
config.set_default_layout(layout_peyper);
diff --git a/src/mame/drivers/pgm.cpp b/src/mame/drivers/pgm.cpp
index 9227826aa97..e0bdb8a21d3 100644
--- a/src/mame/drivers/pgm.cpp
+++ b/src/mame/drivers/pgm.cpp
@@ -521,7 +521,7 @@ MACHINE_CONFIG_START(pgm_state::pgmbase)
MCFG_MACHINE_START_OVERRIDE(pgm_state, pgm )
MCFG_MACHINE_RESET_OVERRIDE(pgm_state, pgm )
- MCFG_NVRAM_ADD_0FILL("sram")
+ NVRAM(config, "sram", nvram_device::DEFAULT_ALL_0);
MCFG_V3021_ADD("rtc")
@@ -4992,6 +4992,6 @@ GAME( 2008, kovshxas, kovshp, pgm_arm_type1, kovsh, pgm_arm_ty
//乱世拳皇/Luànshì quánhuáng
GAME( 200?, kovlsqh, kovshp, pgm_arm_type1, kovsh, pgm_arm_type1_state, init_kovlsqh2, ROT0, "bootleg", "Luanshi Quanhuang (bootleg of Knights of Valour Super Heroes Plus, ver. 200CN)", MACHINE_IMPERFECT_SOUND | MACHINE_UNEMULATED_PROTECTION | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) /* need internal rom of IGS027A */
GAME( 200?, kovlsqh2, kovshp, pgm_arm_type1, kovsh, pgm_arm_type1_state, init_kovlsqh2, ROT0, "bootleg", "Luanshi Quanhuang 2 (bootleg of Knights of Valour Super Heroes Plus, ver. 200CN)", MACHINE_IMPERFECT_SOUND | MACHINE_UNEMULATED_PROTECTION | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) /* need internal rom of IGS027A */
-//乱世街霸/Luànshì jiē bà
+//乱世街霸/Luànshì jiē b
GAME( 200?, kovlsjb, kovshp, pgm_arm_type1, kovsh, pgm_arm_type1_state, init_kovlsqh2, ROT0, "bootleg", "Luanshi Jie Ba (bootleg of Knights of Valour Super Heroes Plus, ver. 200CN, set 1)", MACHINE_IMPERFECT_SOUND | MACHINE_UNEMULATED_PROTECTION | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) /* need internal rom of IGS027A */
GAME( 200?, kovlsjba, kovshp, pgm_arm_type1, kovsh, pgm_arm_type1_state, init_kovlsqh2, ROT0, "bootleg", "Luanshi Jie Ba (bootleg of Knights of Valour Super Heroes Plus, ver. 200CN, set 2)", MACHINE_IMPERFECT_SOUND | MACHINE_UNEMULATED_PROTECTION | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) /* need internal rom of IGS027A */
diff --git a/src/mame/drivers/pgm2.cpp b/src/mame/drivers/pgm2.cpp
index b368cf2c839..f41a2839172 100644
--- a/src/mame/drivers/pgm2.cpp
+++ b/src/mame/drivers/pgm2.cpp
@@ -804,7 +804,7 @@ MACHINE_CONFIG_START(pgm2_state::pgm2)
MCFG_PALETTE_ADD("bg_palette", 0x2000/4) // bg
MCFG_PALETTE_FORMAT(XRGB)
- MCFG_NVRAM_ADD_0FILL("sram")
+ NVRAM(config, "sram", nvram_device::DEFAULT_ALL_0);
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
diff --git a/src/mame/drivers/piggypas.cpp b/src/mame/drivers/piggypas.cpp
index f8519e1930b..b75ceb644e3 100644
--- a/src/mame/drivers/piggypas.cpp
+++ b/src/mame/drivers/piggypas.cpp
@@ -212,7 +212,7 @@ MACHINE_CONFIG_START(piggypas_state::piggypas)
MCFG_MCS51_SERIAL_TX_CB(WRITE8(*this, piggypas_state, mcs51_tx_callback))
// MCFG_DEVICE_VBLANK_INT_DRIVER("screen", piggypas_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram") // DS1220AD
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // DS1220AD
MCFG_SCREEN_ADD("screen", LCD)
MCFG_SCREEN_REFRESH_RATE(50)
diff --git a/src/mame/drivers/pingpong.cpp b/src/mame/drivers/pingpong.cpp
index e7af317663f..e8c85a9e61b 100644
--- a/src/mame/drivers/pingpong.cpp
+++ b/src/mame/drivers/pingpong.cpp
@@ -485,7 +485,7 @@ MACHINE_CONFIG_START(pingpong_state::merlinmm)
MCFG_TIMER_MODIFY("scantimer")
MCFG_TIMER_DRIVER_CALLBACK(pingpong_state, merlinmm_interrupt)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/piratesh.cpp b/src/mame/drivers/piratesh.cpp
index 5c989ecbe32..13c1294f564 100644
--- a/src/mame/drivers/piratesh.cpp
+++ b/src/mame/drivers/piratesh.cpp
@@ -604,7 +604,7 @@ MACHINE_CONFIG_START(piratesh_state::piratesh)
MCFG_DEVICE_PROGRAM_MAP(piratesh_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", piratesh_state, piratesh_interrupt, "screen", 0, 1)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("k053252", K053252, XTAL(32'000'000)/4)
MCFG_K053252_OFFSETS(40, 16) // TODO
diff --git a/src/mame/drivers/pkscram.cpp b/src/mame/drivers/pkscram.cpp
index 22593c2c49c..25c94e6b4e4 100644
--- a/src/mame/drivers/pkscram.cpp
+++ b/src/mame/drivers/pkscram.cpp
@@ -319,7 +319,7 @@ MACHINE_CONFIG_START(pkscram_state::pkscramble)
MCFG_DEVICE_PROGRAM_MAP(pkscramble_map)
//MCFG_DEVICE_VBLANK_INT_DRIVER("screen", pkscram_state, irq1_line_hold) /* only valid irq */
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TIMER_DRIVER_ADD("scan_timer", pkscram_state, scanline_callback)
diff --git a/src/mame/drivers/play_1.cpp b/src/mame/drivers/play_1.cpp
index 3af292b39a7..8bc2377518b 100644
--- a/src/mame/drivers/play_1.cpp
+++ b/src/mame/drivers/play_1.cpp
@@ -481,7 +481,7 @@ MACHINE_CONFIG_START(play_1_state::play_1)
m_maincpu->ef3_cb().set(FUNC(play_1_state::ef3_r));
m_maincpu->ef4_cb().set(FUNC(play_1_state::ef4_r));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_play_1);
diff --git a/src/mame/drivers/play_2.cpp b/src/mame/drivers/play_2.cpp
index 7b12c7e254b..e0090987692 100644
--- a/src/mame/drivers/play_2.cpp
+++ b/src/mame/drivers/play_2.cpp
@@ -366,7 +366,7 @@ MACHINE_CONFIG_START(play_2_state::play_2)
m_maincpu->tpb_cb().set(m_4013a, FUNC(ttl7474_device::clock_w));
m_maincpu->tpb_cb().append(m_4020, FUNC(ripple_counter_device::clock_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_play_2);
diff --git a/src/mame/drivers/play_3.cpp b/src/mame/drivers/play_3.cpp
index 61569a55579..f0a10284ae8 100644
--- a/src/mame/drivers/play_3.cpp
+++ b/src/mame/drivers/play_3.cpp
@@ -487,7 +487,7 @@ MACHINE_CONFIG_START(play_3_state::play_3)
m_maincpu->q_cb().set("4013a", FUNC(ttl7474_device::clear_w));
m_maincpu->tpb_cb().set(FUNC(play_3_state::clock_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_play_3);
diff --git a/src/mame/drivers/playch10.cpp b/src/mame/drivers/playch10.cpp
index d6f1c6b2b65..59031322ef4 100644
--- a/src/mame/drivers/playch10.cpp
+++ b/src/mame/drivers/playch10.cpp
@@ -698,10 +698,11 @@ MACHINE_CONFIG_START(playch10_state::playch10)
MCFG_RP5H01_ADD("rp5h01")
MACHINE_CONFIG_END
-MACHINE_CONFIG_START(playch10_state::playchnv)
+void playch10_state::playchnv(machine_config &config)
+{
playch10(config);
- MCFG_NVRAM_ADD_0FILL("nvram")
-MACHINE_CONFIG_END
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
+}
MACHINE_CONFIG_START(playch10_state::playch10_hboard)
playch10(config);
diff --git a/src/mame/drivers/playmark.cpp b/src/mame/drivers/playmark.cpp
index b61af5390ea..76de1003d6e 100644
--- a/src/mame/drivers/playmark.cpp
+++ b/src/mame/drivers/playmark.cpp
@@ -1304,7 +1304,7 @@ MACHINE_CONFIG_START(playmark_state::luckboomh)
MCFG_PIC16C5x_READ_C_CB(READ8(*this, playmark_state, playmark_snd_flag_r))
MCFG_PIC16C5x_WRITE_C_CB(WRITE8(*this, playmark_state, hrdtimes_snd_control_w))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_MACHINE_START_OVERRIDE(playmark_state,playmark)
MCFG_MACHINE_RESET_OVERRIDE(playmark_state,playmark)
diff --git a/src/mame/drivers/pocketc.cpp b/src/mame/drivers/pocketc.cpp
index f11f745e824..060a5165af6 100644
--- a/src/mame/drivers/pocketc.cpp
+++ b/src/mame/drivers/pocketc.cpp
@@ -727,8 +727,8 @@ GFXDECODE_END
MACHINE_CONFIG_START(pocketc_state::pocketc)
MCFG_QUANTUM_TIME(attotime::from_hz(60))
- MCFG_NVRAM_ADD_0FILL("cpu_nvram")
- MCFG_NVRAM_ADD_0FILL("ram_nvram")
+ NVRAM(config, "cpu_nvram", nvram_device::DEFAULT_ALL_0);
+ NVRAM(config, "ram_nvram", nvram_device::DEFAULT_ALL_0);
/*
aim: show sharp with keyboard
diff --git a/src/mame/drivers/pofo.cpp b/src/mame/drivers/pofo.cpp
index 417f1bb5b61..10116af98d6 100644
--- a/src/mame/drivers/pofo.cpp
+++ b/src/mame/drivers/pofo.cpp
@@ -1065,7 +1065,7 @@ MACHINE_CONFIG_START(portfolio_state::portfolio)
// internal ram
RAM(config, RAM_TAG).set_default_size("128K");
- MCFG_NVRAM_ADD_RANDOM_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_RANDOM);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/polepos.cpp b/src/mame/drivers/polepos.cpp
index f6994a82250..0d339ed6c81 100644
--- a/src/mame/drivers/polepos.cpp
+++ b/src/mame/drivers/polepos.cpp
@@ -902,7 +902,7 @@ MACHINE_CONFIG_START(polepos_state::polepos)
MCFG_QUANTUM_TIME(attotime::from_hz(6000)) /* some interleaving */
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", polepos_state, scanline, "screen", 0, 1)
@@ -1012,7 +1012,7 @@ MACHINE_CONFIG_START(polepos_state::topracern)
MCFG_QUANTUM_TIME(attotime::from_hz(6000)) /* some interleaving */
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", polepos_state, scanline, "screen", 0, 1)
diff --git a/src/mame/drivers/polgar.cpp b/src/mame/drivers/polgar.cpp
index b946f4abf27..e8daeb19418 100644
--- a/src/mame/drivers/polgar.cpp
+++ b/src/mame/drivers/polgar.cpp
@@ -362,7 +362,7 @@ MACHINE_CONFIG_START(mephisto_polgar_state::polgar)
MCFG_DEVICE_PROGRAM_MAP(polgar_mem)
MCFG_DEVICE_PERIODIC_INT_DRIVER(mephisto_polgar_state, nmi_line_pulse, XTAL(4'915'200) / (1 << 13))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
hc259_device &outlatch(HC259(config, "outlatch"));
outlatch.q_out_cb<0>().set_output("led100");
@@ -394,7 +394,7 @@ MACHINE_CONFIG_START(mephisto_risc_state::mrisc)
MCFG_QUANTUM_PERFECT_CPU("maincpu")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
hc259_device &outlatch(HC259(config, "outlatch"));
outlatch.q_out_cb<0>().set_output("led100");
diff --git a/src/mame/drivers/portrait.cpp b/src/mame/drivers/portrait.cpp
index a799eb8830f..a0431406ad1 100644
--- a/src/mame/drivers/portrait.cpp
+++ b/src/mame/drivers/portrait.cpp
@@ -263,7 +263,7 @@ MACHINE_CONFIG_START(portrait_state::portrait)
MCFG_DEVICE_PROGRAM_MAP(portrait_sound_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(50)
diff --git a/src/mame/drivers/psion.cpp b/src/mame/drivers/psion.cpp
index 638d993a902..bc8209405b3 100644
--- a/src/mame/drivers/psion.cpp
+++ b/src/mame/drivers/psion.cpp
@@ -594,8 +594,8 @@ MACHINE_CONFIG_START(psion_state::psion_2lines)
MCFG_DEVICE_ADD( "beeper", BEEP, 3250 )
MCFG_SOUND_ROUTE( ALL_OUTPUTS, "mono", 1.00 )
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("nvram1", psion_state, nvram_init) // sys_regs
- MCFG_NVRAM_ADD_0FILL("nvram2") // RAM
+ NVRAM(config, "nvram1").set_custom_handler(FUNC(psion_state::nvram_init)); // sys_regs
+ NVRAM(config, "nvram2", nvram_device::DEFAULT_ALL_0); // RAM
MCFG_TIMER_DRIVER_ADD_PERIODIC("nmi_timer", psion_state, nmi_timer, attotime::from_seconds(1))
@@ -668,7 +668,7 @@ MACHINE_CONFIG_START(psion_state::psionp350)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(psionp350_mem)
- MCFG_NVRAM_ADD_0FILL("nvram3") // paged RAM
+ NVRAM(config, "nvram3", nvram_device::DEFAULT_ALL_0); // paged RAM
MACHINE_CONFIG_END
MACHINE_CONFIG_START(psion_state::psionlz)
@@ -677,7 +677,7 @@ MACHINE_CONFIG_START(psion_state::psionlz)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(psionlz_mem)
- MCFG_NVRAM_ADD_0FILL("nvram3") // paged RAM
+ NVRAM(config, "nvram3", nvram_device::DEFAULT_ALL_0); // paged RAM
MACHINE_CONFIG_END
/* ROM definition */
diff --git a/src/mame/drivers/punchout.cpp b/src/mame/drivers/punchout.cpp
index bbc39f814a3..92ece15fea9 100644
--- a/src/mame/drivers/punchout.cpp
+++ b/src/mame/drivers/punchout.cpp
@@ -632,7 +632,7 @@ MACHINE_CONFIG_START(punchout_state::punchout)
MCFG_DEVICE_ADD("audiocpu", N2A03, NTSC_APU_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(punchout_sound_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
ls259_device &mainlatch(LS259(config, "mainlatch")); // 2B
mainlatch.q_out_cb<0>().set(FUNC(punchout_state::nmi_mask_w));
diff --git a/src/mame/drivers/px4.cpp b/src/mame/drivers/px4.cpp
index aad6692b9ee..0d443f09eda 100644
--- a/src/mame/drivers/px4.cpp
+++ b/src/mame/drivers/px4.cpp
@@ -1514,7 +1514,7 @@ MACHINE_CONFIG_START(px4_state::px4)
// internal ram
RAM(config, RAM_TAG).set_default_size("64K");
- MCFG_NVRAM_ADD_NO_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_NONE);
// centronics printer
MCFG_DEVICE_ADD(m_centronics, CENTRONICS, centronics_devices, "printer")
@@ -1555,7 +1555,7 @@ MACHINE_CONFIG_START(px4p_state::px4p)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_IO_MAP(px4p_io)
- MCFG_NVRAM_ADD_0FILL("rdnvram")
+ NVRAM(config, "rdnvram", nvram_device::DEFAULT_ALL_0);
MCFG_PALETTE_MODIFY("palette")
MCFG_PALETTE_INIT_OWNER(px4p_state, px4p)
diff --git a/src/mame/drivers/qdrmfgp.cpp b/src/mame/drivers/qdrmfgp.cpp
index 4bade35c9a4..ef08a1191e5 100644
--- a/src/mame/drivers/qdrmfgp.cpp
+++ b/src/mame/drivers/qdrmfgp.cpp
@@ -531,7 +531,7 @@ MACHINE_CONFIG_START(qdrmfgp_state::qdrmfgp)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", qdrmfgp_state, qdrmfgp_interrupt, "screen", 0, 1)
MCFG_MACHINE_START_OVERRIDE(qdrmfgp_state,qdrmfgp)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
ATA_INTERFACE(config, m_ata).options(ata_devices, "hdd", nullptr, true);
m_ata->irq_handler().set(FUNC(qdrmfgp_state::ide_interrupt));
@@ -577,7 +577,7 @@ MACHINE_CONFIG_START(qdrmfgp_state::qdrmfgp2)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", qdrmfgp_state, qdrmfgp2_interrupt)
MCFG_MACHINE_START_OVERRIDE(qdrmfgp_state,qdrmfgp2)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
ATA_INTERFACE(config, m_ata).options(ata_devices, "hdd", nullptr, true);
m_ata->irq_handler().set(FUNC(qdrmfgp_state::gp2_ide_interrupt));
diff --git a/src/mame/drivers/qix.cpp b/src/mame/drivers/qix.cpp
index d7f29cab706..1546e5dd666 100644
--- a/src/mame/drivers/qix.cpp
+++ b/src/mame/drivers/qix.cpp
@@ -611,7 +611,7 @@ MACHINE_CONFIG_START(qix_state::qix_base)
/* Zookeeper settings and high score table seem especially sensitive to this */
MCFG_QUANTUM_PERFECT_CPU("maincpu")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
PIA6821(config, m_pia0, 0);
m_pia0->readpa_handler().set_ioport("P1");
diff --git a/src/mame/drivers/quickpick5.cpp b/src/mame/drivers/quickpick5.cpp
index cb695c2dba6..748792ef19d 100644
--- a/src/mame/drivers/quickpick5.cpp
+++ b/src/mame/drivers/quickpick5.cpp
@@ -431,7 +431,7 @@ MACHINE_CONFIG_START(quickpick5_state::quickpick5)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfxdecode_device::empty)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* sound hardware */
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/qvt201.cpp b/src/mame/drivers/qvt201.cpp
index 81375947225..8b415757045 100644
--- a/src/mame/drivers/qvt201.cpp
+++ b/src/mame/drivers/qvt201.cpp
@@ -116,7 +116,7 @@ MACHINE_CONFIG_START(qvt201_state::qvt201)
MCFG_RS232_RXD_HANDLER(WRITELINE("duart", scn2681_device, rx_b_w))
MCFG_RS232_DSR_HANDLER(WRITELINE("duart", scn2681_device, ip4_w))
- MCFG_NVRAM_ADD_0FILL("nvram") // TC5516APL-2 or uPD446C-2 + battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // TC5516APL-2 or uPD446C-2 + battery
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(48.654_MHz_XTAL / 3, 102 * 10, 0, 80 * 10, 265, 0, 250)
diff --git a/src/mame/drivers/qvt6800.cpp b/src/mame/drivers/qvt6800.cpp
index 3c44d039870..8c0758a8e3c 100644
--- a/src/mame/drivers/qvt6800.cpp
+++ b/src/mame/drivers/qvt6800.cpp
@@ -73,7 +73,7 @@ MACHINE_CONFIG_START(qvt6800_state::qvt102)
MCFG_DEVICE_ADD("maincpu", M6800, XTAL(16'669'800) / 18)
MCFG_DEVICE_PROGRAM_MAP(qvt102_mem_map)
- MCFG_NVRAM_ADD_0FILL("nvram") // 2x TC5514-APL + 3V battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // 2x TC5514-APL + 3V battery
//MCFG_DEVICE_ADD("crtc", MC6845, XTAL(16'669'800) / 9)
@@ -103,7 +103,7 @@ MACHINE_CONFIG_START(qvt6800_state::qvt190)
MCFG_DEVICE_ADD("maincpu", M6800, XTAL(16'669'800) / 9)
MCFG_DEVICE_PROGRAM_MAP(qvt190_mem_map)
- MCFG_NVRAM_ADD_0FILL("nvram") // V61C16P55L + battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // V61C16P55L + battery
MCFG_DEVICE_ADD("acia1", ACIA6850, 0)
diff --git a/src/mame/drivers/r2dtank.cpp b/src/mame/drivers/r2dtank.cpp
index 3798b9c26fa..7d5feaa3c0c 100644
--- a/src/mame/drivers/r2dtank.cpp
+++ b/src/mame/drivers/r2dtank.cpp
@@ -448,7 +448,7 @@ MACHINE_CONFIG_START(r2dtank_state::r2dtank)
MCFG_DEVICE_ADD("audiocpu", M6802,3000000) /* ?? */
MCFG_DEVICE_PROGRAM_MAP(r2dtank_audio_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/rainbow.cpp b/src/mame/drivers/rainbow.cpp
index 05c95badf11..b3cd2a86824 100644
--- a/src/mame/drivers/rainbow.cpp
+++ b/src/mame/drivers/rainbow.cpp
@@ -3349,7 +3349,7 @@ MACHINE_CONFIG_START(rainbow_state::rainbow)
MCFG_TIMER_DRIVER_ADD_PERIODIC("motor", rainbow_state, hd_motor_tick, attotime::from_hz(60))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
//----------------------------------------------------------------------------------------
diff --git a/src/mame/drivers/rc759.cpp b/src/mame/drivers/rc759.cpp
index 7eed3950d12..f6196d16215 100644
--- a/src/mame/drivers/rc759.cpp
+++ b/src/mame/drivers/rc759.cpp
@@ -544,7 +544,7 @@ MACHINE_CONFIG_START(rc759_state::rc759)
MCFG_PIC8259_OUT_INT_CB(WRITELINE("maincpu", i80186_cpu_device, int0_w))
// nvram
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("nvram", rc759_state, nvram_init)
+ NVRAM(config, "nvram").set_custom_handler(FUNC(rc759_state::nvram_init));
// ppi
MCFG_DEVICE_ADD("ppi", I8255, 0)
diff --git a/src/mame/drivers/rd110.cpp b/src/mame/drivers/rd110.cpp
index 0564989ad84..b435ea34160 100644
--- a/src/mame/drivers/rd110.cpp
+++ b/src/mame/drivers/rd110.cpp
@@ -238,18 +238,17 @@ void d110_state::d110_io(address_map &map)
}
MACHINE_CONFIG_START(d110_state::d110)
- MCFG_DEVICE_ADD( "maincpu", P8098, XTAL(12'000'000) )
+ MCFG_DEVICE_ADD( m_maincpu, P8098, XTAL(12'000'000) )
MCFG_DEVICE_PROGRAM_MAP( d110_map )
MCFG_DEVICE_IO_MAP( d110_io )
// Battery-backed main ram
RAM( config, "ram" ).set_default_size( "32K" );
- MCFG_NVRAM_ADD_0FILL( "rams" )
-
+ NVRAM(config, m_rams, nvram_device::DEFAULT_ALL_0);
// Shall become a proper memcard device someday
- RAM( config, "memc" ).set_default_size( "32K" );
- MCFG_NVRAM_ADD_0FILL( "memcs" )
+ RAM( config, m_memc ).set_default_size( "32K" );
+ NVRAM( config, m_memcs, nvram_device::DEFAULT_ALL_0 );
MCFG_SCREEN_ADD( "screen", LCD )
MCFG_SCREEN_REFRESH_RATE(50)
@@ -262,9 +261,9 @@ MACHINE_CONFIG_START(d110_state::d110)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(d110_state, d110)
- MCFG_MSM6222B_01_ADD( "lcd" )
+ MCFG_MSM6222B_01_ADD( m_lcd )
- MCFG_TIMER_DRIVER_ADD( "midi_timer", d110_state, midi_timer_cb )
+ MCFG_TIMER_DRIVER_ADD( m_midi_timer, d110_state, midi_timer_cb )
MCFG_TIMER_DRIVER_ADD_PERIODIC( "samples_timer", d110_state, samples_timer_cb, attotime::from_hz(32000*2) )
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/re900.cpp b/src/mame/drivers/re900.cpp
index 6c5d7b34554..5dba489ae58 100644
--- a/src/mame/drivers/re900.cpp
+++ b/src/mame/drivers/re900.cpp
@@ -403,7 +403,7 @@ MACHINE_CONFIG_START(re900_state::re900)
//vdp.int_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
SCREEN(config, "screen", SCREEN_TYPE_RASTER);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* sound hardware */
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/risc2500.cpp b/src/mame/drivers/risc2500.cpp
index d53ded4c2e8..b46bd228262 100644
--- a/src/mame/drivers/risc2500.cpp
+++ b/src/mame/drivers/risc2500.cpp
@@ -335,7 +335,7 @@ MACHINE_CONFIG_START(risc2500_state::risc2500)
RAM(config, m_ram).set_default_size("2M").set_extra_options("128K, 256K, 512K, 1M, 2M");
- MCFG_NVRAM_ADD_NO_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_NONE);
/* sound hardware */
SPEAKER(config, "speaker").front_center();
diff --git a/src/mame/drivers/rmhaihai.cpp b/src/mame/drivers/rmhaihai.cpp
index 8115e0bd9b3..f7e5716c93e 100644
--- a/src/mame/drivers/rmhaihai.cpp
+++ b/src/mame/drivers/rmhaihai.cpp
@@ -512,7 +512,7 @@ MACHINE_CONFIG_START(rmhaihai_state::rmhaihai)
MCFG_DEVICE_IO_MAP(rmhaihai_io_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", rmhaihai_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/roul.cpp b/src/mame/drivers/roul.cpp
index 246217105e1..4c84a53f3bc 100644
--- a/src/mame/drivers/roul.cpp
+++ b/src/mame/drivers/roul.cpp
@@ -321,7 +321,7 @@ MACHINE_CONFIG_START(roul_state::roul)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MCFG_DEVICE_IO_MAP(sound_cpu_io_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
diff --git a/src/mame/drivers/royalmah.cpp b/src/mame/drivers/royalmah.cpp
index 839f16fef12..6c8e6349bbc 100644
--- a/src/mame/drivers/royalmah.cpp
+++ b/src/mame/drivers/royalmah.cpp
@@ -3481,7 +3481,7 @@ MACHINE_CONFIG_START(royalmah_state::royalmah)
MCFG_DEVICE_IO_MAP(royalmah_iomap)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", royalmah_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_PALETTE_ADD("palette", 16*2)
diff --git a/src/mame/drivers/s11.cpp b/src/mame/drivers/s11.cpp
index 4f5fa1f06dc..10917b22ec5 100644
--- a/src/mame/drivers/s11.cpp
+++ b/src/mame/drivers/s11.cpp
@@ -440,7 +440,7 @@ MACHINE_CONFIG_START(s11_state::s11)
m_pia34->irqa_handler().set(FUNC(s11_state::pia_irq));
m_pia34->irqb_handler().set(FUNC(s11_state::pia_irq));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Add the soundcard */
MCFG_DEVICE_ADD("audiocpu", M6808, XTAL(4'000'000))
diff --git a/src/mame/drivers/s11a.cpp b/src/mame/drivers/s11a.cpp
index 44810b4d6c4..d42e9c79466 100644
--- a/src/mame/drivers/s11a.cpp
+++ b/src/mame/drivers/s11a.cpp
@@ -232,7 +232,7 @@ MACHINE_CONFIG_START(s11a_state::s11a)
m_pia34->irqa_handler().set(FUNC(s11_state::pia_irq));
m_pia34->irqb_handler().set(FUNC(s11_state::pia_irq));
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* Add the soundcard */
MCFG_DEVICE_ADD("audiocpu", M6802, XTAL(4'000'000))
diff --git a/src/mame/drivers/s11b.cpp b/src/mame/drivers/s11b.cpp
index 9f8fcbe6968..d8ac786e597 100644
--- a/src/mame/drivers/s11b.cpp
+++ b/src/mame/drivers/s11b.cpp
@@ -308,7 +308,7 @@ MACHINE_CONFIG_START(s11b_state::s11b)
m_pia34->irqa_handler().set(FUNC(s11_state::pia_irq));
m_pia34->irqb_handler().set(FUNC(s11_state::pia_irq));
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* Add the soundcard */
MCFG_DEVICE_ADD("audiocpu", M6802, XTAL(4'000'000))
diff --git a/src/mame/drivers/s11c.cpp b/src/mame/drivers/s11c.cpp
index f962cb7229a..14c7aaa059b 100644
--- a/src/mame/drivers/s11c.cpp
+++ b/src/mame/drivers/s11c.cpp
@@ -211,7 +211,7 @@ MACHINE_CONFIG_START(s11c_state::s11c)
m_pia34->irqa_handler().set(FUNC(s11_state::pia_irq));
m_pia34->irqb_handler().set(FUNC(s11_state::pia_irq));
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
// generic sound board is not used in System 11C, except for Star Trax
diff --git a/src/mame/drivers/s3.cpp b/src/mame/drivers/s3.cpp
index c80b4c355e2..3c0b7261150 100644
--- a/src/mame/drivers/s3.cpp
+++ b/src/mame/drivers/s3.cpp
@@ -485,7 +485,7 @@ MACHINE_CONFIG_START(s3_state::s3)
m_pia30->irqa_handler().set_inputline("maincpu", M6800_IRQ_LINE);
m_pia30->irqb_handler().set_inputline("maincpu", M6800_IRQ_LINE);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(s3_state::s3a)
diff --git a/src/mame/drivers/s4.cpp b/src/mame/drivers/s4.cpp
index c29439537aa..d20a91c419c 100644
--- a/src/mame/drivers/s4.cpp
+++ b/src/mame/drivers/s4.cpp
@@ -479,7 +479,7 @@ MACHINE_CONFIG_START(s4_state::s4)
m_pia30->irqa_handler().set_inputline("maincpu", M6800_IRQ_LINE);
m_pia30->irqb_handler().set_inputline("maincpu", M6800_IRQ_LINE);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(s4_state::s4a)
diff --git a/src/mame/drivers/s6.cpp b/src/mame/drivers/s6.cpp
index 397b9236be0..56160bc2d06 100644
--- a/src/mame/drivers/s6.cpp
+++ b/src/mame/drivers/s6.cpp
@@ -455,7 +455,7 @@ MACHINE_CONFIG_START(s6_state::s6)
m_pia30->irqa_handler().set(FUNC(s6_state::pia_irq));
m_pia30->irqb_handler().set(FUNC(s6_state::pia_irq));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Add the soundcard */
MCFG_DEVICE_ADD("audiocpu", M6802, 3580000)
diff --git a/src/mame/drivers/s6a.cpp b/src/mame/drivers/s6a.cpp
index 552642795c2..a8a20e9ecc7 100644
--- a/src/mame/drivers/s6a.cpp
+++ b/src/mame/drivers/s6a.cpp
@@ -438,7 +438,7 @@ MACHINE_CONFIG_START(s6a_state::s6a)
m_pia30->irqa_handler().set(FUNC(s6a_state::pia_irq));
m_pia30->irqb_handler().set(FUNC(s6a_state::pia_irq));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Add the soundcard */
MCFG_DEVICE_ADD("audiocpu", M6802, 3580000)
diff --git a/src/mame/drivers/s7.cpp b/src/mame/drivers/s7.cpp
index cae468527d0..14c856744a2 100644
--- a/src/mame/drivers/s7.cpp
+++ b/src/mame/drivers/s7.cpp
@@ -490,7 +490,7 @@ MACHINE_CONFIG_START(s7_state::s7)
m_pia30->irqa_handler().set_inputline("maincpu", M6808_IRQ_LINE);
m_pia30->irqb_handler().set_inputline("maincpu", M6808_IRQ_LINE);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Add the soundcard */
MCFG_DEVICE_ADD("audiocpu", M6808, 3580000)
diff --git a/src/mame/drivers/s8.cpp b/src/mame/drivers/s8.cpp
index 4ace77fe10e..a8a567c99e3 100644
--- a/src/mame/drivers/s8.cpp
+++ b/src/mame/drivers/s8.cpp
@@ -361,7 +361,7 @@ MACHINE_CONFIG_START(s8_state::s8)
m_pia30->irqa_handler().set(FUNC(s8_state::pia_irq));
m_pia30->irqb_handler().set(FUNC(s8_state::pia_irq));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Add the soundcard */
MCFG_DEVICE_ADD("audiocpu", M6808, XTAL(4'000'000))
diff --git a/src/mame/drivers/s8a.cpp b/src/mame/drivers/s8a.cpp
index 2d36bfd16f2..9eb3ff69f20 100644
--- a/src/mame/drivers/s8a.cpp
+++ b/src/mame/drivers/s8a.cpp
@@ -333,7 +333,7 @@ MACHINE_CONFIG_START(s8a_state::s8a)
m_pia30->irqa_handler().set(FUNC(s8a_state::pia_irq));
m_pia30->irqb_handler().set(FUNC(s8a_state::pia_irq));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Add the soundcard */
MCFG_DEVICE_ADD("audiocpu", M6808, XTAL(4'000'000))
diff --git a/src/mame/drivers/s9.cpp b/src/mame/drivers/s9.cpp
index 195cc91b26d..75639234967 100644
--- a/src/mame/drivers/s9.cpp
+++ b/src/mame/drivers/s9.cpp
@@ -367,7 +367,7 @@ MACHINE_CONFIG_START(s9_state::s9)
m_pia30->irqa_handler().set(FUNC(s9_state::pia_irq));
m_pia30->irqb_handler().set(FUNC(s9_state::pia_irq));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Add the soundcard */
MCFG_DEVICE_ADD("audiocpu", M6808, XTAL(4'000'000))
diff --git a/src/mame/drivers/sanremo.cpp b/src/mame/drivers/sanremo.cpp
index 1c49845328e..6ed2c6e639c 100644
--- a/src/mame/drivers/sanremo.cpp
+++ b/src/mame/drivers/sanremo.cpp
@@ -362,7 +362,7 @@ MACHINE_CONFIG_START(sanremo_state::sanremo)
MCFG_DEVICE_IO_MAP(sanremo_portmap)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", sanremo_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/saturn.cpp b/src/mame/drivers/saturn.cpp
index e5956c075bf..3da8518c105 100644
--- a/src/mame/drivers/saturn.cpp
+++ b/src/mame/drivers/saturn.cpp
@@ -831,7 +831,7 @@ MACHINE_CONFIG_START(sat_console_state::saturn)
MCFG_MACHINE_START_OVERRIDE(sat_console_state,saturn)
MCFG_MACHINE_RESET_OVERRIDE(sat_console_state,saturn)
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("nvram", sat_console_state, nvram_init)
+ NVRAM(config, "nvram").set_custom_handler(FUNC(sat_console_state::nvram_init));
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/sauro.cpp b/src/mame/drivers/sauro.cpp
index 12f8ba7f581..524098826c9 100644
--- a/src/mame/drivers/sauro.cpp
+++ b/src/mame/drivers/sauro.cpp
@@ -454,7 +454,7 @@ MACHINE_CONFIG_START(sauro_state::tecfri)
LS259(config, m_mainlatch);
m_mainlatch->q_out_cb<4>().set(FUNC(sauro_state::irq_reset_w));
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/sderby.cpp b/src/mame/drivers/sderby.cpp
index 08cb316ae04..05050f26ffb 100644
--- a/src/mame/drivers/sderby.cpp
+++ b/src/mame/drivers/sderby.cpp
@@ -605,7 +605,7 @@ MACHINE_CONFIG_START(sderby_state::sderby)
MCFG_DEVICE_PROGRAM_MAP(sderby_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", sderby_state, irq2_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -630,7 +630,7 @@ MACHINE_CONFIG_START(sderby_state::sderbya)
MCFG_DEVICE_PROGRAM_MAP(sderbya_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", sderby_state, irq2_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -655,7 +655,7 @@ MACHINE_CONFIG_START(sderby_state::luckboom)
MCFG_DEVICE_PROGRAM_MAP(luckboom_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", sderby_state, irq4_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -680,7 +680,7 @@ MACHINE_CONFIG_START(sderby_state::spacewin)
MCFG_DEVICE_PROGRAM_MAP(spacewin_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", sderby_state, irq2_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -705,7 +705,7 @@ MACHINE_CONFIG_START(sderby_state::shinygld)
MCFG_DEVICE_PROGRAM_MAP(shinygld_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", sderby_state, irq4_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(57.47) // measured on PCB
@@ -730,7 +730,7 @@ MACHINE_CONFIG_START(sderby_state::pmroulet)
MCFG_DEVICE_PROGRAM_MAP(roulette_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", sderby_state, irq2_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/seattle.cpp b/src/mame/drivers/seattle.cpp
index 27ac8f4f7be..848f6cd8e3d 100644
--- a/src/mame/drivers/seattle.cpp
+++ b/src/mame/drivers/seattle.cpp
@@ -1916,8 +1916,7 @@ MACHINE_CONFIG_START(seattle_state::seattle_common)
MCFG_VOODOO_VBLANK_CB(WRITELINE(*this, seattle_state, vblank_assert))
MCFG_VOODOO_STALL_CB(WRITELINE(PCI_ID_GALILEO, gt64xxx_device, pci_stall))
-
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* video hardware */
MCFG_SCREEN_ADD(m_screen, RASTER)
diff --git a/src/mame/drivers/segac2.cpp b/src/mame/drivers/segac2.cpp
index 2269471757e..5bfd3f28a5c 100644
--- a/src/mame/drivers/segac2.cpp
+++ b/src/mame/drivers/segac2.cpp
@@ -1551,7 +1551,7 @@ MACHINE_CONFIG_START(segac2_state::segac)
MCFG_MACHINE_START_OVERRIDE(segac2_state,segac2)
MCFG_MACHINE_RESET_OVERRIDE(segac2_state,segac2)
- MCFG_NVRAM_ADD_1FILL("nvram") // borencha requires 0xff fill or there is no sound (it lacks some of the init code of the borench set)
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1); // borencha requires 0xff fill or there is no sound (it lacks some of the init code of the borench set)
sega_315_5296_device &io(SEGA_315_5296(config, "io", XL2_CLOCK/6)); // clock divider guessed
io.in_pa_callback().set_ioport("P1");
diff --git a/src/mame/drivers/segajw.cpp b/src/mame/drivers/segajw.cpp
index 75910127bf2..0663a496d53 100644
--- a/src/mame/drivers/segajw.cpp
+++ b/src/mame/drivers/segajw.cpp
@@ -382,7 +382,7 @@ MACHINE_CONFIG_START(segajw_state::segajw)
MCFG_QUANTUM_TIME(attotime::from_hz(2000))
- MCFG_NVRAM_ADD_NO_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_NONE);
sega_315_5296_device &io1a(SEGA_315_5296(config, "io1a", 0)); // unknown clock
io1a.out_pa_callback().set(FUNC(segajw_state::coin_counter_w));
diff --git a/src/mame/drivers/segaorun.cpp b/src/mame/drivers/segaorun.cpp
index 4e292356048..3dde01d107f 100644
--- a/src/mame/drivers/segaorun.cpp
+++ b/src/mame/drivers/segaorun.cpp
@@ -1216,12 +1216,12 @@ MACHINE_CONFIG_START(segaorun_state::outrundx)
MCFG_DEVICE_ADD("sprites", SEGA_OUTRUN_SPRITES, 0)
MACHINE_CONFIG_END
-MACHINE_CONFIG_START(segaorun_state::outrun)
+void segaorun_state::outrun(machine_config &config)
+{
outrundx(config);
- // basic machine hardware
- MCFG_NVRAM_ADD_0FILL("nvram")
-MACHINE_CONFIG_END
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
+}
MACHINE_CONFIG_START(segaorun_state::outrun_fd1094)
outrun(config);
@@ -1254,7 +1254,7 @@ MACHINE_CONFIG_START(segaorun_state::shangon)
MCFG_I8255_IN_PORTC_CB(READ8(*this, segaorun_state, unknown_portc_r))
MCFG_I8255_OUT_PORTC_CB(WRITE8(*this, segaorun_state, video_control_w))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// video hardware
MCFG_SCREEN_MODIFY("screen")
diff --git a/src/mame/drivers/segas16a.cpp b/src/mame/drivers/segas16a.cpp
index 495e4db3d62..7c23c8544a0 100644
--- a/src/mame/drivers/segas16a.cpp
+++ b/src/mame/drivers/segas16a.cpp
@@ -1983,7 +1983,7 @@ MACHINE_CONFIG_START(segas16a_state::system16a)
MCFG_I8243_ADD("n7751_8243", CONSTANT(0), WRITE8(*this, segas16a_state,n7751_rom_offset_w))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/segas16b.cpp b/src/mame/drivers/segas16b.cpp
index 58d995f97e9..185727ea2e3 100644
--- a/src/mame/drivers/segas16b.cpp
+++ b/src/mame/drivers/segas16b.cpp
@@ -3726,7 +3726,7 @@ MACHINE_CONFIG_START(segas16b_state::system16b)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MCFG_DEVICE_IO_MAP(sound_portmap)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("mapper", SEGA_315_5195_MEM_MAPPER, MASTER_CLOCK_10MHz)
MCFG_SEGA_315_5195_CPU("maincpu")
@@ -3929,7 +3929,7 @@ MACHINE_CONFIG_START(segas16b_state::lockonph)
MCFG_DEVICE_IO_MAP(lockonph_sound_iomap)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// video hardware
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_lockonph)
diff --git a/src/mame/drivers/segas18.cpp b/src/mame/drivers/segas18.cpp
index e87bba96026..a18216ca514 100644
--- a/src/mame/drivers/segas18.cpp
+++ b/src/mame/drivers/segas18.cpp
@@ -1318,7 +1318,7 @@ MACHINE_CONFIG_START(segas18_state::system18)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MCFG_DEVICE_IO_MAP(sound_portmap)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("mapper", SEGA_315_5195_MEM_MAPPER, 10000000)
MCFG_SEGA_315_5195_CPU("maincpu")
diff --git a/src/mame/drivers/segas24.cpp b/src/mame/drivers/segas24.cpp
index 29a998b7728..d952187fa00 100644
--- a/src/mame/drivers/segas24.cpp
+++ b/src/mame/drivers/segas24.cpp
@@ -1925,10 +1925,11 @@ void segas24_state::mahmajn(machine_config &config)
io.out_pd_callback().set(FUNC(segas24_state::mahmajn_mux_w));
}
-MACHINE_CONFIG_START(segas24_state::system24_floppy)
+void segas24_state::system24_floppy(machine_config &config)
+{
system24(config);
- MCFG_NVRAM_ADD_NO_FILL("floppy_nvram")
-MACHINE_CONFIG_END
+ NVRAM(config, "floppy_nvram", nvram_device::DEFAULT_NONE);
+}
MACHINE_CONFIG_START(segas24_state::system24_floppy_hotrod)
system24_floppy(config);
diff --git a/src/mame/drivers/segaxbd.cpp b/src/mame/drivers/segaxbd.cpp
index 3921e3f34d5..a03e3ed5b57 100644
--- a/src/mame/drivers/segaxbd.cpp
+++ b/src/mame/drivers/segaxbd.cpp
@@ -1674,8 +1674,8 @@ MACHINE_CONFIG_START(segaxbd_state::xboard_base_mconfig )
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MCFG_DEVICE_IO_MAP(sound_portmap)
- MCFG_NVRAM_ADD_0FILL("backup1")
- MCFG_NVRAM_ADD_0FILL("backup2")
+ NVRAM(config, "backup1", nvram_device::DEFAULT_ALL_0);
+ NVRAM(config, "backup2", nvram_device::DEFAULT_ALL_0);
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
MCFG_MB3773_ADD("watchdog")
diff --git a/src/mame/drivers/segaybd.cpp b/src/mame/drivers/segaybd.cpp
index e62a912694c..10a00750d66 100644
--- a/src/mame/drivers/segaybd.cpp
+++ b/src/mame/drivers/segaybd.cpp
@@ -1287,7 +1287,7 @@ MACHINE_CONFIG_START(segaybd_state::yboard)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MCFG_DEVICE_IO_MAP(sound_portmap)
- MCFG_NVRAM_ADD_0FILL("backupram")
+ NVRAM(config, "backupram", nvram_device::DEFAULT_ALL_0);
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
MCFG_MB3773_ADD("watchdog") // IC95
diff --git a/src/mame/drivers/seicross.cpp b/src/mame/drivers/seicross.cpp
index 751e69e4e38..58d52bd2085 100644
--- a/src/mame/drivers/seicross.cpp
+++ b/src/mame/drivers/seicross.cpp
@@ -445,7 +445,7 @@ MACHINE_CONFIG_START(seicross_state::nvram)
MCFG_DEVICE_MODIFY("mcu")
MCFG_DEVICE_PROGRAM_MAP(mcu_nvram_map)
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("nvram", seicross_state, nvram_init)
+ NVRAM(config, "nvram").set_custom_handler(FUNC(seicross_state::nvram_init));
MACHINE_CONFIG_END
MACHINE_CONFIG_START(seicross_state::friskytb)
diff --git a/src/mame/drivers/sengokmj.cpp b/src/mame/drivers/sengokmj.cpp
index 16173ca2ea0..69d4d740519 100644
--- a/src/mame/drivers/sengokmj.cpp
+++ b/src/mame/drivers/sengokmj.cpp
@@ -587,7 +587,7 @@ MACHINE_CONFIG_START(sengokmj_state::sengokmj)
MCFG_DEVICE_PROGRAM_MAP(seibu_sound_map)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DEVICE("seibu_sound", seibu_sound_device, im0_vector_cb)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/seta.cpp b/src/mame/drivers/seta.cpp
index 00a3e449d35..2ac44271546 100644
--- a/src/mame/drivers/seta.cpp
+++ b/src/mame/drivers/seta.cpp
@@ -8103,7 +8103,7 @@ MACHINE_CONFIG_START(seta_state::calibr50)
MCFG_WATCHDOG_ADD("watchdog")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("sub", M65C02, XTAL(16'000'000)/8) /* verified on pcb */
MCFG_DEVICE_PROGRAM_MAP(calibr50_sub_map)
@@ -8577,7 +8577,7 @@ MACHINE_CONFIG_START(setaroul_state::setaroul)
MCFG_SETA001_SPRITE_GFXDECODE("gfxdecode")
MCFG_SETA001_SPRITE_GFXBANK_CB(seta_state, setac_gfxbank_callback)
- MCFG_NVRAM_ADD_RANDOM_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_RANDOM);
/* devices */
MCFG_DEVICE_ADD("rtc", UPD4992, XTAL(32'768)) // ! Actually D4911C !
@@ -8780,7 +8780,7 @@ MACHINE_CONFIG_START(seta_state::zombraid)
MCFG_MACHINE_START_OVERRIDE(seta_state, zombraid)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
adc0834_device &adc(ADC0834(config, "adc", 0));
adc.set_input_callback(FUNC(seta_state::zombraid_adc_cb));
@@ -9275,7 +9275,7 @@ MACHINE_CONFIG_START(seta_state::kiwame)
MCFG_TMP68301_CPU("maincpu")
MCFG_TMP68301_OUT_PARALLEL_CB(WRITE16(*this, seta_state, kiwame_row_select_w))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("spritegen", SETA001_SPRITE, 0)
MCFG_SETA001_SPRITE_GFXDECODE("gfxdecode")
@@ -9838,7 +9838,7 @@ MACHINE_CONFIG_START(jockeyc_state::jockeyc)
MCFG_SETA001_SPRITE_GFXDECODE("gfxdecode")
MCFG_SETA001_SPRITE_GFXBANK_CB(seta_state, setac_gfxbank_callback)
- MCFG_NVRAM_ADD_RANDOM_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_RANDOM);
MCFG_MACHINE_START_OVERRIDE(jockeyc_state, jockeyc)
/* devices */
diff --git a/src/mame/drivers/seta2.cpp b/src/mame/drivers/seta2.cpp
index 51e0ccb96ee..d460b8925a6 100644
--- a/src/mame/drivers/seta2.cpp
+++ b/src/mame/drivers/seta2.cpp
@@ -2700,7 +2700,7 @@ MACHINE_CONFIG_START(seta2_state::reelquak)
MCFG_DEVICE_MODIFY("tmp68301")
MCFG_TMP68301_OUT_PARALLEL_CB(WRITE16(*this, seta2_state, reelquak_leds_w))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TICKET_DISPENSER_ADD("dispenser", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW)
// video hardware
@@ -2720,7 +2720,7 @@ MACHINE_CONFIG_START(seta2_state::samshoot)
MCFG_DEVICE_MODIFY("tmp68301")
MCFG_TMP68301_IN_PARALLEL_CB(IOPORT("DSW2"))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// video hardware
MCFG_SCREEN_MODIFY("screen")
@@ -2755,7 +2755,7 @@ MACHINE_CONFIG_START(seta2_state::telpacfl)
EEPROM_93C46_16BIT(config, "eeprom"); // not hooked up, seems unused
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_HOPPER_ADD("dispenser", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW)
// video hardware
@@ -2808,7 +2808,7 @@ MACHINE_CONFIG_START(funcube_state::funcube)
MCFG_FUNCUBE_TOUCHSCREEN_ADD("touchscreen", 200)
MCFG_FUNCUBE_TOUCHSCREEN_TX_CALLBACK(WRITELINE(":sub:sci1", h8_sci_device, rx_w))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/sfbonus.cpp b/src/mame/drivers/sfbonus.cpp
index 4845ccb0ced..1a72f30a918 100644
--- a/src/mame/drivers/sfbonus.cpp
+++ b/src/mame/drivers/sfbonus.cpp
@@ -1384,7 +1384,7 @@ MACHINE_CONFIG_START(sfbonus_state::sfbonus)
//MCFG_DEVICE_PERIODIC_INT_DRIVER(sfbonus_state, nmi_line_pulse, 100)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_sfbonus)
diff --git a/src/mame/drivers/sigmab52.cpp b/src/mame/drivers/sigmab52.cpp
index bfe95985d86..8ecf7b12726 100644
--- a/src/mame/drivers/sigmab52.cpp
+++ b/src/mame/drivers/sigmab52.cpp
@@ -607,7 +607,7 @@ MACHINE_CONFIG_START(sigmab52_state::jwildb52)
PTM6840(config, m_6840ptm_2, XTAL(8'000'000)/8); // FIXME
m_6840ptm_2->irq_callback().set(FUNC(sigmab52_state::ptm2_irq));
- MCFG_NVRAM_ADD_NO_FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_NONE);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/sigmab98.cpp b/src/mame/drivers/sigmab98.cpp
index 5660792b6f1..a9c436325e5 100644
--- a/src/mame/drivers/sigmab98.cpp
+++ b/src/mame/drivers/sigmab98.cpp
@@ -2849,7 +2849,7 @@ MACHINE_CONFIG_START(sigmab98_state::sigmab98)
MCFG_MACHINE_RESET_OVERRIDE(sigmab98_state, sigmab98)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
EEPROM_93C46_16BIT(config, "eeprom");
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_LOW )
@@ -2933,7 +2933,7 @@ MACHINE_CONFIG_START(lufykzku_state::lufykzku)
MCFG_MACHINE_RESET_OVERRIDE(lufykzku_state, lufykzku)
- MCFG_NVRAM_ADD_0FILL("nvram") // battery backed RAM
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // battery backed RAM
// No EEPROM
MCFG_DEVICE_ADD("watchdog_mb3773", MB3773, 0)
@@ -3004,7 +3004,7 @@ MACHINE_CONFIG_START(sigmab98_state::sammymdl)
MCFG_MACHINE_RESET_OVERRIDE(sigmab98_state, sammymdl )
- MCFG_NVRAM_ADD_0FILL("nvram") // battery backed RAM
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // battery backed RAM
EEPROM_93C46_8BIT(config, "eeprom");
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_LOW )
diff --git a/src/mame/drivers/skylncr.cpp b/src/mame/drivers/skylncr.cpp
index 82b203761d1..1d0fb3a2440 100644
--- a/src/mame/drivers/skylncr.cpp
+++ b/src/mame/drivers/skylncr.cpp
@@ -1653,7 +1653,7 @@ MACHINE_CONFIG_START(skylncr_state::skylncr)
MCFG_DEVICE_IO_MAP(io_map_skylncr)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", skylncr_state, skylncr_vblank_interrupt)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* 1x M5M82C255, or 2x PPI8255 */
MCFG_DEVICE_ADD("ppi8255_0", I8255A, 0)
diff --git a/src/mame/drivers/sm7238.cpp b/src/mame/drivers/sm7238.cpp
index ea7e782f3c5..e66fe8221db 100644
--- a/src/mame/drivers/sm7238.cpp
+++ b/src/mame/drivers/sm7238.cpp
@@ -371,7 +371,7 @@ MACHINE_CONFIG_START(sm7238_state::sm7238)
ADDRESS_MAP_BANK(config, "videobank").set_map(&sm7238_state::videobank_map).set_options(ENDIANNESS_LITTLE, 8, 32, 0x2000);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(20.625_MHz_XTAL, KSM_TOTAL_HORZ, 0, KSM_DISP_HORZ, KSM_TOTAL_VERT, 0, KSM_DISP_VERT);
diff --git a/src/mame/drivers/smsmcorp.cpp b/src/mame/drivers/smsmcorp.cpp
index fa767d73fd2..fe1690684e6 100644
--- a/src/mame/drivers/smsmcorp.cpp
+++ b/src/mame/drivers/smsmcorp.cpp
@@ -570,7 +570,7 @@ MACHINE_CONFIG_START(smsmfg_state::sms)
MCFG_I8255_IN_PORTB_CB(IOPORT("IN1"))
MCFG_I8255_IN_PORTC_CB(IOPORT("IN2"))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/snookr10.cpp b/src/mame/drivers/snookr10.cpp
index 1ea56a38e36..76bc0052afe 100644
--- a/src/mame/drivers/snookr10.cpp
+++ b/src/mame/drivers/snookr10.cpp
@@ -1046,7 +1046,7 @@ MACHINE_CONFIG_START(snookr10_state::snookr10)
MCFG_DEVICE_ADD("maincpu", M65SC02, MASTER_CLOCK/8) /* 2 MHz (1.999 MHz measured) */
MCFG_DEVICE_PROGRAM_MAP(snookr10_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
diff --git a/src/mame/drivers/spectra.cpp b/src/mame/drivers/spectra.cpp
index ea512f79daf..2bf0248e7a6 100644
--- a/src/mame/drivers/spectra.cpp
+++ b/src/mame/drivers/spectra.cpp
@@ -241,7 +241,7 @@ MACHINE_CONFIG_START(spectra_state::spectra)
riot.out_pb_callback().set(FUNC(spectra_state::portb_w));
riot.irq_callback().set_inputline("maincpu", M6502_IRQ_LINE);
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TIMER_DRIVER_ADD_PERIODIC("nmitimer", spectra_state, nmitimer, attotime::from_hz(120))
MCFG_TIMER_DRIVER_ADD_PERIODIC("outtimer", spectra_state, outtimer, attotime::from_hz(1200))
diff --git a/src/mame/drivers/spiders.cpp b/src/mame/drivers/spiders.cpp
index 8f3f00a9de9..392e600cda7 100644
--- a/src/mame/drivers/spiders.cpp
+++ b/src/mame/drivers/spiders.cpp
@@ -526,7 +526,7 @@ MACHINE_CONFIG_START(spiders_state::spiders)
MCFG_DEVICE_ADD("audiocpu", M6802, 3000000)
MCFG_DEVICE_PROGRAM_MAP(spiders_audio_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/spinb.cpp b/src/mame/drivers/spinb.cpp
index 3446c256487..116b0438acc 100644
--- a/src/mame/drivers/spinb.cpp
+++ b/src/mame/drivers/spinb.cpp
@@ -656,7 +656,7 @@ MACHINE_CONFIG_START(spinb_state::spinb)
MCFG_MCS51_PORT_P3_IN_CB(READ8(*this, spinb_state, p3_r))
MCFG_MCS51_PORT_P3_OUT_CB(WRITE8(*this, spinb_state, p3_w))
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* Video */
MCFG_SCREEN_ADD("screen", LCD)
diff --git a/src/mame/drivers/splus.cpp b/src/mame/drivers/splus.cpp
index 241ef796120..969eeada1f7 100644
--- a/src/mame/drivers/splus.cpp
+++ b/src/mame/drivers/splus.cpp
@@ -685,8 +685,8 @@ MACHINE_CONFIG_START(splus_state::splus) // basic machine hardware
MCFG_MCS51_PORT_P3_IN_CB(READ8(*this, splus_state, splus_p3_r))
// Fill NVRAM
- MCFG_NVRAM_ADD_0FILL("cmosl")
- MCFG_NVRAM_ADD_0FILL("cmosh")
+ NVRAM(config, "cmosl", nvram_device::DEFAULT_ALL_0);
+ NVRAM(config, "cmosh", nvram_device::DEFAULT_ALL_0);
// video hardware (ALL FAKE, NO VIDEO)
MCFG_PALETTE_ADD("palette", 16*16)
diff --git a/src/mame/drivers/spoker.cpp b/src/mame/drivers/spoker.cpp
index 0ab360e3a24..26bfe9d924d 100644
--- a/src/mame/drivers/spoker.cpp
+++ b/src/mame/drivers/spoker.cpp
@@ -615,7 +615,7 @@ MACHINE_CONFIG_START(spoker_state::spoker)
MCFG_DEVICE_IO_MAP(spoker_portmap)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", spoker_state, nmi_line_assert)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("ppi8255_0", I8255A, 0) // Control 0x8b --> A:out; B:input; C:input.
MCFG_I8255_OUT_PORTA_CB(WRITE8(*this, spoker_state, nmi_and_coins_w))
diff --git a/src/mame/drivers/srmp2.cpp b/src/mame/drivers/srmp2.cpp
index 066237f54dc..7a3e46c2163 100644
--- a/src/mame/drivers/srmp2.cpp
+++ b/src/mame/drivers/srmp2.cpp
@@ -1144,7 +1144,7 @@ MACHINE_CONFIG_START(srmp2_state::srmp2)
MCFG_DEVICE_PERIODIC_INT_DRIVER(srmp2_state, irq2_line_assert, 15*60) /* Interrupt times is not understood */
MCFG_MACHINE_START_OVERRIDE(srmp2_state,srmp2)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("spritegen", SETA001_SPRITE, 0)
MCFG_SETA001_SPRITE_GFXDECODE("gfxdecode")
@@ -1190,7 +1190,7 @@ MACHINE_CONFIG_START(srmp2_state::srmp3)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", srmp2_state, irq0_line_assert)
MCFG_MACHINE_START_OVERRIDE(srmp2_state,srmp3)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("spritegen", SETA001_SPRITE, 0)
MCFG_SETA001_SPRITE_GFXDECODE("gfxdecode")
@@ -1245,7 +1245,7 @@ MACHINE_CONFIG_START(srmp2_state::mjyuugi)
MCFG_MACHINE_START_OVERRIDE(srmp2_state,mjyuugi)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("spritegen", SETA001_SPRITE, 0)
MCFG_SETA001_SPRITE_GFXDECODE("gfxdecode")
diff --git a/src/mame/drivers/ssv.cpp b/src/mame/drivers/ssv.cpp
index 64dd8929298..ff1bd10e7a1 100644
--- a/src/mame/drivers/ssv.cpp
+++ b/src/mame/drivers/ssv.cpp
@@ -2591,7 +2591,7 @@ MACHINE_CONFIG_START(ssv_state::drifto94)
MCFG_QUANTUM_PERFECT_CPU("maincpu")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_MODIFY("screen")
@@ -2691,7 +2691,7 @@ MACHINE_CONFIG_START(ssv_state::meosism)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(meosism_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
@@ -2786,7 +2786,7 @@ MACHINE_CONFIG_START(ssv_state::stmblade)
/* don't need this, game just does a simple check at boot then the DSP stalls into a tight loop. */
// MCFG_QUANTUM_PERFECT_CPU("maincpu")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_VISIBLE_AREA(0, (0xd6-0x26)*2-1, 0, (0xfe - 0x0e)-1)
@@ -2825,7 +2825,7 @@ MACHINE_CONFIG_START(ssv_state::eaglshot)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(eaglshot_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("upd4701", UPD4701A, 0)
MCFG_UPD4701_PORTX("TRACKX")
@@ -2850,7 +2850,7 @@ MACHINE_CONFIG_START(ssv_state::sxyreact)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(sxyreact_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
@@ -2866,7 +2866,7 @@ MACHINE_CONFIG_START(ssv_state::sxyreac2)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(sxyreact_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
@@ -2882,7 +2882,7 @@ MACHINE_CONFIG_START(ssv_state::cairblad)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(sxyreact_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/st_mp100.cpp b/src/mame/drivers/st_mp100.cpp
index a82c9964c1b..720ee21fece 100644
--- a/src/mame/drivers/st_mp100.cpp
+++ b/src/mame/drivers/st_mp100.cpp
@@ -714,7 +714,7 @@ MACHINE_CONFIG_START(st_mp100_state::st_mp100)
MCFG_DEVICE_ADD("maincpu", M6800, 1000000) // no xtal, just 2 chips forming a random oscillator
MCFG_DEVICE_PROGRAM_MAP(st_mp100_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_st_mp100);
diff --git a/src/mame/drivers/st_mp200.cpp b/src/mame/drivers/st_mp200.cpp
index 638c330e2b1..13a8f1fce17 100644
--- a/src/mame/drivers/st_mp200.cpp
+++ b/src/mame/drivers/st_mp200.cpp
@@ -585,7 +585,7 @@ MACHINE_CONFIG_START(st_mp200_state::st_mp200)
MCFG_DEVICE_ADD("maincpu", M6800, 1000000) // no xtal, just 2 chips forming a random oscillator
MCFG_DEVICE_PROGRAM_MAP(st_mp200_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_st_mp200);
diff --git a/src/mame/drivers/statriv2.cpp b/src/mame/drivers/statriv2.cpp
index cc2f62928d4..363af7989f8 100644
--- a/src/mame/drivers/statriv2.cpp
+++ b/src/mame/drivers/statriv2.cpp
@@ -613,7 +613,7 @@ MACHINE_CONFIG_START(statriv2_state::statriv2)
MCFG_DEVICE_IO_MAP(statriv2_io_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", statriv2_state, statriv2_interrupt)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("ppi8255", I8255A, 0)
/* PPI 8255 group A & B set to Mode 0.
diff --git a/src/mame/drivers/stratos.cpp b/src/mame/drivers/stratos.cpp
index a8f62068a4d..90d40d42567 100644
--- a/src/mame/drivers/stratos.cpp
+++ b/src/mame/drivers/stratos.cpp
@@ -361,7 +361,7 @@ MACHINE_CONFIG_START(stratos_state::stratos)
MCFG_TIMER_DRIVER_ADD_PERIODIC("irq", stratos_state, irq_timer, attotime::from_hz(1000))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
ROM_START( stratos )
diff --git a/src/mame/drivers/stuntair.cpp b/src/mame/drivers/stuntair.cpp
index 09cab88127e..136ef6972f0 100644
--- a/src/mame/drivers/stuntair.cpp
+++ b/src/mame/drivers/stuntair.cpp
@@ -537,7 +537,7 @@ MACHINE_CONFIG_START(stuntair_state::stuntair)
mainlatch.q_out_cb<6>().set_nop(); // cleared at start
mainlatch.q_out_cb<7>().set_nop(); // cleared at start
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/subsino.cpp b/src/mame/drivers/subsino.cpp
index ac4c175220d..71ab1b821c1 100644
--- a/src/mame/drivers/subsino.cpp
+++ b/src/mame/drivers/subsino.cpp
@@ -2897,7 +2897,7 @@ MACHINE_CONFIG_START(subsino_state::stbsub)
MCFG_I8255_IN_PORTB_CB(IOPORT("INB"))
MCFG_I8255_IN_PORTC_CB(IOPORT("INA"))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW)
/* video hardware */
diff --git a/src/mame/drivers/subsino2.cpp b/src/mame/drivers/subsino2.cpp
index 7290fd2c733..7872e83f1b1 100644
--- a/src/mame/drivers/subsino2.cpp
+++ b/src/mame/drivers/subsino2.cpp
@@ -2385,7 +2385,7 @@ MACHINE_CONFIG_START(subsino2_state::bishjan)
MCFG_DEVICE_PROGRAM_MAP( bishjan_map )
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", subsino2_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH)
// video hardware
@@ -2436,7 +2436,7 @@ MACHINE_CONFIG_START(subsino2_state::mtrain)
MCFG_DEVICE_PROGRAM_MAP( mtrain_map )
MCFG_DEVICE_IO_MAP( mtrain_io )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// video hardware
MCFG_SCREEN_ADD("screen", RASTER)
@@ -2470,7 +2470,7 @@ MACHINE_CONFIG_START(subsino2_state::saklove)
MCFG_DEVICE_PROGRAM_MAP( saklove_map )
MCFG_DEVICE_IO_MAP( saklove_io )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// video hardware
MCFG_SCREEN_ADD("screen", RASTER)
@@ -2508,7 +2508,7 @@ MACHINE_CONFIG_START(subsino2_state::xplan)
MCFG_DEVICE_IO_MAP( xplan_io )
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", subsino2_state, am188em_int0_irq)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// video hardware
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/sun3.cpp b/src/mame/drivers/sun3.cpp
index a6a27497302..df958ac6cfe 100644
--- a/src/mame/drivers/sun3.cpp
+++ b/src/mame/drivers/sun3.cpp
@@ -983,7 +983,7 @@ MACHINE_CONFIG_START(sun3_state::sun3)
RAM(config, m_ram).set_default_size("4M").set_extra_options("6M,8M,12M,16M,20M,24M,28M,32M").set_default_value(0);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// MMU Type 0 device space
ADDRESS_MAP_BANK(config, "type0").set_map(&sun3_state::vmetype0space_map).set_options(ENDIANNESS_BIG, 32, 32, 0x80000000);
@@ -1065,7 +1065,7 @@ MACHINE_CONFIG_START(sun3_state::sun3_50)
MCFG_SCREEN_VISIBLE_AREA(0, 1152-1, 0, 900-1)
MCFG_SCREEN_REFRESH_RATE(72)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TIMER_DRIVER_ADD_PERIODIC("timer", sun3_state, sun3_timer, attotime::from_hz(100))
diff --git a/src/mame/drivers/supdrapo.cpp b/src/mame/drivers/supdrapo.cpp
index 9afd2b18787..b30755755f2 100644
--- a/src/mame/drivers/supdrapo.cpp
+++ b/src/mame/drivers/supdrapo.cpp
@@ -463,7 +463,7 @@ MACHINE_CONFIG_START(supdrapo_state::supdrapo)
MCFG_WATCHDOG_ADD("watchdog")
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/supercrd.cpp b/src/mame/drivers/supercrd.cpp
index af77e72a119..9e83a78dcde 100644
--- a/src/mame/drivers/supercrd.cpp
+++ b/src/mame/drivers/supercrd.cpp
@@ -423,7 +423,7 @@ MACHINE_CONFIG_START(supercrd_state::supercrd)
MCFG_DEVICE_ADD("maincpu", Z80, MASTER_CLOCK/8) /* 2MHz, guess */
MCFG_DEVICE_PROGRAM_MAP(supercrd_map)
-// MCFG_NVRAM_ADD_0FILL("nvram")
+// NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// MCFG_DEVICE_ADD("ppi8255_0", I8255, 0)
// MCFG_DEVICE_ADD("ppi8255_1", I8255, 0)
diff --git a/src/mame/drivers/suprnova.cpp b/src/mame/drivers/suprnova.cpp
index 14f81967688..f535f7d97e9 100644
--- a/src/mame/drivers/suprnova.cpp
+++ b/src/mame/drivers/suprnova.cpp
@@ -794,7 +794,7 @@ MACHINE_CONFIG_START(skns_state::skns)
MCFG_DEVICE_ADD("rtc", MSM6242, XTAL(32'768))
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TIMER_DRIVER_ADD_PERIODIC("int15_timer", skns_state, interrupt_callback, attotime::from_msec(2))
MCFG_TIMER_PARAM(15)
diff --git a/src/mame/drivers/taitopjc.cpp b/src/mame/drivers/taitopjc.cpp
index b96e43824a2..1587483a60d 100644
--- a/src/mame/drivers/taitopjc.cpp
+++ b/src/mame/drivers/taitopjc.cpp
@@ -797,7 +797,7 @@ MACHINE_CONFIG_START(taitopjc_state::taitopjc)
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/taitotz.cpp b/src/mame/drivers/taitotz.cpp
index 5771e51318f..9c7f95e4deb 100644
--- a/src/mame/drivers/taitotz.cpp
+++ b/src/mame/drivers/taitotz.cpp
@@ -2601,7 +2601,7 @@ MACHINE_CONFIG_START(taitotz_state::taitotz)
ata_interface_device &ata(ATA_INTERFACE(config, "ata").options(ata_devices, "hdd", nullptr, true));
ata.irq_handler().set(FUNC(taitotz_state::ide_interrupt));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
diff --git a/src/mame/drivers/tandy1t.cpp b/src/mame/drivers/tandy1t.cpp
index c9afd8f1931..800225b2817 100644
--- a/src/mame/drivers/tandy1t.cpp
+++ b/src/mame/drivers/tandy1t.cpp
@@ -662,7 +662,7 @@ MACHINE_CONFIG_START(tandy1000_state::tandy1000_common)
MCFG_DEVICE_ADD("sn76496", NCR7496, XTAL(14'318'181)/4)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mb:mono", 0.80)
- MCFG_NVRAM_ADD_0FILL("nvram");
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("isa_fdc", ISA8_SLOT, 0, "mb:isa", pc_isa8_cards, "fdc_xt", true) // FIXME: determine ISA bus clock
MCFG_SLOT_OPTION_MACHINE_CONFIG("fdc_xt", cfg_fdc_35)
diff --git a/src/mame/drivers/tapatune.cpp b/src/mame/drivers/tapatune.cpp
index a5a18d72188..7636c042fe9 100644
--- a/src/mame/drivers/tapatune.cpp
+++ b/src/mame/drivers/tapatune.cpp
@@ -529,7 +529,7 @@ MACHINE_CONFIG_START(tapatune_state::tapatune_base)
MCFG_DEVICE_IO_MAP(maincpu_io_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(tapatune_state, irq0_line_assert, XTAL(24'000'000) / 4 / 4 / 4096)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TICKET_DISPENSER_ADD("ticket", attotime::from_msec(100), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_LOW)
diff --git a/src/mame/drivers/tatsumi.cpp b/src/mame/drivers/tatsumi.cpp
index e7bf2ab40a6..f4713f0cf55 100644
--- a/src/mame/drivers/tatsumi.cpp
+++ b/src/mame/drivers/tatsumi.cpp
@@ -883,7 +883,7 @@ MACHINE_CONFIG_START(apache3_state::apache3)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", apache3_state, irq0_line_hold)
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_MACHINE_RESET_OVERRIDE(apache3_state, apache3)
m58990_device &adc(M58990(config, "adc", 1000000)); // unknown clock
diff --git a/src/mame/drivers/tceptor.cpp b/src/mame/drivers/tceptor.cpp
index c528c913bb0..8b5430ee0d5 100644
--- a/src/mame/drivers/tceptor.cpp
+++ b/src/mame/drivers/tceptor.cpp
@@ -343,7 +343,7 @@ MACHINE_CONFIG_START(tceptor_state::tceptor)
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
adc0809_device &adc(ADC0809(config, "adc", 1000000)); // unknown clock (needs to >640khz or the wait loop is too fast)
adc.in_callback<0>().set_constant(0); // unknown
diff --git a/src/mame/drivers/techno.cpp b/src/mame/drivers/techno.cpp
index c7349677157..b7d193944aa 100644
--- a/src/mame/drivers/techno.cpp
+++ b/src/mame/drivers/techno.cpp
@@ -292,7 +292,7 @@ MACHINE_CONFIG_START(techno_state::techno)
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000, XTAL(8'000'000))
MCFG_DEVICE_PROGRAM_MAP(techno_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
//MCFG_DEVICE_ADD("cpu2", TMS7000, XTAL(4'000'000))
//MCFG_DEVICE_PROGRAM_MAP(techno_sub_map)
diff --git a/src/mame/drivers/tetrisp2.cpp b/src/mame/drivers/tetrisp2.cpp
index d6cb166b29f..9e0d9831997 100644
--- a/src/mame/drivers/tetrisp2.cpp
+++ b/src/mame/drivers/tetrisp2.cpp
@@ -1699,7 +1699,7 @@ MACHINE_CONFIG_START(tetrisp2_state::tetrisp2)
MCFG_DEVICE_PROGRAM_MAP(tetrisp2_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", tetrisp2_state, irq2_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
MCFG_WATCHDOG_VBLANK_INIT("screen", 8) /* guess */
@@ -1735,7 +1735,7 @@ MACHINE_CONFIG_START(tetrisp2_state::nndmseal)
MCFG_DEVICE_PROGRAM_MAP(nndmseal_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", tetrisp2_state, irq2_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
@@ -1768,7 +1768,7 @@ MACHINE_CONFIG_START(tetrisp2_state::rockn)
MCFG_DEVICE_PROGRAM_MAP(rockn1_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", tetrisp2_state, irq2_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
@@ -1803,7 +1803,7 @@ MACHINE_CONFIG_START(tetrisp2_state::rockn2)
MCFG_DEVICE_PROGRAM_MAP(rockn2_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", tetrisp2_state, irq2_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
@@ -1842,7 +1842,7 @@ MACHINE_CONFIG_START(tetrisp2_state::rocknms)
MCFG_DEVICE_PROGRAM_MAP(rocknms_sub_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("lscreen", tetrisp2_state, irq2_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
@@ -1893,7 +1893,7 @@ MACHINE_CONFIG_START(stepstag_state::stepstag)
MCFG_DEVICE_PROGRAM_MAP(stepstag_sub_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("lscreen", tetrisp2_state, irq4_line_hold) // lev 6 triggered by main CPU
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
@@ -1961,7 +1961,7 @@ MACHINE_CONFIG_START(stepstag_state::vjdash) // 4 Screens
MCFG_DEVICE_PROGRAM_MAP(stepstag_sub_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("mscreen", tetrisp2_state, irq4_line_hold) // lev 6 triggered by main CPU
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/thedealr.cpp b/src/mame/drivers/thedealr.cpp
index 0864c2bff4a..018b6bf46cb 100644
--- a/src/mame/drivers/thedealr.cpp
+++ b/src/mame/drivers/thedealr.cpp
@@ -550,7 +550,7 @@ MACHINE_CONFIG_START(thedealr_state::thedealr)
MCFG_DEVICE_ADD("subcpu", R65C02, XTAL(16'000'000)/8) // 2 MHz?
MCFG_DEVICE_PROGRAM_MAP(thedealr_sub)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/ti74.cpp b/src/mame/drivers/ti74.cpp
index 049571fda7b..eb0af761923 100644
--- a/src/mame/drivers/ti74.cpp
+++ b/src/mame/drivers/ti74.cpp
@@ -526,7 +526,7 @@ MACHINE_CONFIG_START(ti74_state::ti74)
MCFG_TMS7000_OUT_PORTB_CB(WRITE8(*this, ti74_state, bankswitch_w))
MCFG_TMS7000_OUT_PORTE_CB(WRITE8(*this, ti74_state, keyboard_w))
- MCFG_NVRAM_ADD_0FILL("sysram.ic3")
+ NVRAM(config, "sysram.ic3", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", LCD)
@@ -562,7 +562,7 @@ MACHINE_CONFIG_START(ti74_state::ti95)
MCFG_TMS7000_OUT_PORTB_CB(WRITE8(*this, ti74_state, bankswitch_w))
MCFG_TMS7000_OUT_PORTE_CB(WRITE8(*this, ti74_state, keyboard_w))
- MCFG_NVRAM_ADD_0FILL("sysram.ic3")
+ NVRAM(config, "sysram.ic3", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", LCD)
diff --git a/src/mame/drivers/ti85.cpp b/src/mame/drivers/ti85.cpp
index 3f9faa2e09d..b5220820ce2 100644
--- a/src/mame/drivers/ti85.cpp
+++ b/src/mame/drivers/ti85.cpp
@@ -597,7 +597,7 @@ MACHINE_CONFIG_START(ti85_state::ti81)
MCFG_PALETTE_INDIRECT_ENTRIES(224)
MCFG_PALETTE_INIT_OWNER(ti85_state, ti85)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ti89.cpp b/src/mame/drivers/ti89.cpp
index e410df8fd64..b393233f79f 100644
--- a/src/mame/drivers/ti89.cpp
+++ b/src/mame/drivers/ti89.cpp
@@ -524,7 +524,7 @@ MACHINE_CONFIG_START(ti68k_state::ti89)
MCFG_DEVICE_ADD("maincpu", M68000, XTAL(10'000'000))
MCFG_DEVICE_PROGRAM_MAP(ti89_mem)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", LCD)
diff --git a/src/mame/drivers/tickee.cpp b/src/mame/drivers/tickee.cpp
index db343ee45bb..05a28b601fc 100644
--- a/src/mame/drivers/tickee.cpp
+++ b/src/mame/drivers/tickee.cpp
@@ -769,7 +769,7 @@ MACHINE_CONFIG_START(tickee_state::tickee)
MCFG_TMS340X0_SCANLINE_RGB32_CB(tickee_state, scanline_update) /* scanline callback (rgb32) */
MCFG_MACHINE_RESET_OVERRIDE(tickee_state,tickee)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TICKET_DISPENSER_ADD("ticket1", attotime::from_msec(100), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_HIGH)
MCFG_TICKET_DISPENSER_ADD("ticket2", attotime::from_msec(100), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_HIGH)
@@ -820,7 +820,7 @@ MACHINE_CONFIG_START(tickee_state::rapidfir)
MCFG_TMS340X0_FROM_SHIFTREG_CB(tickee_state, rapidfir_from_shiftreg) /* read from shiftreg function */
MCFG_MACHINE_RESET_OVERRIDE(tickee_state,rapidfir)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_WATCHDOG_ADD("watchdog")
@@ -852,7 +852,7 @@ MACHINE_CONFIG_START(tickee_state::mouseatk)
MCFG_TMS340X0_SCANLINE_RGB32_CB(tickee_state, scanline_update) /* scanline callback (rgb32) */
MCFG_MACHINE_RESET_OVERRIDE(tickee_state,tickee)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_TICKET_DISPENSER_ADD("ticket1", attotime::from_msec(100), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_HIGH)
MCFG_TICKET_DISPENSER_ADD("ticket2", attotime::from_msec(100), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_HIGH)
diff --git a/src/mame/drivers/tmaster.cpp b/src/mame/drivers/tmaster.cpp
index 224a72a1157..74cd9c3bf37 100644
--- a/src/mame/drivers/tmaster.cpp
+++ b/src/mame/drivers/tmaster.cpp
@@ -377,7 +377,7 @@ MACHINE_CONFIG_START(tmaster_state::tm)
MCFG_MICROTOUCH_ADD( "microtouch", 9600, WRITELINE("duart68681", mc68681_device, rx_a_w) )
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// video hardware
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/tmnt.cpp b/src/mame/drivers/tmnt.cpp
index 7cf0e02771b..a30eeb97b8b 100644
--- a/src/mame/drivers/tmnt.cpp
+++ b/src/mame/drivers/tmnt.cpp
@@ -1943,7 +1943,7 @@ MACHINE_CONFIG_START(tmnt_state::cuebrick)
MCFG_PALETTE_ENABLE_SHADOWS()
MCFG_PALETTE_ENABLE_HILIGHTS()
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_VIDEO_START_OVERRIDE(tmnt_state,cuebrick)
diff --git a/src/mame/drivers/toaplan2.cpp b/src/mame/drivers/toaplan2.cpp
index 8bb69223a7d..d55d901891e 100644
--- a/src/mame/drivers/toaplan2.cpp
+++ b/src/mame/drivers/toaplan2.cpp
@@ -3794,7 +3794,7 @@ MACHINE_CONFIG_START(toaplan2_state::pwrkick)
UPD4992(config, m_rtc);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
TICKET_DISPENSER(config, m_hopper, attotime::from_msec(PWRKICK_HOPPER_PULSE), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH);
@@ -3829,7 +3829,7 @@ MACHINE_CONFIG_START(toaplan2_state::othldrby)
UPD4992(config, m_rtc);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
diff --git a/src/mame/drivers/tomcat.cpp b/src/mame/drivers/tomcat.cpp
index b3603fde82b..4b63c4b5484 100644
--- a/src/mame/drivers/tomcat.cpp
+++ b/src/mame/drivers/tomcat.cpp
@@ -354,7 +354,7 @@ MACHINE_CONFIG_START(tomcat_state::tomcat)
m_mainlatch->q_out_cb<6>().set(FUNC(tomcat_state::ack_w));
m_mainlatch->q_out_cb<7>().set(FUNC(tomcat_state::txbuff_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/tonton.cpp b/src/mame/drivers/tonton.cpp
index 8290651a60f..a00e66a7782 100644
--- a/src/mame/drivers/tonton.cpp
+++ b/src/mame/drivers/tonton.cpp
@@ -229,7 +229,7 @@ MACHINE_CONFIG_START(tonton_state::tonton)
MCFG_DEVICE_PROGRAM_MAP(tonton_map)
MCFG_DEVICE_IO_MAP(tonton_io)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
diff --git a/src/mame/drivers/trackfld.cpp b/src/mame/drivers/trackfld.cpp
index 230ea47a91c..89046f80517 100644
--- a/src/mame/drivers/trackfld.cpp
+++ b/src/mame/drivers/trackfld.cpp
@@ -917,7 +917,7 @@ MACHINE_CONFIG_START(trackfld_state::trackfld)
m_mainlatch->q_out_cb<6>().set_nop(); // CN3.4
m_mainlatch->q_out_cb<7>().set(FUNC(trackfld_state::irq_mask_w)); // INT
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
@@ -993,7 +993,7 @@ MACHINE_CONFIG_START(trackfld_state::yieartf)
mainlatch.q_out_cb<6>().set_nop();
mainlatch.q_out_cb<7>().set(FUNC(trackfld_state::irq_mask_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_WATCHDOG_ADD("watchdog")
diff --git a/src/mame/drivers/triplhnt.cpp b/src/mame/drivers/triplhnt.cpp
index d7ef4d21c8a..58fa459194b 100644
--- a/src/mame/drivers/triplhnt.cpp
+++ b/src/mame/drivers/triplhnt.cpp
@@ -278,7 +278,7 @@ MACHINE_CONFIG_START(triplhnt_state::triplhnt)
MCFG_DEVICE_PROGRAM_MAP(triplhnt_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", triplhnt_state, irq0_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram") // battery-backed 74C89 at J5
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // battery-backed 74C89 at J5
F9334(config, m_latch); // J7
m_latch->q_out_cb<0>().set_nop(); // unused
diff --git a/src/mame/drivers/ttchamp.cpp b/src/mame/drivers/ttchamp.cpp
index b4bbad792c5..45cbb0df0bf 100644
--- a/src/mame/drivers/ttchamp.cpp
+++ b/src/mame/drivers/ttchamp.cpp
@@ -663,7 +663,7 @@ MACHINE_CONFIG_START(ttchamp_state::ttchamp)
MCFG_PALETTE_ADD("palette", 0x400)
- MCFG_NVRAM_ADD_0FILL("backram")
+ NVRAM(config, "backram", nvram_device::DEFAULT_ALL_0);
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/tv955.cpp b/src/mame/drivers/tv955.cpp
index 3139ada09ff..e95f79084e5 100644
--- a/src/mame/drivers/tv955.cpp
+++ b/src/mame/drivers/tv955.cpp
@@ -91,7 +91,7 @@ MACHINE_CONFIG_START(tv955_state::tv955)
MCFG_DEVICE_ADD("keyboard", I8049, 5.7143_MHz_XTAL)
- MCFG_NVRAM_ADD_0FILL("nvram") // HM6116LP-4 + 3.2V battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // HM6116LP-4 + 3.2V battery
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(19.3396_MHz_XTAL, 846, 0, 720, 381, 0, 364)
diff --git a/src/mame/drivers/tv965.cpp b/src/mame/drivers/tv965.cpp
index 472dc633463..8cb3ae3f92c 100644
--- a/src/mame/drivers/tv965.cpp
+++ b/src/mame/drivers/tv965.cpp
@@ -75,7 +75,7 @@ MACHINE_CONFIG_START(tv965_state::tv965)
MCFG_DEVICE_DATA_MAP(mem_map)
MCFG_DEVICE_PROGRAM_MAP(program_map)
- MCFG_NVRAM_ADD_0FILL("nvram") // CXK5864BP-10L + battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // CXK5864BP-10L + battery
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(26.9892_MHz_XTAL, 1020, 0, 800, 441, 0, 416)
diff --git a/src/mame/drivers/tv990.cpp b/src/mame/drivers/tv990.cpp
index 2a845f7546e..b40f1817799 100644
--- a/src/mame/drivers/tv990.cpp
+++ b/src/mame/drivers/tv990.cpp
@@ -416,7 +416,7 @@ MACHINE_CONFIG_START(tv990_state::tv990)
m_kbdc->set_keyboard_type(kbdc8042_device::KBDC8042_AT386);
m_kbdc->input_buffer_full_callback().set_inputline("maincpu", M68K_IRQ_2);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("beep", BEEP, 1000); //whats the freq?
diff --git a/src/mame/drivers/twin16.cpp b/src/mame/drivers/twin16.cpp
index d12c2001495..7af28422157 100644
--- a/src/mame/drivers/twin16.cpp
+++ b/src/mame/drivers/twin16.cpp
@@ -767,7 +767,7 @@ MACHINE_CONFIG_START(cuebrickj_state::cuebrickj)
twin16(config);
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_RAW_PARAMS(XTAL(18'432'000)/2, 576, 1*8, 39*8, 264, 2*8, 30*8)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/tx1.cpp b/src/mame/drivers/tx1.cpp
index 2adcfa361ae..1d5c7936bb8 100644
--- a/src/mame/drivers/tx1.cpp
+++ b/src/mame/drivers/tx1.cpp
@@ -178,7 +178,7 @@ MACHINE_CONFIG_START(tx1_state::tx1)
MCFG_DEVICE_PROGRAM_MAP(tx1_math)
MCFG_MACHINE_RESET_OVERRIDE(tx1_state,tx1)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(tx1_state,tx1)
@@ -225,7 +225,7 @@ MACHINE_CONFIG_START(tx1_state::buggyboy)
MCFG_DEVICE_PROGRAM_MAP(buggyboy_math)
MCFG_MACHINE_RESET_OVERRIDE(tx1_state,buggyboy)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
config.set_default_layout(layout_triphsxs);
@@ -264,7 +264,7 @@ MACHINE_CONFIG_START(tx1_state::buggybjr)
MCFG_DEVICE_PROGRAM_MAP(buggyboy_math)
MCFG_MACHINE_RESET_OVERRIDE(tx1_state,buggyboy)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(BB_PIXEL_CLOCK, BB_HTOTAL, BB_HBEND, BB_HBSTART, BB_VTOTAL, BB_VBEND, BB_VBSTART)
diff --git a/src/mame/drivers/umipoker.cpp b/src/mame/drivers/umipoker.cpp
index 76c711299f8..88d1eae5aaa 100644
--- a/src/mame/drivers/umipoker.cpp
+++ b/src/mame/drivers/umipoker.cpp
@@ -703,7 +703,7 @@ MACHINE_CONFIG_START(umipoker_state::umipoker)
MCFG_DEVICE_PROGRAM_MAP(umipoker_audio_map)
MCFG_DEVICE_IO_MAP(umipoker_audio_io_map)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* video hardware */
diff --git a/src/mame/drivers/univac.cpp b/src/mame/drivers/univac.cpp
index e90ca7d3dbb..fd435d1c842 100644
--- a/src/mame/drivers/univac.cpp
+++ b/src/mame/drivers/univac.cpp
@@ -330,7 +330,7 @@ MACHINE_CONFIG_START(univac_state::uts20)
MCFG_PALETTE_ADD_MONOCHROME("palette")
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_c10)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
clock_device &ctc_clock(CLOCK(config, "ctc_clock", 2000000));
ctc_clock.signal_handler().set(m_ctc, FUNC(z80ctc_device::trg0));
diff --git a/src/mame/drivers/upscope.cpp b/src/mame/drivers/upscope.cpp
index 85ce81ce373..64f4458473f 100644
--- a/src/mame/drivers/upscope.cpp
+++ b/src/mame/drivers/upscope.cpp
@@ -273,7 +273,7 @@ MACHINE_CONFIG_START(upscope_state::upscope)
ADDRESS_MAP_BANK(config, "overlay").set_map(&amiga_state::overlay_512kb_map).set_options(ENDIANNESS_BIG, 16, 22, 0x200000);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
ntsc_video(config);
diff --git a/src/mame/drivers/usgames.cpp b/src/mame/drivers/usgames.cpp
index 6e7e7d3f372..7e0893f0e7d 100644
--- a/src/mame/drivers/usgames.cpp
+++ b/src/mame/drivers/usgames.cpp
@@ -225,7 +225,7 @@ MACHINE_CONFIG_START(usgames_state::usg32)
MCFG_DEVICE_PROGRAM_MAP(usgames_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(usgames_state, irq0_line_hold, 5*60) /* ?? */
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/v550.cpp b/src/mame/drivers/v550.cpp
index 4c5a1c0efc7..5c030b6248f 100644
--- a/src/mame/drivers/v550.cpp
+++ b/src/mame/drivers/v550.cpp
@@ -110,7 +110,7 @@ MACHINE_CONFIG_START(v550_state::v550)
MCFG_DEVICE_PROGRAM_MAP(mem_map)
MCFG_DEVICE_IO_MAP(io_map)
- MCFG_NVRAM_ADD_0FILL("nvram") // NEC D444C-2 + battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // NEC D444C-2 + battery
MCFG_DEVICE_ADD("gdc", UPD7220, 34.846_MHz_XTAL / 16) // NEC D7220D (2.177875 MHz verified)
MCFG_VIDEO_SET_SCREEN("screen")
diff --git a/src/mame/drivers/vamphalf.cpp b/src/mame/drivers/vamphalf.cpp
index b6327eeee98..46970cc154b 100644
--- a/src/mame/drivers/vamphalf.cpp
+++ b/src/mame/drivers/vamphalf.cpp
@@ -1275,7 +1275,7 @@ MACHINE_CONFIG_START(vamphalf_nvram_state::finalgdr)
MCFG_DEVICE_IO_MAP(finalgdr_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", vamphalf_state, irq1_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
sound_ym_banked_oki(config);
MACHINE_CONFIG_END
@@ -1287,7 +1287,7 @@ MACHINE_CONFIG_START(vamphalf_nvram_state::mrkickera)
MCFG_DEVICE_IO_MAP(mrkickera_io)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", vamphalf_state, irq1_line_hold)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
sound_ym_banked_oki(config);
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/vcombat.cpp b/src/mame/drivers/vcombat.cpp
index 46fc15dab91..9fffc8541ee 100644
--- a/src/mame/drivers/vcombat.cpp
+++ b/src/mame/drivers/vcombat.cpp
@@ -578,7 +578,7 @@ MACHINE_CONFIG_START(vcombat_state::vcombat)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(vcombat_state, irq1_line_hold, 15000) /* Remove this if MC6845 is enabled */
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_MACHINE_RESET_OVERRIDE(vcombat_state,vcombat)
/* Temporary hack for experimenting with timing. */
@@ -621,7 +621,7 @@ MACHINE_CONFIG_START(vcombat_state::shadfgtr)
MCFG_DEVICE_ADD("soundcpu", M68000, XTAL(12'000'000))
MCFG_DEVICE_PROGRAM_MAP(sound_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_MACHINE_RESET_OVERRIDE(vcombat_state,shadfgtr)
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
diff --git a/src/mame/drivers/vertigo.cpp b/src/mame/drivers/vertigo.cpp
index edc30d5a57f..e86dd8999bc 100644
--- a/src/mame/drivers/vertigo.cpp
+++ b/src/mame/drivers/vertigo.cpp
@@ -140,7 +140,7 @@ MACHINE_CONFIG_START(vertigo_state::vertigo)
/* motor controller */
MCFG_DEVICE_ADD("motorcpu", M68705P3, 24_MHz_XTAL / 6)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* video hardware */
MCFG_VECTOR_ADD("vector")
diff --git a/src/mame/drivers/victory.cpp b/src/mame/drivers/victory.cpp
index 65072484fce..91ff2451263 100644
--- a/src/mame/drivers/victory.cpp
+++ b/src/mame/drivers/victory.cpp
@@ -218,7 +218,7 @@ MACHINE_CONFIG_START(victory_state::victory)
MCFG_DEVICE_IO_MAP(main_io_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", victory_state, vblank_interrupt)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// PIO interrupts are disconnected
MCFG_DEVICE_ADD("pio1", Z80PIO, VICTORY_MAIN_CPU_CLOCK) // at K8
diff --git a/src/mame/drivers/videopkr.cpp b/src/mame/drivers/videopkr.cpp
index d43c68ebf33..144d0382008 100644
--- a/src/mame/drivers/videopkr.cpp
+++ b/src/mame/drivers/videopkr.cpp
@@ -1259,7 +1259,7 @@ MACHINE_CONFIG_START(videopkr_state::videopkr)
MCFG_MCS48_PORT_P2_IN_CB(READ8(*this, videopkr_state, sound_p2_r))
MCFG_MCS48_PORT_P2_OUT_CB(WRITE8(*this, videopkr_state, sound_p2_w))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TIMER_DRIVER_ADD_PERIODIC("t1_timer", videopkr_state, sound_t1_callback, attotime::from_hz(50))
diff --git a/src/mame/drivers/vlc.cpp b/src/mame/drivers/vlc.cpp
index d4faed6ff54..a718f92037b 100644
--- a/src/mame/drivers/vlc.cpp
+++ b/src/mame/drivers/vlc.cpp
@@ -595,7 +595,7 @@ MACHINE_CONFIG_START(nevada_state::nevada)
MCFG_MACHINE_START_OVERRIDE(nevada_state, nevada)
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("nvram", nevada_state, nvram_init)
+ NVRAM(config, "nvram").set_custom_handler(FUNC(nevada_state::nvram_init));
// video hardware
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/vp101.cpp b/src/mame/drivers/vp101.cpp
index 799f3b4e656..033c573b925 100644
--- a/src/mame/drivers/vp101.cpp
+++ b/src/mame/drivers/vp101.cpp
@@ -384,7 +384,7 @@ MACHINE_CONFIG_START(vp10x_state::vp101)
ATA_INTERFACE(config, m_ata).options(ata_devices, "hdd", nullptr, false);
m_ata->dmarq_handler().set(FUNC(vp10x_state::dmarq_w));
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(vp10x_state::vp50)
@@ -402,7 +402,7 @@ MACHINE_CONFIG_START(vp10x_state::vp50)
ATA_INTERFACE(config, m_ata).options(ata_devices, "hdd", nullptr, false);
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
ROM_START(jnero)
diff --git a/src/mame/drivers/vp122.cpp b/src/mame/drivers/vp122.cpp
index 676f66e1160..451551c8a9e 100644
--- a/src/mame/drivers/vp122.cpp
+++ b/src/mame/drivers/vp122.cpp
@@ -92,7 +92,7 @@ MACHINE_CONFIG_START(vp122_state::vp122)
MCFG_DEVICE_PROGRAM_MAP(mem_map)
MCFG_DEVICE_IO_MAP(io_map)
- MCFG_NVRAM_ADD_0FILL("nvram") // MK48Z02
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // MK48Z02
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(14.916_MHz_XTAL, 960, 0, 800, 259, 0, 240)
diff --git a/src/mame/drivers/vroulet.cpp b/src/mame/drivers/vroulet.cpp
index b7272bfbc7b..f311a3810d2 100644
--- a/src/mame/drivers/vroulet.cpp
+++ b/src/mame/drivers/vroulet.cpp
@@ -286,7 +286,7 @@ MACHINE_CONFIG_START(vroulet_state::vroulet)
MCFG_DEVICE_IO_MAP(vroulet_io_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", vroulet_state, irq0_line_hold)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_DEVICE_ADD("ppi8255_0", I8255A, 0)
MCFG_I8255_IN_PORTA_CB(IOPORT("IN0"))
diff --git a/src/mame/drivers/wico.cpp b/src/mame/drivers/wico.cpp
index 2076e6a9229..2e7e76b078e 100644
--- a/src/mame/drivers/wico.cpp
+++ b/src/mame/drivers/wico.cpp
@@ -448,7 +448,7 @@ MACHINE_CONFIG_START(wico_state::wico)
MCFG_DEVICE_PROGRAM_MAP(hcpu_map)
MCFG_TIMER_DRIVER_ADD_PERIODIC("irq", wico_state, irq_housekeeping, attotime::from_hz(120)) // zero crossing
MCFG_TIMER_DRIVER_ADD_PERIODIC("firq", wico_state, firq_housekeeping, attotime::from_hz(750)) // time generator
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_wico);
diff --git a/src/mame/drivers/wildpkr.cpp b/src/mame/drivers/wildpkr.cpp
index f27e049562b..e5116a75095 100644
--- a/src/mame/drivers/wildpkr.cpp
+++ b/src/mame/drivers/wildpkr.cpp
@@ -502,7 +502,7 @@ MACHINE_CONFIG_START(wildpkr_state::tabpkr)
MCFG_DEVICE_PERIODIC_INT_DRIVER(wildpkr_state, irq3_line_assert, 60*256)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(wildpkr_state, tabpkr_irq_ack)
- MCFG_NVRAM_ADD_1FILL("nvram") // DS1220Y
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1); // DS1220Y
MCFG_DEVICE_ADD("duart", MC68681, 3686400)
MCFG_MC68681_IRQ_CALLBACK(ASSERTLINE("maincpu", M68K_IRQ_2))
diff --git a/src/mame/drivers/williams.cpp b/src/mame/drivers/williams.cpp
index 3d167f2c925..cb79f3c4fdd 100644
--- a/src/mame/drivers/williams.cpp
+++ b/src/mame/drivers/williams.cpp
@@ -1492,7 +1492,7 @@ MACHINE_CONFIG_START(williams_state::williams)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MCFG_MACHINE_START_OVERRIDE(williams_state,williams)
- MCFG_NVRAM_ADD_0FILL("nvram") // 5101 (Defender), 5114 or 6514 (later games) + battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // 5101 (Defender), 5114 or 6514 (later games) + battery
// set a timer to go off every 32 scanlines, to toggle the VA11 line and update the screen
MCFG_TIMER_DRIVER_ADD_SCANLINE("scan_timer", williams_state, williams_va11_callback, "screen", 0, 32)
@@ -1750,7 +1750,7 @@ MACHINE_CONFIG_START(williams2_state::williams2)
MCFG_MACHINE_START_OVERRIDE(williams2_state,williams2)
MCFG_MACHINE_RESET_OVERRIDE(williams2_state,williams2)
- MCFG_NVRAM_ADD_0FILL("nvram") // 5114 + battery
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // 5114 + battery
// set a timer to go off every 32 scanlines, to toggle the VA11 line and update the screen
MCFG_TIMER_DRIVER_ADD_SCANLINE("scan_timer", williams2_state, williams2_va11_callback, "screen", 0, 32)
diff --git a/src/mame/drivers/wink.cpp b/src/mame/drivers/wink.cpp
index 04b849a6c4f..46b186ae68d 100644
--- a/src/mame/drivers/wink.cpp
+++ b/src/mame/drivers/wink.cpp
@@ -403,7 +403,7 @@ MACHINE_CONFIG_START(wink_state::wink)
MCFG_DEVICE_IO_MAP(wink_sound_io)
MCFG_DEVICE_PERIODIC_INT_DRIVER(wink_state, wink_sound, 15625)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/witch.cpp b/src/mame/drivers/witch.cpp
index bae056c0fd6..abbbe13b197 100644
--- a/src/mame/drivers/witch.cpp
+++ b/src/mame/drivers/witch.cpp
@@ -967,7 +967,7 @@ MACHINE_CONFIG_START(witch_state::witch)
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_TICKET_DISPENSER_ADD("hopper", attotime::from_msec(HOPPER_PULSE), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH)
diff --git a/src/mame/drivers/wmg.cpp b/src/mame/drivers/wmg.cpp
index 37e921d6e51..68bf473037c 100644
--- a/src/mame/drivers/wmg.cpp
+++ b/src/mame/drivers/wmg.cpp
@@ -524,7 +524,7 @@ MACHINE_CONFIG_START(wmg_state::wmg)
MCFG_DEVICE_ADD("soundcpu", M6808, SOUND_CLOCK)
MCFG_DEVICE_PROGRAM_MAP(wmg_cpu2)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
ADDRESS_MAP_BANK(config, "bankc000").set_map(&wmg_state::wmg_banked_map).set_options(ENDIANNESS_BIG, 8, 16, 0x1000);
diff --git a/src/mame/drivers/wpc_95.cpp b/src/mame/drivers/wpc_95.cpp
index 80d867502f8..fe2978c1ea4 100644
--- a/src/mame/drivers/wpc_95.cpp
+++ b/src/mame/drivers/wpc_95.cpp
@@ -2263,7 +2263,7 @@ MACHINE_CONFIG_START(wpc_95_state::wpc_95)
MCFG_DEVICE_ADD("dmd", WPC_DMD, 0)
MCFG_WPC_DMD_SCANLINE_CALLBACK(WRITELINE(*this, wpc_95_state, scanline_irq))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("dcs", DCS_AUDIO_WPC, 0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/wpc_dcs.cpp b/src/mame/drivers/wpc_dcs.cpp
index 45938a1f65f..0a3f927b2e6 100644
--- a/src/mame/drivers/wpc_dcs.cpp
+++ b/src/mame/drivers/wpc_dcs.cpp
@@ -438,7 +438,7 @@ MACHINE_CONFIG_START(wpc_dcs_state::wpc_dcs)
MCFG_DEVICE_ADD("dmd", WPC_DMD, 0)
MCFG_WPC_DMD_SCANLINE_CALLBACK(WRITELINE(*this, wpc_dcs_state, scanline_irq))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("dcs", DCS_AUDIO_8K, 0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/wpc_s.cpp b/src/mame/drivers/wpc_s.cpp
index 493b4c52704..6df1c12ec47 100644
--- a/src/mame/drivers/wpc_s.cpp
+++ b/src/mame/drivers/wpc_s.cpp
@@ -1985,7 +1985,7 @@ MACHINE_CONFIG_START(wpc_s_state::wpc_s)
MCFG_DEVICE_ADD("dmd", WPC_DMD, 0)
MCFG_WPC_DMD_SCANLINE_CALLBACK(WRITELINE(*this, wpc_s_state, scanline_irq))
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_DEVICE_ADD("dcs", DCS_AUDIO_8K, 0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/wswan.cpp b/src/mame/drivers/wswan.cpp
index 7e56a8f0f3f..a16a42503f9 100644
--- a/src/mame/drivers/wswan.cpp
+++ b/src/mame/drivers/wswan.cpp
@@ -141,7 +141,7 @@ MACHINE_CONFIG_START(wswan_state::wswan)
MCFG_QUANTUM_TIME(attotime::from_hz(60))
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_wswan)
MCFG_PALETTE_ADD("palette", 16)
diff --git a/src/mame/drivers/x07.cpp b/src/mame/drivers/x07.cpp
index 8e2540a8d8a..08d4935b965 100644
--- a/src/mame/drivers/x07.cpp
+++ b/src/mame/drivers/x07.cpp
@@ -1509,8 +1509,8 @@ MACHINE_CONFIG_START(x07_state::x07)
MCFG_TIMER_DRIVER_ADD_PERIODIC("blink_timer", x07_state, blink_timer, attotime::from_msec(300))
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("nvram1", x07_state, nvram_init) // t6834 RAM
- MCFG_NVRAM_ADD_0FILL("nvram2") // RAM banks
+ NVRAM(config, "nvram1").set_custom_handler(FUNC(x07_state::nvram_init)); // t6834 RAM
+ NVRAM(config, "nvram2", nvram_device::DEFAULT_ALL_0); // RAM banks
/* internal ram */
// 8KB no expansion
diff --git a/src/mame/drivers/x68k.cpp b/src/mame/drivers/x68k.cpp
index d396c3b6eef..9f70168cd64 100644
--- a/src/mame/drivers/x68k.cpp
+++ b/src/mame/drivers/x68k.cpp
@@ -1704,7 +1704,7 @@ MACHINE_CONFIG_START(x68k_state::x68000)
/* internal ram */
RAM(config, RAM_TAG).set_default_size("4M").set_extra_options("1M,2M,3M,5M,6M,7M,8M,9M,10M,11M,12M");
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
MCFG_X68KHDC_ADD( "x68k_hdc" )
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/xtheball.cpp b/src/mame/drivers/xtheball.cpp
index d9294cf1062..79073671194 100644
--- a/src/mame/drivers/xtheball.cpp
+++ b/src/mame/drivers/xtheball.cpp
@@ -304,7 +304,7 @@ MACHINE_CONFIG_START(xtheball_state::xtheball)
MCFG_TMS340X0_FROM_SHIFTREG_CB(xtheball_state, from_shiftreg) /* read from shiftreg function */
MCFG_DEVICE_PERIODIC_INT_DRIVER(xtheball_state, irq1_line_hold, 15000)
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
hc259_device &latch1(HC259(config, "latch1"));
latch1.q_out_cb<7>().set("ticket", FUNC(ticket_dispenser_device::motor_w));
diff --git a/src/mame/drivers/zac_1.cpp b/src/mame/drivers/zac_1.cpp
index 18b9505bbf9..fb728dbcca3 100644
--- a/src/mame/drivers/zac_1.cpp
+++ b/src/mame/drivers/zac_1.cpp
@@ -267,7 +267,7 @@ MACHINE_CONFIG_START(zac_1_state::zac_1)
MCFG_DEVICE_DATA_MAP(zac_1_data)
MCFG_S2650_SENSE_INPUT(READLINE(*this, zac_1_state, serial_r))
MCFG_S2650_FLAG_OUTPUT(WRITELINE(*this, zac_1_state, serial_w))
- MCFG_NVRAM_ADD_0FILL("ram")
+ NVRAM(config, "ram", nvram_device::DEFAULT_ALL_0);
MCFG_TIMER_DRIVER_ADD_PERIODIC("zac_1_inttimer", zac_1_state, zac_1_inttimer, attotime::from_hz(200))
MCFG_TIMER_DRIVER_ADD_PERIODIC("zac_1_outtimer", zac_1_state, zac_1_outtimer, attotime::from_hz(187500))
diff --git a/src/mame/drivers/zac_2.cpp b/src/mame/drivers/zac_2.cpp
index aa4df46c352..73b68d93f8c 100644
--- a/src/mame/drivers/zac_2.cpp
+++ b/src/mame/drivers/zac_2.cpp
@@ -219,7 +219,7 @@ MACHINE_CONFIG_START(zac_2_state::zac_2)
MCFG_DEVICE_DATA_MAP(zac_2_data)
MCFG_S2650_SENSE_INPUT(READLINE(*this, zac_2_state, serial_r))
MCFG_S2650_FLAG_OUTPUT(WRITELINE(*this, zac_2_state, serial_w))
- MCFG_NVRAM_ADD_0FILL("ram")
+ NVRAM(config, "ram", nvram_device::DEFAULT_ALL_0);
MCFG_TIMER_DRIVER_ADD_PERIODIC("zac_2_inttimer", zac_2_state, zac_2_inttimer, attotime::from_hz(200))
MCFG_TIMER_DRIVER_ADD_PERIODIC("zac_2_outtimer", zac_2_state, zac_2_outtimer, attotime::from_hz(187500))
diff --git a/src/mame/drivers/zac_proto.cpp b/src/mame/drivers/zac_proto.cpp
index 05bf78f81c9..1eabe100a8d 100644
--- a/src/mame/drivers/zac_proto.cpp
+++ b/src/mame/drivers/zac_proto.cpp
@@ -245,7 +245,7 @@ MACHINE_CONFIG_START(zac_proto_state::zac_proto)
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", INS8060, XTAL(4'000'000) / 2) // Using SC/MP II chip which has an internal /2 circuit.
MCFG_DEVICE_PROGRAM_MAP(zac_proto_map)
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
/* Video */
config.set_default_layout(layout_zac_proto);
diff --git a/src/mame/drivers/zn.cpp b/src/mame/drivers/zn.cpp
index c122eb05c84..434f0427b2b 100644
--- a/src/mame/drivers/zn.cpp
+++ b/src/mame/drivers/zn.cpp
@@ -1196,7 +1196,7 @@ MACHINE_CONFIG_START(zn_state::coh1000tb)
MCFG_MACHINE_START_OVERRIDE(zn_state, coh1000ta)
MCFG_MACHINE_RESET_OVERRIDE(zn_state, coh1000ta)
- MCFG_NVRAM_ADD_1FILL("fm1208s")
+ NVRAM(config, "fm1208s", nvram_device::DEFAULT_ALL_1);
MCFG_MB3773_ADD("mb3773")
@@ -1220,7 +1220,7 @@ MACHINE_CONFIG_START(zn_state::coh1002tb)
MCFG_MACHINE_START_OVERRIDE(zn_state, coh1000ta)
MCFG_MACHINE_RESET_OVERRIDE(zn_state, coh1000ta)
- MCFG_NVRAM_ADD_1FILL("fm1208s")
+ NVRAM(config, "fm1208s", nvram_device::DEFAULT_ALL_1);
MCFG_MB3773_ADD("mb3773")
@@ -2196,7 +2196,7 @@ MACHINE_CONFIG_START(zn_state::nbajamex)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(nbajamex_map)
- MCFG_NVRAM_ADD_1FILL("71256")
+ NVRAM(config, "71256", nvram_device::DEFAULT_ALL_1);
MCFG_MACHINE_START_OVERRIDE(zn_state, nbajamex)
MCFG_MACHINE_RESET_OVERRIDE(zn_state, nbajamex)
diff --git a/src/mame/machine/cedar_magnet_flop.cpp b/src/mame/machine/cedar_magnet_flop.cpp
index 83d8134c669..a4b520261ff 100644
--- a/src/mame/machine/cedar_magnet_flop.cpp
+++ b/src/mame/machine/cedar_magnet_flop.cpp
@@ -16,9 +16,10 @@ cedar_magnet_flop_device::cedar_magnet_flop_device(const machine_config &mconfig
}
-MACHINE_CONFIG_START(cedar_magnet_flop_device::device_add_mconfig)
- MCFG_NVRAM_ADD_NO_FILL("floppy_nvram")
-MACHINE_CONFIG_END
+void cedar_magnet_flop_device::device_add_mconfig(machine_config &config)
+{
+ NVRAM(config, "floppy_nvram", nvram_device::DEFAULT_NONE);
+}
void cedar_magnet_flop_device::device_start()
diff --git a/src/mame/machine/decopincpu.cpp b/src/mame/machine/decopincpu.cpp
index 78f6563993e..57b6f9342c8 100644
--- a/src/mame/machine/decopincpu.cpp
+++ b/src/mame/machine/decopincpu.cpp
@@ -244,7 +244,7 @@ MACHINE_CONFIG_START(decocpu_type1_device::device_add_mconfig)
m_pia34->irqa_handler().set(FUNC(decocpu_type1_device::cpu_pia_irq));
m_pia34->irqb_handler().set(FUNC(decocpu_type1_device::cpu_pia_irq));
- MCFG_NVRAM_ADD_1FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
MACHINE_CONFIG_END
ioport_constructor decocpu_type1_device::device_input_ports() const
diff --git a/src/mame/machine/gaelco_ds5002fp.cpp b/src/mame/machine/gaelco_ds5002fp.cpp
index 3d20bdd3f82..9f2837ba95f 100644
--- a/src/mame/machine/gaelco_ds5002fp.cpp
+++ b/src/mame/machine/gaelco_ds5002fp.cpp
@@ -45,7 +45,7 @@ MACHINE_CONFIG_START(gaelco_ds5002fp_device::device_add_mconfig)
MCFG_QUANTUM_PERFECT_CPU("mcu")
- MCFG_NVRAM_ADD_0FILL("sram")
+ NVRAM(config, "sram", nvram_device::DEFAULT_ALL_0);
MACHINE_CONFIG_END
void gaelco_ds5002fp_device::device_start()
diff --git a/src/mame/machine/iteagle_fpga.cpp b/src/mame/machine/iteagle_fpga.cpp
index d59bd508738..3b9db40f5ad 100644
--- a/src/mame/machine/iteagle_fpga.cpp
+++ b/src/mame/machine/iteagle_fpga.cpp
@@ -52,8 +52,8 @@ iteagle_fpga_device::iteagle_fpga_device(const machine_config &mconfig, const ch
}
MACHINE_CONFIG_START(iteagle_fpga_device::device_add_mconfig)
- MCFG_NVRAM_ADD_0FILL("eagle2_rtc")
- MCFG_NVRAM_ADD_1FILL("eagle1_bram")
+ NVRAM(config, "eagle2_rtc", nvram_device::DEFAULT_ALL_0);
+ NVRAM(config, "eagle1_bram", nvram_device::DEFAULT_ALL_1);
// RS232 serial ports
// The console terminal (com1) operates at 38400 baud
@@ -787,9 +787,10 @@ WRITE32_MEMBER( iteagle_eeprom_device::eeprom_w )
// Attached Peripheral Controller
//************************************
-MACHINE_CONFIG_START(iteagle_periph_device::device_add_mconfig)
- MCFG_NVRAM_ADD_0FILL("eagle1_rtc")
-MACHINE_CONFIG_END
+void iteagle_periph_device::device_add_mconfig(machine_config &config)
+{
+ NVRAM(config, "eagle1_rtc", nvram_device::DEFAULT_ALL_0);
+}
DEFINE_DEVICE_TYPE(ITEAGLE_PERIPH, iteagle_periph_device, "iteagle_periph", "ITEagle Peripheral Controller")
diff --git a/src/mame/machine/megacd.cpp b/src/mame/machine/megacd.cpp
index e28d46b600f..db19aa87662 100644
--- a/src/mame/machine/megacd.cpp
+++ b/src/mame/machine/megacd.cpp
@@ -316,7 +316,7 @@ MACHINE_CONFIG_START(sega_segacd_device::device_add_mconfig)
MCFG_SOUND_ROUTE( 1, ":rspeaker", 0.50 )
MCFG_DEVICE_ADDRESS_MAP(0, segacd_pcm_map)
- MCFG_NVRAM_ADD_0FILL("backupram")
+ NVRAM(config, "backupram", nvram_device::DEFAULT_ALL_0);
MCFG_QUANTUM_PERFECT_CPU("segacd_68k") // perfect sync to the fastest cpu
MACHINE_CONFIG_END
diff --git a/src/mame/machine/mpu4.cpp b/src/mame/machine/mpu4.cpp
index 04b5eb98f60..dda816b5ebb 100644
--- a/src/mame/machine/mpu4.cpp
+++ b/src/mame/machine/mpu4.cpp
@@ -3054,7 +3054,7 @@ MACHINE_CONFIG_START(mpu4_state::mpu4base)
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
- MCFG_NVRAM_ADD_0FILL("nvram")
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
config.set_default_layout(layout_mpu4);
MACHINE_CONFIG_END
diff --git a/src/mame/machine/pce_cd.cpp b/src/mame/machine/pce_cd.cpp
index d70eea6efed..1f882bfcf20 100644
--- a/src/mame/machine/pce_cd.cpp
+++ b/src/mame/machine/pce_cd.cpp
@@ -242,7 +242,7 @@ void pce_cd_device::nvram_init(nvram_device &nvram, void *data, size_t size)
// TODO: left and right speaker tags should be passed from the parent config, instead of using the hard-coded ones below!?!
MACHINE_CONFIG_START(pce_cd_device::device_add_mconfig)
- MCFG_NVRAM_ADD_CUSTOM_DRIVER("bram", pce_cd_device, nvram_init)
+ NVRAM(config, "bram").set_custom_handler(FUNC(pce_cd_device::nvram_init));
MCFG_CDROM_ADD("cdrom")
MCFG_CDROM_INTERFACE("pce_cdrom")